wt.federation
Interface FederatedService

All Known Implementing Classes:
FederatedDirectoryService, FederatedInfoEngineService

public interface FederatedService

Defines the essential interface for all classes implementing Federated services that provide access to non-local objects.

Supported API: true

Extendable: false


Field Summary
static String SERVICE_NAME
          Label for the attribute.
 
Method Summary
 Object createObject(Class objectClass, String sourceObjectId, Hashtable attributes)
          Create a new object in a remote information service.
 void deleteObject(String sourceObjectId)
          Delete the specified object managed by this federated service.
 QueryResult findObjects(Class targetLinkClass, Persistable obj1, String obj1Role, Persistable obj2)
          Return all link objects in this service that exist between two specified source objects.
 QueryResult findObjects(QuerySpec criteria)
          Retrieve objects from this federated service using the specified selection criteria.
 String getActionURL(String actionName, Hashtable arguments)
          Returns the URL associated with the specified action and set of named arguments.
 String getServiceName()
          Gets the value of the attribute: SERVICE_NAME.
 Enumeration getSupportedLinkClasses()
          Return the enumeration of link class names for which this service supports navigation.
 Enumeration getSupportedObjectClasses()
          Return the enumeration of class names for which this service supports queries.
 boolean isNavigationSupported(Class linkClass)
          Return true if the named class is defined in the table of supported link classes for this federated service.
 boolean isQuerySupported(Class objectClass)
          Return true if the named class is defined in the table of supported object classes for this federated service.
 QueryResult navigate(Persistable obj, String role, Class linkClass, boolean onlyOtherSide)
          Return objects from this federated service related to the specified source object given a role and link class.
 QueryResult navigate(Persistable obj, String role, QuerySpec criteria, boolean onlyOtherSide)
          Return objects from this federated service related to the specified source object given a role and link selection crtieria.
 void purgeCaches()
          Purge any caches that might be kept by the service.
 void refreshObject(Federated proxy)
          Refresh the properties of a proxy object that are derived from a remote object.
 Hashtable retrieveAttributes(String sourceObjectId)
          

Supported API: true
 Object retrieveObject(String sourceObjectId)
          Returns a Federated instance of the remote object identified by the specified source object identifier.
 void setServiceName(String a_ServiceName)
          Sets the value of the attribute: SERVICE_NAME.
 void updateObject(String sourceObjectId, Hashtable updateAttributes, Vector deleteAttributes)
          Update the attributes of a specified remote object.
 

Field Detail

SERVICE_NAME

static final String SERVICE_NAME
Label for the attribute.

Supported API: true

See Also:
Constant Field Values
Method Detail

getServiceName

String getServiceName()
Gets the value of the attribute: SERVICE_NAME.

Supported API: true

Returns:
String

setServiceName

void setServiceName(String a_ServiceName)
Sets the value of the attribute: SERVICE_NAME.

Supported API: true

Parameters:
a_ServiceName -

getActionURL

String getActionURL(String actionName,
                    Hashtable arguments)
                    throws wt.federation.FederationServicesException
Returns the URL associated with the specified action and set of named arguments.

Supported API: true

Parameters:
actionName -
arguments -
Returns:
String
Throws:
wt.federation.FederationServicesException

retrieveObject

Object retrieveObject(String sourceObjectId)
                      throws wt.federation.FederationServicesException
Returns a Federated instance of the remote object identified by the specified source object identifier.

Supported API: true

Parameters:
sourceObjectId -
Returns:
Object
Throws:
wt.federation.FederationServicesException

retrieveAttributes

Hashtable retrieveAttributes(String sourceObjectId)
                             throws wt.federation.FederationServicesException


Supported API: true

Parameters:
sourceObjectId -
Returns:
Hashtable
Throws:
wt.federation.FederationServicesException

refreshObject

void refreshObject(Federated proxy)
                   throws wt.federation.FederationServicesException
Refresh the properties of a proxy object that are derived from a remote object.

Supported API: true

Parameters:
proxy -
Throws:
wt.federation.FederationServicesException

