JAIN(tm) JCC API Participant Draft (0.9.2)
29 October 2000.
Confidential to JSPA Participants.
Contents
-
The Java Community Process
-
Change Log
-
Submitting comments
-
JCC contributors
The Java Community Process 1.0
This specification is being defined in accordance with the processes specified
in the
Java
Community Process 1.0. This draft of the specification represents the
Particpant Draft of the JCC API and is open to participant comments during
the participant review period. This review period must last a minimum of
30 days and all comments received must be responded to. For more information
on the Participant review period, read the Java Community Process 1.0.
Back to Top
Change Log
The following changes were incorporated into Draft 0.9, since Draft
0.8.4 of the API
-
Typos that were causing the source files not to compile have been fixed.
-
All addXXXListener() methods have been changed to throw the same exception.
-
JcpConnection states are now found in JcpConnection.java.
-
getMoreDialledDigits() changed to getMoreDialedDigits().
-
callcreated() changed to callCreated().
-
added getType() to ResourceUnavailableException.
-
The description of the parameters originalCalledAddress and redirectingAddress
of the JccCall.createConnection() method changed to mention that they are
per call leg.
-
EventIDs changed to make them unique.
-
Added a method JccConnection.getDestinationAddress()
-
Made it clear that adding a listener results in the delivering of event
snapshots. This was done earlier for just some methods but this has now
been specified for every concerned class explicitly.
-
Removed the pre-condition on JccCall.addConnectionListener() and JccCall.addCallListener().
The following changes were incorporated into Draft 0.9.1, since Draft
0.9 of the API
-
Reviewed all code and added/changed some:
-
Changed JcpProvider.getAddress(String
address) throw InvalidArgumentException in JcpProvider.getAddress(String
address) throw InvalidPartyException.
-
Removed JcpProviderEvent.getProvider(),
as Event.getSource()
does the same.
-
Added exception to JccConnection
methods as suggested by IBM
-
The semantics of JccCall.createConnection() and JccCall.routeCall() were
explained in more detail.
-
Updated JavaDoc: removed typos, introduced links, etc.
-
Introduced new packaging structure: jain.jcp
became jain.application.services.jcp
and jain.jcc
became jain.application.services.jcp.jcc.
The following changes were incorporated into Draft 0.9.2, since Draft
0.9.1 of the API
-
Changed the package structure of jain.application.services.jcp.jcc to jain.application.services.jcc.
-
Changed the name of the interface jcp.Event to jcp.JcpEvent.
-
Changed the return types of some methods on the Jcc interfaces to indicate
that Jcc objects are being returned instead of the Jcp objects as was being
done earlier.
-
Changed the exceptions of JcpPeerFactory.getJcpPeer() to align with the
exceptions thrown by Class.forName()
-
Removed the JcpPeerUnavailableException, since the JcpPeerFactory.getJcpPeer()
method no longer throws this exception.
-
Added a transition from the Failed to the Disconnected state in the JccConnection
FSM to make this FSM aligned with the FSM of the JcpConnection.
-
Added language in the Events-Blocking and non-blocking subsection
of the JccConnection so as to clarify the meaning of blocking as well as
to clarify the behavior of the platform with respect to the generation
of events.
-
Clarified further the functioning of the different addXXXListener methods.
-
Changed the input parameter types of the JccCall.addXXXListener from JcpXXXListener
to JccXXXListener and JccCall.removeConnectionListener from JcpConnectionListener
to JccConnectionListener.
-
Changed the input parameter types of the JccProvider.addXXXListener(..,EventFilter)from
JcpXXXListener to JccXXXListener.
-
Added JcpProviderEvent.getProvider().
-
Clarified the behavior in the presence of multiple listeners registered
on the JccConnection object some of which might request the suspension
of call processing.
-
Clarified the result of invoking the JcpConnection.getAddress() on the
JccConnection reference returned from JccCall.createConnection() or JccCall.routeCall().
-
Added more explanation to all the call flows diagrams.
-
Changed the signature of JccProvider. createEventFilterAddressRange(String
lowAddress, String highAddress, int matchDisposition, int nomatchDisposition)
from JccProvider.createEventFilterAddressRange(JcpAddress lowAddress, JcpAddress
highAddress, int matchDisposition, int nomatchDisposition). This was based
on the comments received which pointed out that addresses are passed as
strings in all other places.
-
Changed the pre and post conditions in JccCall.createConnection, JccCall.routeCall
and JccConnection.route methods to make them consistent.
-
Changed the semantics of JcpConnection.INPROGRESS state to make it consistent
with the corresponding sub-states defined in JccConnection interface.
-
Added ResourceUnavailableException to the createEventFilterxxx() methods
on the JccProvider interface.
-
Added the selectRoute(String[] addresses) method to the JccConnection interface.
Submitting Comments
This API is continually being reviewed and refined, with additional functionality
added to the API on a regular basis. All comments received during the Participant
review period must be responded to. A complete set of responses will be
made available to all participants.
Please review this API and provide written comments to:
Back to Top
JCC contributors