src/net/java/sip/communicator/service/protocol/media/MediaHandler.java
/**
     * Adds a specific <tt>SimpleAudioLevelListener</tt> to the list of
     * <tt>SimpleAudioLevelListener</tt>s to be notified about changes in the
     * level of the audio sent from remote peer(s) to the local peer/user.
     *
     * @param listener the <tt>SimpleAudioLevelListener</tt> to add to the list
     * of <tt>SimpleAudioLevelListener</tt>s to be notified about changes in the
     * level of the audio sent from the remote peer(s) to the local peer/user
     */
Adds a specific SimpleAudioLevelListener to the list of
SimpleAudioLevelListeners to be notified about changes in the
level of the audio sent from remote peer(s) to the local peer/user.

@param listener the SimpleAudioLevelListener to add to the list
of SimpleAudioLevelListeners to be notified about changes in the
level of the audio sent from the remote peer(s) to the local peer/user
Adds a specific SimpleAudioLevelListener to the list of SimpleAudioLevelListeners to be notified about changes in the level of the audio sent from remote peer ( s ) to the local peer / user . @param listener the SimpleAudioLevelListener to add to the list of SimpleAudioLevelListeners to be notified about changes in the level of the audio sent from the remote peer ( s ) to the local peer / user
void addStreamAudioLevelListener(SimpleAudioLevelListener listener)
    {
        if (listener == null)
            throw new NullPointerException("listener");
        synchronized (streamAudioLevelListenerLock)
        {
            if (!streamAudioLevelListeners.contains(listener))
            {
                streamAudioLevelListeners
                    = new ArrayList<SimpleAudioLevelListener>(
                            streamAudioLevelListeners);
                if (streamAudioLevelListeners.add(listener)
                        && (streamAudioLevelListeners.size() == 1))
                {
                    AudioMediaStream audioStream = this.audioStream;
                    if (audioStream != null)
                    {
                        audioStream.setStreamAudioLevelListener(
                                streamAudioLevelListener);
                    }
                }
            }
        }
    }
void addStreamAudioLevelListener ( SimpleAudioLevelListener listener ) { if ( listener == null ) throw new NullPointerException ( "listener" ) ; synchronized ( streamAudioLevelListenerLock ) { if ( ! streamAudioLevelListeners . contains ( listener ) ) { streamAudioLevelListeners = new ArrayList < SimpleAudioLevelListener > ( streamAudioLevelListeners ) ; if ( streamAudioLevelListeners . add ( listener ) && ( streamAudioLevelListeners . size ( ) == 1 ) ) { AudioMediaStream audioStream = this . audioStream ; if ( audioStream != null ) { audioStream . setStreamAudioLevelListener ( streamAudioLevelListener ) ; } } } } }
Adds a specific <tt>SimpleAudioLevelListener</tt> to the list of
 <tt>SimpleAudioLevelListener</tt>s to be notified about changes in the
 level of the audio sent from remote peer(s) to the local peer/user.
Adds a specific <tt > SimpleAudioLevelListener< / tt > to the list of <tt > SimpleAudioLevelListener< / tt > s to be notified about changes in the level of the audio sent from remote peer ( s ) to the local peer / user .