createObject

Object createObject(Class objectClass,
                    String sourceObjectId,
                    Hashtable attributes)
                    throws wt.federation.FederationServicesException
Create a new object in a remote information service.

Supported API: true

Parameters:
objectClass -
sourceObjectId -
attributes -
Returns:
Object
Throws:
wt.federation.FederationServicesException

updateObject

void updateObject(String sourceObjectId,
                  Hashtable updateAttributes,
                  Vector deleteAttributes)
                  throws wt.federation.FederationServicesException
Update the attributes of a specified remote object.

Supported API: true

Parameters:
sourceObjectId -
updateAttributes -
deleteAttributes -
Throws:
wt.federation.FederationServicesException

deleteObject

void deleteObject(String sourceObjectId)
                  throws wt.federation.FederationServicesException
Delete the specified object managed by this federated service.

Supported API: true

Parameters:
sourceObjectId -
Throws:
wt.federation.FederationServicesException

findObjects

QueryResult findObjects(QuerySpec criteria)
                        throws wt.federation.FederationServicesException
Retrieve objects from this federated service using the specified selection criteria.

Supported API: true

Parameters:
criteria -
Returns:
QueryResult
Throws:
wt.federation.FederationServicesException

findObjects

QueryResult findObjects(Class targetLinkClass,
                        Persistable obj1,
                        String obj1Role,
                        Persistable obj2)
                        throws wt.federation.FederationServicesException
Return all link objects in this service that exist between two specified source objects.

Supported API: true

Parameters:
targetLinkClass -
obj1 -
obj1Role -
obj2 -
Returns:
QueryResult
Throws:
wt.federation.FederationServicesException

navigate

QueryResult navigate(Persistable obj,
                     String role,
                     Class linkClass,
                     boolean onlyOtherSide)
                     throws wt.federation.FederationServicesException
Return objects from this federated service related to the specified source object given a role and link class. Return only the related objects themselves if specified. Otherwise, return both the related objects as well as the link objects that associate them with the source object.

Supported API: true

Parameters:
obj -
role -
linkClass -
onlyOtherSide -
Returns:
QueryResult
Throws:
wt.federation.FederationServicesException

navigate

QueryResult navigate(Persistable obj,
                     String role,
                     QuerySpec criteria,
                     boolean onlyOtherSide)
                     throws wt.federation.FederationServicesException
Return objects from this federated service related to the specified source object given a role and link selection crtieria. Return only the related objects themselves if specified. Otherwise, return both the related objects as well as the link objects that associate them with the source object.

Supported API: true

Parameters:
obj -
role -
criteria -
onlyOtherSide -
Returns:
QueryResult
Throws:
wt.federation.FederationServicesException

getSupportedObjectClasses

Enumeration getSupportedObjectClasses()
                                      throws wt.federation.FederationServicesException
Return the enumeration of class names for which this service supports queries.

Supported API: true

Returns:
Enumeration
Throws:
wt.federation.FederationServicesException

getSupportedLinkClasses

Enumeration getSupportedLinkClasses()
                                    throws wt.federation.FederationServicesException
Return the enumeration of link class names for which this service supports navigation.

Supported API: true

Returns:
Enumeration
Throws:
wt.federation.FederationServicesException

isQuerySupported

boolean isQuerySupported(Class objectClass)
                         throws wt.federation.FederationServicesException
Return true if the named class is defined in the table of supported object classes for this federated service.

Supported API: true

Parameters:
objectClass -
Returns:
boolean
Throws:
wt.federation.FederationServicesException

isNavigationSupported

boolean isNavigationSupported(Class linkClass)
                              throws wt.federation.FederationServicesException
Return true if the named class is defined in the table of supported link classes for this federated service.

Supported API: true

Parameters:
linkClass -
Returns:
boolean
Throws:
wt.federation.FederationServicesException

purgeCaches

void purgeCaches()
                 throws wt.federation.FederationServicesException
Purge any caches that might be kept by the service.

Supported API: true

Throws:
wt.federation.FederationServicesException