Return-Path: Delivered-To: apmail-logging-log4j-dev-archive@www.apache.org Received: (qmail 7576 invoked from network); 2 Sep 2005 22:37:11 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 2 Sep 2005 22:37:11 -0000 Received: (qmail 37838 invoked by uid 500); 2 Sep 2005 22:37:11 -0000 Delivered-To: apmail-logging-log4j-dev-archive@logging.apache.org Received: (qmail 37585 invoked by uid 500); 2 Sep 2005 22:37:10 -0000 Mailing-List: contact log4j-dev-help@logging.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "Log4J Developers List" Reply-To: "Log4J Developers List" Delivered-To: mailing list log4j-dev@logging.apache.org Received: (qmail 37572 invoked by uid 500); 2 Sep 2005 22:37:09 -0000 Received: (qmail 37569 invoked by uid 99); 2 Sep 2005 22:37:09 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 02 Sep 2005 15:37:09 -0700 Received: (qmail 7566 invoked by uid 1666); 2 Sep 2005 22:37:09 -0000 Date: 2 Sep 2005 22:37:09 -0000 Message-ID: <20050902223709.7565.qmail@minotaur.apache.org> From: sdeboy@apache.org To: logging-log4j-cvs@apache.org Subject: cvs commit: logging-log4j build.xml X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N sdeboy 2005/09/02 15:37:09 Modified: . build.xml Added: src/java/org/apache/log4j/varia SoundAppender.java Log: Adding soundAppender - specify a URL to a file supported by Applet.newAudioClip Revision Changes Path 1.1 logging-log4j/src/java/org/apache/log4j/varia/SoundAppender.java Index: SoundAppender.java =================================================================== /* * Copyright 1999,2005 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.log4j.varia; import java.applet.Applet; import java.applet.AudioClip; import java.net.MalformedURLException; import java.net.URL; import org.apache.log4j.AppenderSkeleton; import org.apache.log4j.spi.LoggingEvent; /** * Plays a sound clip created using Applet.newAudioClip when an event is received. * * If the audio format is not supported, a message stating the SoundAppender could * not be initialized is logged. * * Use a filter in combination with this appender to control when the appender is * triggered. * * For example, in the appender definition, include a LevelMatchFilter configured * to accept WARN or greater, followed by a DenyAllFilter. * * @author Scott Deboy * */ public final class SoundAppender extends AppenderSkeleton { private AudioClip clip; private String audioURL; public SoundAppender() { super(true); } /** * Attempt to initialize the appender by creating a reference to an AudioClip. * * Will log a message if format is not supported, file not found, etc. * */ public void activateOptions() { /* * AudioSystem.getAudioInputStream requires jdk 1.3, * so we use applet.newaudioclip instead * */ try { clip = Applet.newAudioClip(new URL(audioURL)); } catch (MalformedURLException mue) {getLogger().error("unable to initialize SoundAppender", mue);} if (clip == null) { getLogger().error("Unable to initialize SoundAppender"); } } /** * Accessor * * @return audio file */ public final String getAudioURL() { return audioURL; } /** * Mutator - common format for a file-based url: * file:///c:/path/someaudioclip.wav * * @param audioURL */ public void setAudioURL(String audioURL) { this.audioURL = audioURL; } /** * Play the sound if an event is being processed */ protected void append(LoggingEvent event) { if (clip != null) { clip.play(); } } public void close() { //nothing to do } } 1.166 +3 -2 logging-log4j/build.xml Index: build.xml =================================================================== RCS file: /home/cvs/logging-log4j/build.xml,v retrieving revision 1.165 retrieving revision 1.166 diff -u -r1.165 -r1.166 --- build.xml 28 Jul 2005 18:32:18 -0000 1.165 +++ build.xml 2 Sep 2005 22:37:09 -0000 1.166 @@ -622,7 +622,8 @@ ${stem}/pattern/*.class, ${stem}/or/*.class, ${stem}/or/sax/*.class, - ${stem}/varia/List*Appender.class + ${stem}/varia/List*Appender.class, + ${stem}/varia/SoundAppender.class, ${stem}/plugins/*.class, ${stem}/config/*.class" excludes="**/UnitTest**, @@ -637,7 +638,7 @@ ${stem}/net/JMSAppender.class, ${stem}/net/JMSSink.class, ${stem}/net/JMSReceiver.class, - ${stem}/**/*BeanInfo.class + ${stem}/**/*BeanInfo.class, ${stem}/varia/LogFilePatternReceiver*.class, ${stem}/rule/LikeRule.class, ${stem}/net/Multicast*.class, --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org For additional commands, e-mail: log4j-dev-help@logging.apache.org