|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.connecterra.ale.client.SOAPALEClient
A concrete implementation of the ALE interface
that accesses a remote RFTagAware Edge server using the SOAP protocol.
| Constructor Summary | |
SOAPALEClient(java.net.URL aleServiceURL)
Constructs a new ALE client stub for accessing a remote edge server having a specified URL for its SOAP interface. |
|
| Method Summary | |
void |
define(java.lang.String ecSpecName,
ECSpec ecSpec)
Define a new event cycle specification for use with the poll(java.lang.String) and
subscribe(java.lang.String, java.net.URI) methods. |
ECSpec |
get(java.lang.String ecSpecName)
Look up and return a previously defined event cycle specification by name. |
ALEFactory |
getALEFactory()
Returns an ALEFactory instance for use
with this client stub. |
java.lang.String |
getALEID()
Gets the ID of this ALE server. |
ECSpec |
getECSpec(java.lang.String ecSpecName)
Look up and return a previously defined event cycle specification by name. |
ECSpecInfo |
getECSpecInfo(java.lang.String ecSpecName)
Returns administrative information about an event cycle specification. |
java.util.List |
getECSpecNames()
Returns a list of the names of all event cycle specifications currently defined. |
ECSubscriptionInfo |
getECSubscriptionInfo(java.lang.String ecSpecName,
java.net.URI subscriber)
Returns administrative information about an event cycle subscriber. |
java.lang.String |
getStandardVersion()
Returns a string that identifies what version of the EPCglobal ALE standard that this implementation complies with. |
java.util.List |
getSubscribers(java.lang.String ecSpecName)
Returns a list of URIs which are subscribed to asynchronous reports for the specified ECSpec name. |
long |
getTimeout()
Returns the network timeout duration (in milliseconds). |
java.lang.String |
getVendorVersion()
Returns a string that identifies the vendor and version of the implementation. |
ECReports |
immediate(ECSpec ecSpec)
Immediately define an event cycle specification and activate it for one event cycle, synchronously returning a report. |
java.util.List |
listECSpecNames()
Returns a list of the names of all event cycle specifications currently defined. |
java.util.List |
listLogicalReaderNames()
Returns a list of all logical reader names. |
java.util.List |
listSubscribers(java.lang.String ecSpecName)
Returns a list of URIs which are subscribed to asynchronous reports for the specified ECSpec name. |
ECReports |
poll(java.lang.String ecSpecName)
Activates a previously defined event cycle specification for one event cycle, synchronously returning a report. |
void |
redefine(java.lang.String ecSpecName,
ECSpec ecSpec)
Replace the ECSpec having the specified name with a new ECSpec. |
void |
setTimeout(long timeout)
Sets the network timeout duration (in milliseconds). |
static ALEFactory |
staticGetALEFactory()
Returns an ALEFactory instance for use
with this client stub. |
void |
subscribe(java.lang.String ecSpecName,
java.net.URI notificationURI)
Subscribe to asynchronous report delivery from an event cycle specification. |
void |
subscribe(java.lang.String ecSpecName,
java.net.URI notificationURI,
ECSubscriptionControls controls)
Subscribe to asynchronous report delivery from an event cycle specification. |
void |
suspend(java.lang.String ecSpecName)
Suspend the named event cycle specification. |
void |
undefine(java.lang.String ecSpecName)
Undefine an event cycle specification. |
void |
unsubscribe(java.lang.String ecSpecName,
java.net.URI notificationURI)
Unsubscribe a specified destination from receiving asynchronous delivery of reports from a specified event cycle specification. |
void |
unsuspend(java.lang.String ecSpecName)
Return a suspended event cycle specification to its normal state. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public SOAPALEClient(java.net.URL aleServiceURL)
throws java.rmi.RemoteException
aleServiceURL - The ALE Service URL (e.g., http://localhost:6060/axis/services/ALEService) for the remote edge server to be contacted.
java.rmi.RemoteException - A remote error occurred while communicating
with the ALE Service.| Method Detail |
public void setTimeout(long timeout)
public long getTimeout()
public static ALEFactory staticGetALEFactory()
ALEFactory instance for use
with this client stub.
public ALEFactory getALEFactory()
ALEFactory instance for use
with this client stub.
getALEFactory in interface ALE
public java.lang.String getALEID()
throws java.rmi.RemoteException,
EngineException
ALEThis method is an extension to the ALE 1.0 specification.
getALEID in interface ALEEngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE server.
public void define(java.lang.String ecSpecName,
ECSpec ecSpec)
throws DuplicateNameException,
ECSpecValidationException,
java.rmi.RemoteException,
EngineException
ALEALE.poll(java.lang.String) and
ALE.subscribe(java.lang.String, java.net.URI, com.connecterra.ale.api.ECSubscriptionControls) methods.
define in interface ALEecSpecName - The name of the specification.ecSpec - The specification to define.
ECSpecValidationException - if the ECSpec is invalid.
EngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE server.
DuplicateNameException - if an ECSpec having the same name is already defined.ECSpec
public void redefine(java.lang.String ecSpecName,
ECSpec ecSpec)
throws NoSuchNameException,
ECSpecValidationException,
java.rmi.RemoteException,
EngineException
ALE
redefine in interface ALEecSpecName - The name of the specification.
ECSpecValidationException - if the ECSpec is invalid.
EngineException - if there is an internal failure within the ALE implementation
NoSuchNameException - if there no ECSpec defined having the specified name.
java.rmi.RemoteException - if there is an error communicating with the ALE server.ECSpec
public void suspend(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALEALE.poll(java.lang.String) is
called on a suspended event cycle, it will throw an EngineException. If the event cycle
is already suspended, this call does nothing.
This method is an extension to the ALE 1.0 specification.
suspend in interface ALEecSpecName - The name of the specification to suspend.
NoSuchNameException - if there no ECSpec defined having the specified name.
EngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE server.ECSpecInfo.isSuspended()
public void unsuspend(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALEThis method is an extension to the ALE 1.0 specification.
unsuspend in interface ALEecSpecName - The name of the specification to unsuspend.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
NoSuchNameException - if there no ECSpec defined having the specified name.ALE.suspend(String)
public void undefine(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALE
undefine in interface ALEecSpecName - The name of the specification to undefine.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
NoSuchNameException - if there no ECSpec defined having the specified name.ALE.define(String, ECSpec)
public ECSpec get(java.lang.String ecSpecName)
throws java.rmi.RemoteException,
EngineException
ALE
get in interface ALEecSpecName - The name of the specification to look up.
null if there is no event
cycle specification defined with that name.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
public ECSpec getECSpec(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALE
getECSpec in interface ALEnull if there is no event
cycle specification defined with that name.
NoSuchNameException - if an ECSpec with the specified name does not exist
java.rmi.RemoteException - if there is an error communicating with the ALE server
EngineException - if there is an internal failure within the ALE implementationECSpec
public java.util.List listECSpecNames()
throws java.rmi.RemoteException,
EngineException
ALE
listECSpecNames in interface ALEjava.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
public java.util.List getECSpecNames()
throws java.rmi.RemoteException,
EngineException
ALE
getECSpecNames in interface ALEjava.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
public void subscribe(java.lang.String ecSpecName,
java.net.URI notificationURI)
throws NoSuchNameException,
InvalidURIException,
DuplicateSubscriptionException,
java.rmi.RemoteException,
EngineException
ALEALE.subscribe(String, URI, ECSubscriptionControls), with both the invalidate
count and invalidate interval set to zero.
subscribe in interface ALEecSpecName - notificationURI -
java.rmi.RemoteException - if there is an error communicating with the ALE server.
NoSuchNameException - if there no ECSpec defined having the specified name.
InvalidURIException - if the specified URI cannot be interpreted, or has no driver available.
EngineException - if there is an internal failure within the ALE implementation
DuplicateSubscriptionException - if the subscription already exists.ALE.subscribe(String, URI, ECSubscriptionControls),
ALE.unsubscribe(String, URI)
public void subscribe(java.lang.String ecSpecName,
java.net.URI notificationURI,
ECSubscriptionControls controls)
throws NoSuchNameException,
InvalidURIException,
DuplicateSubscriptionException,
java.rmi.RemoteException,
EngineException
ALEALE.poll(java.lang.String) invocations, then the event cycle
specification is activated, causing tag reads to commence. The subscription lasts until
explicitly removed by calling the ALE.unsubscribe(java.lang.String, java.net.URI) method, or when the failure
thresholds specified by controls are exceeded.
If during report generation, the notification delivery for this subscription fails
controls.getFailureLimitCount()
times in a row with no successes, then the subscription is removed. If zero, the
subscription will not be unsubscribed due to an exceeded count, but may be unsubscribed
due to the interval.
If during report generation, given a previous notification failure at time T, a
notification fails more than controls.getFailureLimitInterval() milliseconds after time T without an intervening
success, the subscription will be removed. If this is zero, the subscription will not
be unsubscribed due to an exceeded interval, but may be unsubscribed due to the count.
This method is an extension to the ALE 1.0 specification.
subscribe in interface ALEecSpecName - The name of the specification to subscribe to.notificationURI - The destination for asynchronously delivered reports. See the RFTagAware Programmer
Guide for documentation of available notification URIs.controls - Specifies the parameters which describe the behavior if notification
delivery fails. If null, default controls are used (no limit to the failure
count or failure interval).
EngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE server.
DuplicateSubscriptionException - if the subscription already exists.
InvalidURIException - if the specified URI cannot be interpreted, or has no driver available.
NoSuchNameException - if there no ECSpec defined having the specified name.ALE.subscribe(String, URI),
ALE.unsubscribe(String, URI)
public void unsubscribe(java.lang.String ecSpecName,
java.net.URI notificationURI)
throws NoSuchNameException,
NoSuchSubscriberException,
InvalidURIException,
java.rmi.RemoteException,
EngineException
ALEALE.poll(java.lang.String) invocations, then the event cycle specification
is deactivated, ceasing tag reading operations for all readers not otherwise engaged in
servicing other event cycles.
unsubscribe in interface ALEecSpecName - The name of the specification to unsubscribe from.notificationURI - The destination that will no longer receive reports.
EngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE server.
NoSuchNameException - if there no ECSpec defined having the specified name.
NoSuchSubscriberException - if there is no subscription to the specified URI.
InvalidURIException - if the specified URI cannot be interpreted, or has no driver available.ALE.subscribe(String, URI),
ALE.subscribe(String, URI, ECSubscriptionControls)
public java.util.List listSubscribers(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALE
listSubscribers in interface ALEecSpecName - The name of the specification.
URI instances, each a subscriber of the specified
event cycle specification.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
NoSuchNameException - if there no ECSpec defined having the specified name.
EngineException - if there is an internal failure within the ALE implementationECSpecInfo.getSubscriberCount()
public java.util.List getSubscribers(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALE
getSubscribers in interface ALEURI instances, each a subscriber of the specified
event cycle specification.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
NoSuchNameException - if there no ECSpec defined having the specified name.ECSpecInfo.getSubscriberCount()
public ECSpecInfo getECSpecInfo(java.lang.String ecSpecName)
throws NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALE
getECSpecInfo in interface ALEecSpecName - The name of the event cycle specification
ECSpecInfo instance giving administrative information about the
specified event cycle specification.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
NoSuchNameException - if there no ECSpec defined having the specified name.
EngineException - if there is an internal failure within the ALE implementationECSpecInfo
public ECSubscriptionInfo getECSubscriptionInfo(java.lang.String ecSpecName,
java.net.URI subscriber)
throws NoSuchNameException,
NoSuchSubscriberException,
java.rmi.RemoteException,
InvalidURIException,
EngineException
ALEThis method is an extension to the ALE 1.0 specification.
getECSubscriptionInfo in interface ALEecSpecName - The name of the event cycle specification
ECSubscriptionInfo instance giving administrative information about
the specified event cycle subscription.
NoSuchSubscriberException - if the URI specified is not subscribed to the specified ECSpec
NoSuchNameException - if there no ECSpec defined having the specified name.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
InvalidURIExceptionECSubscriptionInfo
public ECReports poll(java.lang.String ecSpecName)
throws java.lang.InterruptedException,
NoSuchNameException,
java.rmi.RemoteException,
EngineException
ALEALE.poll(java.lang.String) invocations, then a new activation of the event cycle is begun
immediately or when the start trigger is received (if the event cycle specification
specifies a start trigger). If instead there were previous subscribers or other active
ALE.poll(java.lang.String) invocations, then this method may return reports from an event cycle
already in progress.
This method is an extension to the ALE 1.0 specification.
poll in interface ALEecSpecName - The name of the event cycle specification to activate.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
NoSuchNameException - if there no ECSpec defined having the specified name.
java.lang.InterruptedException - if this method was interrupted by another thread.
EngineException - if the event cycle is suspended or redefined, or if there is an internal
failure within the ALE implementationECReports
public ECReports immediate(ECSpec ecSpec)
throws java.lang.InterruptedException,
ECSpecValidationException,
java.rmi.RemoteException,
EngineException
ALEALE.define(java.lang.String, com.connecterra.ale.api.ECSpec), activating it for one event cycle using ALE.poll(java.lang.String), and
undefining it using ALE.undefine(java.lang.String), except that event cycle specifications created
using this method will not be visible to ALE.listECSpecNames() or
ALE.getECSpecInfo(java.lang.String).
immediate in interface ALEecSpec - The event cycle specification.
java.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
java.lang.InterruptedException - if this method was interrupted by another thread.
ECSpecValidationException - if the ECSpec is invalid.ECReports
public java.util.List listLogicalReaderNames()
throws java.rmi.RemoteException,
EngineException
ALE
listLogicalReaderNames in interface ALEjava.rmi.RemoteException - if there is an error communicating with the ALE server.
EngineException - if there is an internal failure within the ALE implementation
public java.lang.String getStandardVersion()
throws java.rmi.RemoteException,
EngineException
ALE
getStandardVersion in interface ALEjava.rmi.RemoteException - if there is an error communicating with the ALE server
EngineException - if there is an internal failure within the ALE implementationALE.getStandardVersion()
public java.lang.String getVendorVersion()
throws java.rmi.RemoteException,
EngineException
ALE
getVendorVersion in interface ALEEngineException - if there is an internal failure within the ALE implementation
java.rmi.RemoteException - if there is an error communicating with the ALE serverALE.getVendorVersion()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||