Avaya Conferencing Provider API

com.avaya.conferencing.api.acp.control.operations
Interface Operation<RESULT,IMPL extends Operation<RESULT,IMPL>>

Type Parameters:
RESULT - The result type returned by this operation's get method.
IMPL - The final implementation type of this operation.
All Superinterfaces:
java.lang.Cloneable
All Known Subinterfaces:
ConferenceProducingOperation<IMPL>, EndPointProducingOperation<IMPL>
All Known Implementing Classes:
AbortSignalToNoiseRatioMeasurement, AbstractOperationImpl, Access, AccessNextEntry, AutomaticGainControlMode, CallListGet, CallListSet, CallListsGet, CancelHelp, ConferencingProviderLink, Create, DeleteURI, Disconnect, DTMFPassthrough, DTMFRegeneration, Fault, ForceConnectionUpdate, GetCurrentTime, GetRecordingURIs, Hold, LectureMode, MakeCall, MakeCallsFromList, MeasureDTMFSignalToNoiseRatio, MeasureSignalToNoiseRatio, MediaSourceConnect, Moderator, ModeratorDisconnectMode, ModifyDetails, Mute, Observe, Open, OperatorLogin, OperatorLogout, PlaceInConference, PlaceInMainConference, PlaceInSubconference, PlayAndCollect, PlaybackModePause, PlaybackModeResume, PlaybackModeStart, PlaybackModeStop, PlayConferenceRoster, PlayMessage, PlayParticipantName, PollingAssist, PollingModeStart, PollingModeStop, PollingQuery, PollingQueryDetail, PollingReset, ProtectDetails, QACancelQuestion, QAFinishedQuestion, QAHaveQuestion, QAModeStart, QAModeStop, QAMoveQuestion, QANextQuestion, QAPostponeQuestion, QAPreviousQuestion, RecordingModePause, RecordingModeResume, RecordingModeStart, RecordingModeStop, RequestHelp, SecuredMode, SecurityFeatures, SendDTMF, Silence, StateChangingOperation

public interface Operation<RESULT,IMPL extends Operation<RESULT,IMPL>>
extends java.lang.Cloneable

Describes operations exposed by a conferencing object.

Since:
5.1.0.0.29

Nested Class Summary
static class Operation.Impact
          Describes the impact of an operation.
 
Method Summary
 void await()
          Blocks until the operation is completed.
 boolean await(long timeout, java.util.concurrent.TimeUnit unit)
          Causes the current thread to wait until the operation is completed, unless the thread is interrupted, or the specified waiting time elapses.
 IMPL clone()
          Creates and returns a copy of this operation.
 RESULT get()
          Waits if necessary for the operation to complete, and then retrieves its result.
 RESULT get(long timeout, java.util.concurrent.TimeUnit unit)
          Waits if necessary for at most the given time for the operation to complete, and then retrieves its result, if available.
 Operation.Impact getImpact()
          Returns the impact of the operation.
 Verb getVerb()
          This gets the verb that describes this operation.
 boolean isDone()
          Returns true if this operation completed.
 boolean isSubmitted()
          Returns true if this operation has been submitted for execution.
 void set(java.util.concurrent.Future<RESULT> future)
          This method is called by the ConferencingObject when the operation is accepted for execution.
 

Method Detail

clone

IMPL clone()
Creates and returns a copy of this operation.

Returns:
a clone of this operation.
Since:
5.1.0.0.61
See Also:
Cloneable

await

void await()
           throws java.lang.InterruptedException
Blocks until the operation is completed. Completion of the operation may be due to normal termination or an exception.

If the operation is completed then this method returns immediately.

If the operation has yet to complete then the current thread becomes disabled for thread scheduling purposes and lies dormant until one of two things happen:

If the current thread:

then InterruptedException is thrown and the current thread's interrupted status is cleared.

Throws:
java.lang.InterruptedException - if the current thread is interrupted while waiting.
Since:
5.1.0.0.29

await

boolean await(long timeout,
              java.util.concurrent.TimeUnit unit)
              throws java.lang.InterruptedException
Causes the current thread to wait until the operation is completed, unless the thread is interrupted, or the specified waiting time elapses.

If the operation is completed then this method returns immediately.

If the operation has yet to complete then the current thread becomes disabled for thread scheduling purposes and lies dormant until one of three things happen:

If the operation completes then the method returns with the value true.

If the current thread:

then InterruptedException is thrown and the current thread's interrupted status is cleared.

If the specified waiting time elapses then the value false is returned. If the time is less than or equal to zero, the method will not wait at all.

Parameters:
timeout - The maximum time to wait.
unit - The time unit of the timeout argument.
Returns:
true If the operation completed and false if the waiting time elapsed before the operation completed.
Throws:
java.lang.InterruptedException - if the current thread is interrupted while waiting.
Since:
5.1.0.0.29

get

RESULT get()
           throws java.lang.InterruptedException,
                  java.util.concurrent.ExecutionException
Waits if necessary for the operation to complete, and then retrieves its result.

Returns:
the computed result.
Throws:
java.util.concurrent.ExecutionException - If the computation threw an exception.
java.lang.InterruptedException - If the current thread was interrupted while waiting.
Since:
5.1.0.0.29

get

RESULT get(long timeout,
           java.util.concurrent.TimeUnit unit)
           throws java.lang.InterruptedException,
                  java.util.concurrent.ExecutionException,
                  java.util.concurrent.TimeoutException
Waits if necessary for at most the given time for the operation to complete, and then retrieves its result, if available.

Parameters:
timeout - The maximum time to wait.
unit - The time unit of the timeout argument.
Returns:
the computed result
Throws:
java.util.concurrent.ExecutionException - If the computation threw an exception.
java.lang.InterruptedException - If the current thread was interrupted while waiting.
java.util.concurrent.TimeoutException - If the wait timed out.
Since:
5.1.0.0.29

getImpact

Operation.Impact getImpact()
Returns the impact of the operation.

Returns:
the impact.
Since:
5.1.0.0.29

getVerb

Verb getVerb()
This gets the verb that describes this operation. Multiple operations may return the same verb, however verbs must be unique across the preferred operations. That is only one prefered operation may implement the "mute" verb. There may be deprecated operations that implement the "mute" verb but these will be less performant as they will be implemented as wrappers for the preferred "mute" operation.

Returns:
the verb that describes the operation.
Since:
5.1.0.0.29

isDone

boolean isDone()
Returns true if this operation completed. Completion may be due to normal termination or an exception -- in both of these cases, this method will return true.

Returns:
true if this operation completed.
Since:
5.1.0.0.29

isSubmitted

boolean isSubmitted()
Returns true if this operation has been submitted for execution.

Returns:
true if this operation has been submitted for execution.
Since:
5.1.0.0.29

set

void set(java.util.concurrent.Future<RESULT> future)
This method is called by the ConferencingObject when the operation is accepted for execution.

Parameters:
future - The future for completion of the operation.
Since:
5.1.0.0.29

Avaya Conferencing Provider API

Copyright © 2008-2009 Avaya. All Rights Reserved.