@Override public long perform() { listeners.dispatch(event); return 0; }
private void sendEvent(Event event) { listeners.dispatch(event); }
@Override protected void stopped() { listeners.dispatch(new AudioPlayerEvent(this, AudioPlayerEvent.STOP)); }
@Override public void completed() { super.completed(); listeners.dispatch(event); }
@Override public void activate() { if (track == null) { throw new IllegalStateException("The media source is not specified"); } start(); listeners.dispatch(new AudioPlayerEvent(this, AudioPlayerEvent.START)); }
@Override protected void completed() { super.completed(); listeners.dispatch(new AudioPlayerEvent(this, AudioPlayerEvent.STOP)); }
@Override public long perform() { final Iterator<DtmfEventImpl> iterator = this.events.iterator(); while (iterator.hasNext()) { DtmfEventImpl evt = iterator.next(); // try to deliver or queue to buffer if not delivered if (!listeners.dispatch(evt)) { dtmfBuffer.queue(evt); if (logger.isInfoEnabled()) { logger.info(String.format("(%s) Buffered '%s' tone", getName(), evt.getTone())); } } else { if (logger.isInfoEnabled()) { logger.info(String.format("(%s) Delivered '%s' tone", getName(), evt.getTone())); } } // Remove event from collection iterator.remove(); } return 0; }
/** * Modifies state of the connection. * * @param state the new value for the state. */ private void setState(ConnectionState state) { //change state this.state = state; this.ttl = state.getTimeout()*10 + 1; switch (state) { case HALF_OPEN: //heartBeat.setDeadLine(scheduler.getClock().getTime() + 1000000000L); scheduler.submitHeatbeat(heartBeat); break; case NULL: heartBeat.cancel(); break; } //notify listeners try { listeners.dispatch(stateEvent); } catch (Exception e) { logger.error(e); } }
listeners.dispatch(event);
@Override public Frame evolve(long timestamp) { if(time > (double) toneDuration / 1000.0) return null; int k = 0; int frameSize = (int) ((double) 20 / 1000.0 / dt); Frame frame = Memory.allocate(2* frameSize); byte[] data = frame.getData(); for (int i = 0; i < frameSize; i++) { short v = getValue(time + dt * i); data[k++] = (byte) v; data[k++] = (byte) (v >> 8); } frame.setOffset(0); frame.setLength(2* frameSize); frame.setTimestamp(getMediaTime()); frame.setDuration(20000000L); time += ((double) 20) / 1000.0; if(time >= (double)toneDuration / 1000.0) listeners.dispatch(event); return frame; }