cgl.narada.wsinfra.wsr.storage
Interface WsrGroupInfoStorageOperations

All Known Implementing Classes:
WsrGroupInfoStorageOperationsImpl

public interface WsrGroupInfoStorageOperations

This provides operations for storing and retrieving information pertaining to groups. Specifically the operations provided include
(a)Storing and Retrieving GroupInfo objects
(b) Retrieving the list of all sent, received, created, expired, terminated and active sent and received Groups.


Method Summary
 void addDestinationGroupIdPair(String destination, String groupId)
          Stores the GroupId that should be used while communicating with a given destination.
 void deleteGroupInfo(String GroupId)
          Removes the GroupInfo corresponding to the specified groupId.
 String getDestinationForGroupId(String groupId)
          Retrieves the destination for a specific groupId
 String[] getGroupIdsForDestination(String destination)
          Retrieve the GroupIds for a specific destination
 WsrGroupInfoImpl getGroupInfoUsingGroupId(String GroupId)
          Retrieves the GroupInfo corresponding to the specified groupId.
 String[] getListOfAllGroups(boolean isSource)
          Retrieves the entire list of groupIds registered with the underlying service.
 long getSequenceNumberLastDelivered(String groupId)
          Retrieves the sequence number that was last Delivered on a given group.
 boolean hasGroupIdForDestination(String destination)
          Checks to see if there is a groupId/destination pair corresponding to the destination in question.
 boolean isGroupExists(String groupId)
          A method which checks whether a certain group (irrespective of whether it is active/terminated/expired/timed-out) is a exits(from Sink point of view) at this node
 boolean isKnownGroup(String groupId)
          A method which checks whether a certain group (irrespective of whether it is active/terminated/expired/timed-out) is a known group at this node
 void removeDestinationGroupIdPair(String groupId)
          Removes the destination/group identifier pair corresponding to this groupId
 void storeCreatedGroup(WsrGroupInfoImpl groupInfo)
          Store a GroupInfo object.
 

Method Detail

addDestinationGroupIdPair

void addDestinationGroupIdPair(String destination,
                               String groupId)
                               throws WsrStorageException
Stores the GroupId that should be used while communicating with a given destination. This feature allows us to send messages reliably with minimal intervention from the application.

Throws:
WsrStorageException

getGroupIdsForDestination

String[] getGroupIdsForDestination(String destination)
                                   throws WsrStorageException
Retrieve the GroupIds for a specific destination

Throws:
WsrStorageException

getDestinationForGroupId

String getDestinationForGroupId(String groupId)
                                throws WsrStorageException
Retrieves the destination for a specific groupId

Throws:
WsrStorageException

removeDestinationGroupIdPair

void removeDestinationGroupIdPair(String groupId)
                                  throws WsrStorageException
Removes the destination/group identifier pair corresponding to this groupId

Throws:
WsrStorageException

hasGroupIdForDestination

boolean hasGroupIdForDestination(String destination)
                                 throws WsrStorageException
Checks to see if there is a groupId/destination pair corresponding to the destination in question.

Throws:
WsrStorageException

getSequenceNumberLastDelivered

long getSequenceNumberLastDelivered(String groupId)
                                    throws WsrStorageException
Retrieves the sequence number that was last Delivered on a given group. This method throws an exception if the group specified by groupId is an unknown one or if there are storage related problems.

Throws:
WsrStorageException

isKnownGroup

boolean isKnownGroup(String groupId)
                     throws WsrStorageException
A method which checks whether a certain group (irrespective of whether it is active/terminated/expired/timed-out) is a known group at this node

Throws:
WsrStorageException

isGroupExists

boolean isGroupExists(String groupId)
                      throws WsrStorageException
A method which checks whether a certain group (irrespective of whether it is active/terminated/expired/timed-out) is a exits(from Sink point of view) at this node

Throws:
WsrStorageException

storeCreatedGroup

void storeCreatedGroup(WsrGroupInfoImpl groupInfo)
                       throws WsrStorageException
Store a GroupInfo object. This method throws an exception under the following circumstances
The groupId in the GroupInfo already exists.
Storage related problems

Throws:
WsrStorageException

getGroupInfoUsingGroupId

WsrGroupInfoImpl getGroupInfoUsingGroupId(String GroupId)
                                          throws WsrStorageException
Retrieves the GroupInfo corresponding to the specified groupId. This method throws an exception under the following conditions.
The Group specified in groupId is an unknown one.
Storage related problems

Throws:
WsrStorageException

deleteGroupInfo

void deleteGroupInfo(String GroupId)
                     throws WsrStorageException
Removes the GroupInfo corresponding to the specified groupId. This method throws an exception under the following conditions.
The Group specified in groupId is an unknown one.
Storage related problems

Throws:
WsrStorageException

getListOfAllGroups

String[] getListOfAllGroups(boolean isSource)
                            throws WsrStorageException
Retrieves the entire list of groupIds registered with the underlying service. This method throws an exception if there are storage related problems.

Throws:
WsrStorageException


For comments and suggestions please send e-mail to The NaradaBrokering Project