org.apache.juddi.api.impl
Class UDDISubscriptionImpl

java.lang.Object
  extended by org.apache.juddi.api.impl.AuthenticatedService
      extended by org.apache.juddi.api.impl.UDDISubscriptionImpl
All Implemented Interfaces:
Remote, UDDISubscriptionPortType

public class UDDISubscriptionImpl
extends AuthenticatedService
implements UDDISubscriptionPortType


Field Summary
static String CHUNK_TOKEN_PREFIX
           
static int DEFAULT_CHUNKEXPIRATION_MINUTES
           
static int DEFAULT_SUBSCRIPTIONEXPIRATION_DAYS
           
 
Fields inherited from class org.apache.juddi.api.impl.AuthenticatedService
AUTHTOKEN_ACTIVE, AUTHTOKEN_RETIRED
 
Constructor Summary
UDDISubscriptionImpl()
           
 
Method Summary
 void deleteSubscription(DeleteSubscription body)
          Cancels an existing subscription.
 SubscriptionResultsList getSubscriptionResults(GetSubscriptionResults body)
          This API allows a subscriber to request that the information pertaining to an existing subscription be returned.  This is useful, for example, to obtain historical data when a subscription is first set up or when a subscriber misses the notification normally provided by the registry.  The results are returned synchronously as the response to this call.  The get_subscriptionResults API can also be used as an alternative to notifications for obtaining subscription data.
 SubscriptionResultsList getSubscriptionResults(GetSubscriptionResults body, UddiEntityPublisher publisher)
           
 List<Subscription> getSubscriptions(String authInfo)
          Returns the complete list of existing subscriptions owned by the subscriber.
 void saveSubscription(String authInfo, javax.xml.ws.Holder<List<Subscription>> subscription)
          The save_subscription API registers a request to monitor specific registry content and to have the node periodically notify the subscriber when changes are available.
 
Methods inherited from class org.apache.juddi.api.impl.AuthenticatedService
getEntityPublisher
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SUBSCRIPTIONEXPIRATION_DAYS

public static final int DEFAULT_SUBSCRIPTIONEXPIRATION_DAYS
See Also:
Constant Field Values

DEFAULT_CHUNKEXPIRATION_MINUTES

public static final int DEFAULT_CHUNKEXPIRATION_MINUTES
See Also:
Constant Field Values

CHUNK_TOKEN_PREFIX

public static final String CHUNK_TOKEN_PREFIX
See Also:
Constant Field Values
Constructor Detail

UDDISubscriptionImpl

public UDDISubscriptionImpl()
Method Detail

deleteSubscription

public void deleteSubscription(DeleteSubscription body)
                        throws DispositionReportFaultMessage
Description copied from interface: UDDISubscriptionPortType
Cancels an existing subscription.

Specified by:
deleteSubscription in interface UDDISubscriptionPortType
Parameters:
body -

·         authInfo:  This optional argument is an element that contains an authentication token.  Registries that wish to restrict who can delete a subscription typically require authInfo for this call, though this is a matter of node policy.

·         subscriptionKey:  This required argument specifies, using anyURIs, the subscription or subscriptions to be deleted.

Throws:
DispositionReportFaultMessage

getSubscriptionResults

public SubscriptionResultsList getSubscriptionResults(GetSubscriptionResults body)
                                               throws DispositionReportFaultMessage
Description copied from interface: UDDISubscriptionPortType
This API allows a subscriber to request that the information pertaining to an existing subscription be returned.  This is useful, for example, to obtain historical data when a subscription is first set up or when a subscriber misses the notification normally provided by the registry.  The results are returned synchronously as the response to this call.  The get_subscriptionResults API can also be used as an alternative to notifications for obtaining subscription data. If this is the preference, then the subscriber SHOULD not provide a bindingKey when saving the associated subscription. See Section 5.5.8 save_subscription.  This API is not affected by the value of the notificationInterval in the subscription.

Specified by:
getSubscriptionResults in interface UDDISubscriptionPortType
Parameters:
body -

·         authInfo:  This optional argument is an element that contains an authentication token.  Registries that wish to restrict who can retrieve subscription data typically require authInfo for this call, though this is a matter of node policy.

·         chunkToken:  This optional argument is used to retrieve subsequent groups of data when the first call to this API indicates more data is available.  This occurs when a chunkToken is returned whose value is not "0" in the subscriptionResultsList structure described in the next section. To retrieve the next chunk of data, the value returned should be used as an argument to the next invocation of this API.

·         coveragePeriod: This structure defines the time period over which the most recent changes in node data are compared with the subscription criteria in order to produce the result set. It provides start and end date/time information according to the format described in Section 5.5.4 Subscription Coverage Period.  The "current" state of registry entries pertaining to the subscription referenced by the subscriptionKey provided are returned if they were last created, changed or deleted during the specified time period.

·         subscriptionKey:  This required argument of type anyURI identifies the subscription for which non-recurring synchronous results are being sought.

Returns:
returns org.uddi.sub_v3.SubscriptionResultsList

A subscriptionResultsList is returned whose content is determined by the coveragePeriod and the criteria in the subscription:

Attributes

Name  

Use  

someResultsUnavailable  

optional  

 

Subscription results MAY be chunked.  See Section 5.5.5 Chunking of Returned Subscription Data, for more information on chunking of results.  If results are chunked, then subsequent "chunks" can be retrieved using the chunkToken returned as an argument in a subsequent invocation of this API.

Note that the results returned in the subscriptionResultsList represent a snapshot of the current state of relevant entries in the registry.  They are non-transactional in nature and prior states cannot be returned.  Deleted entities and virtual deletes of entities, which have been changed in such a way that they no longer match the subscription criterion saved with the subscription, are returned only in the form of a keyBag structure, for which the deleted element is set to "true". A UDDI node MAY inform a subscriber about the real or virtual deletion of an entity multiple times.

The someResultsUnavailable attribute is set to "true" whenever the node has found it necessary to flush subscription results information pertaining to entity deletions (either actual or virtual) which pertain to this subscription, which have not yet been reported through prior calls to this API, or through use of the notify_subscriptionListener API described below.  The period of time which a node retains information on deletions for a given subscription is a matter of node policy.

The API used in the subscription filter determines the sort order for returned entities. By default, they will be sorted according to the behavior specified in the "returns" section of that API.

Throws:
DispositionReportFaultMessage

getSubscriptionResults

public SubscriptionResultsList getSubscriptionResults(GetSubscriptionResults body,
                                                      UddiEntityPublisher publisher)
                                               throws DispositionReportFaultMessage
Throws:
DispositionReportFaultMessage

getSubscriptions

public List<Subscription> getSubscriptions(String authInfo)
                                    throws DispositionReportFaultMessage
Description copied from interface: UDDISubscriptionPortType
Returns the complete list of existing subscriptions owned by the subscriber.

Specified by:
getSubscriptions in interface UDDISubscriptionPortType
Parameters:
authInfo - authInfo: This optional argument is an element that contains an authentication token. Registries that wish to restrict who can obtain information on subscriptions typically require authInfo for this call, though this is a matter of node policy.
Returns:
returns java.util.List This API call returns information on all of the subscriptions owned by the subscriber, together with the expiration date for each. The subscriptions structure returned contains zero or more subscription structures, each pertaining to a subscription. Only subscriptions created by the invoking subscriber are returned. See Section 5.5.8.1, [save_subscription] Syntax, for details on these structures.
Throws:
DispositionReportFaultMessage

saveSubscription

public void saveSubscription(String authInfo,
                             javax.xml.ws.Holder<List<Subscription>> subscription)
                      throws DispositionReportFaultMessage
Description copied from interface: UDDISubscriptionPortType
The save_subscription API registers a request to monitor specific registry content and to have the node periodically notify the subscriber when changes are available. Notifications are not returned synchronously with results for this API. Only data that matches the requested subscription criteria and which changes after the point in time that the subscription request is accepted is returned to the subscriber via a notification. This API returns a duration for which this particular subscription is valid. Depending upon the policy of the Node, subscriptions need to be renewed before the expiration date in order to insure that they remain active. Subscriptions can also be redefined or renewed using this API. The subscriptionKey pertaining to the subscription to be renewed must be supplied in the save_subscription invocation in order to accomplish this. This allows both renewal and changes to the subscription. Invoking save_subscription automatically resets the expiration period for the subscription in question to a value based upon the node’s policy.

The syntax of the subscription structure is:

Attributes

Name  

Use  

brief  

optional  

 


 

The syntax of the subscriptionFilter structure is:

Specified by:
saveSubscription in interface UDDISubscriptionPortType
Parameters:
authInfo - authInfo: This optional argument is an element that contains an authentication token. Registries that wish to restrict who can save a subscription typically require authInfo for this call, though this is a matter of node policy.
Throws:
DispositionReportFaultMessage


Copyright © 2004-2013 The Apache Software Foundation. All Rights Reserved.