All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.asteriskjava.manager.event.AbstractChannelStateEvent Maven / Gradle / Ivy

There is a newer version: 3.40.1
Show newest version
/*
 *  Copyright 2004-2006 Stefan Reuter
 *
 *  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.asteriskjava.manager.event;

import org.asteriskjava.util.AstState;

/**
 * Abstract base class providing common properties for HangupEvent, NewChannelEvent and
 * NewStateEvent.
 *
 * @author srt
 * @version $Id: AbstractChannelStateEvent.java 1026 2008-04-06 09:35:12Z srt $
 */
public abstract class AbstractChannelStateEvent extends AbstractChannelEvent
{
    /**
     * Serializable version identifier.
     */
    static final long serialVersionUID = 0L;

    private Integer channelState;
    private String channelStateDesc;

    protected AbstractChannelStateEvent(Object source)
    {
        super(source);
    }

    /**
     * Returns the new state of the channel.

* For Asterisk versions prior to 1.6 (that do not send the numeric value) it is derived * from the descriptive text. * * @return the new state of the channel. * @since 1.0.0 */ public Integer getChannelState() { return channelState == null ? AstState.str2state(channelStateDesc) : channelState; } /** * Sets the new state of the channel. * * @param channelState the new state of the channel. * @since 1.0.0 */ public void setChannelState(Integer channelState) { this.channelState = channelState; } /** * Returns the new state of the channel as a descriptive text.

* The following states are used:

*

    *
  • Down
  • *
  • Rsrvd
  • *
  • OffHook
  • *
  • Dialing
  • *
  • Ring
  • *
  • Ringing
  • *
  • Up
  • *
  • Busy
  • *
  • Dialing Offhook (since Asterik 1.6)
  • *
  • Pre-ring (since Asterik 1.6)
  • *
      * * @return the new state of the channel as a descriptive text. * @since 1.0.0 */ public String getChannelStateDesc() { return channelStateDesc; } /** * Sets the new state of the channel as a descriptive text. * * @param channelStateDesc the new state of the channel as a descriptive text. * @since 1.0.0 */ public void setChannelStateDesc(String channelStateDesc) { this.channelStateDesc = channelStateDesc; } /** * Returns the new state of the channel as a descriptive text.

      * This is an alias for {@link @getChannelStateDesc}. * * @return the new state of the channel as a descriptive text. * @deprecated as of 1.0.0, use {@link #getChannelStateDesc()} instead or even better switch to numeric * values as returned by {@link #getChannelState()}. */ public String getState() { return channelStateDesc; } /** * Sets the new state of the channel as a descriptive text.

      * The state property is used by Asterisk versions prior to 1.6. * * @param state the new state of the channel as a descriptive text. */ public void setState(String state) { this.channelStateDesc = state; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy