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 ACTION_TABLE
          Label for the attribute.
static String FIND_ASSOCIATIONS_BY_CRITERIA
           
static String FIND_ASSOCIATIONS_BY_LINK_CLASS
           
static String FIND_OBJECTS
           
static String PROXY_EXPIRATION_INTERVAL
          Label for the attribute.
static String PROXY_REFRESH_INTERVAL
          Label for the attribute.
static String RETRIEVE_CONTENTLIST
           
static String RETRIEVE_MASTER
           
static String RETRIEVE_OBJECT
           
static String SERVICE_NAME
          Label for the attribute.
static String SERVICE_URL
          Label for the attribute.
static String TIGHTLY_COUPLED
          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.
 Hashtable getActionTable()
          Gets the value of the attribute: ACTION_TABLE.
 String getActionURL(String actionName, Hashtable arguments)
          Returns the URL associated with the specified action and set of named arguments.
 String getActionURL(String actionName, String sourceObjectId)
          Returns the URL associated with the specified action and source object identifier.
 String getActionURLTemplate(String actionName)
          Returns the URL template associated with the specified action.
 long getProxyExpirationInterval()
          Gets the value of the attribute: PROXY_EXPIRATION_INTERVAL.
 long getProxyRefreshInterval()
          Gets the value of the attribute: PROXY_REFRESH_INTERVAL.
 String getServiceName()
          Gets the value of the attribute: SERVICE_NAME.
 String getServiceURL()
          Gets the value of the attribute: SERVICE_URL.
 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.
 boolean isTightlyCoupled()
          Gets the value of the attribute: TIGHTLY_COUPLED.
 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 setActionTable(Hashtable a_ActionTable)
          Sets the value of the attribute: ACTION_TABLE.
 void setActionURLTemplate(String actionName, String actionURLTemplate)
          Associates the specified URL template with the specified action.
 void setProxyExpirationInterval(long a_ProxyExpirationInterval)
          Sets the value of the attribute: PROXY_EXPIRATION_INTERVAL.
 void setProxyRefreshInterval(long a_ProxyRefreshInterval)
          Sets the value of the attribute: PROXY_REFRESH_INTERVAL.
 void setServiceName(String a_ServiceName)
          Sets the value of the attribute: SERVICE_NAME.
 void setServiceURL(String a_ServiceURL)
          Sets the value of the attribute: SERVICE_URL.
 void setTightlyCoupled(boolean a_TightlyCoupled)
          Sets the value of the attribute: TIGHTLY_COUPLED.
 void updateObject(String sourceObjectId, Hashtable updateAttributes, Vector deleteAttributes)
          Update the attributes of a specified remote object.
 

Field Detail

SERVICE_NAME

public static final String SERVICE_NAME
Label for the attribute.

Supported API: true

See Also:
Constant Field Values

SERVICE_URL

public static final String SERVICE_URL
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

ACTION_TABLE

public static final String ACTION_TABLE
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

PROXY_REFRESH_INTERVAL

public static final String PROXY_REFRESH_INTERVAL
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

PROXY_EXPIRATION_INTERVAL

public static final String PROXY_EXPIRATION_INTERVAL
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

TIGHTLY_COUPLED

public static final String TIGHTLY_COUPLED
Label for the attribute.

Supported API: false

See Also:
Constant Field Values

FIND_ASSOCIATIONS_BY_CRITERIA

public static final String FIND_ASSOCIATIONS_BY_CRITERIA
See Also:
Constant Field Values

FIND_ASSOCIATIONS_BY_LINK_CLASS

public static final String FIND_ASSOCIATIONS_BY_LINK_CLASS
See Also:
Constant Field Values

FIND_OBJECTS

public static final String FIND_OBJECTS
See Also:
Constant Field Values

RETRIEVE_OBJECT

public static final String RETRIEVE_OBJECT
See Also:
Constant Field Values

RETRIEVE_MASTER

public static final String RETRIEVE_MASTER
See Also:
Constant Field Values

RETRIEVE_CONTENTLIST

public static final String RETRIEVE_CONTENTLIST
See Also:
Constant Field Values
Method Detail

getServiceName

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

Supported API: true

Returns:
String

setServiceName

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

Supported API: true

Parameters:
a_ServiceName -

getServiceURL

public String getServiceURL()
Gets the value of the attribute: SERVICE_URL.

Supported API: false

Returns:
String

setServiceURL

public void setServiceURL(String a_ServiceURL)
                   throws WTPropertyVetoException
Sets the value of the attribute: SERVICE_URL.

Supported API: false

Parameters:
a_ServiceURL -
Throws:
WTPropertyVetoException

getActionTable

public Hashtable getActionTable()
Gets the value of the attribute: ACTION_TABLE.

Supported API: false

Returns:
Hashtable

setActionTable

public void setActionTable(Hashtable a_ActionTable)
                    throws WTPropertyVetoException
Sets the value of the attribute: ACTION_TABLE.

Supported API: false

Parameters:
a_ActionTable -
Throws:
WTPropertyVetoException

getProxyRefreshInterval

public long getProxyRefreshInterval()
Gets the value of the attribute: PROXY_REFRESH_INTERVAL.

Supported API: false

Returns:
long

setProxyRefreshInterval

public void setProxyRefreshInterval(long a_ProxyRefreshInterval)
                             throws WTPropertyVetoException
Sets the value of the attribute: PROXY_REFRESH_INTERVAL.

Supported API: false

Parameters:
a_ProxyRefreshInterval -
Throws:
WTPropertyVetoException

getProxyExpirationInterval

public long getProxyExpirationInterval()
Gets the value of the attribute: PROXY_EXPIRATION_INTERVAL.

Supported API: false

Returns:
long

setProxyExpirationInterval

public void setProxyExpirationInterval(long a_ProxyExpirationInterval)
                                throws WTPropertyVetoException
Sets the value of the attribute: PROXY_EXPIRATION_INTERVAL.

Supported API: false

Parameters:
a_ProxyExpirationInterval -
Throws:
WTPropertyVetoException

isTightlyCoupled

public boolean isTightlyCoupled()
Gets the value of the attribute: TIGHTLY_COUPLED.

Supported API: false

Returns:
boolean

setTightlyCoupled

public void setTightlyCoupled(boolean a_TightlyCoupled)
                       throws WTPropertyVetoException
Sets the value of the attribute: TIGHTLY_COUPLED.

Supported API: false

Parameters:
a_TightlyCoupled -
Throws:
WTPropertyVetoException

getActionURL

public String getActionURL(String actionName,
                           String sourceObjectId)
                    throws FederationServicesException
Returns the URL associated with the specified action and source object identifier.

Supported API: false

Parameters:
actionName -
sourceObjectId -
Returns:
String
Throws:
FederationServicesException

getActionURL

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

Supported API: true

Parameters:
actionName -
arguments -
Returns:
String
Throws:
FederationServicesException

getActionURLTemplate

public String getActionURLTemplate(String actionName)
Returns the URL template associated with the specified action.

Supported API: false

Parameters:
actionName -
Returns:
String

setActionURLTemplate

public void setActionURLTemplate(String actionName,
                                 String actionURLTemplate)
Associates the specified URL template with the specified action.

Supported API: false

Parameters:
actionName -
actionURLTemplate -

retrieveObject

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

Supported API: true

Parameters:
sourceObjectId -
Returns:
Object
Throws:
FederationServicesException

retrieveAttributes

public Hashtable retrieveAttributes(String sourceObjectId)
                             throws FederationServicesException


Supported API: true

Parameters:
sourceObjectId -
Returns:
Hashtable
Throws:
FederationServicesException

refreshObject

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

Supported API: true

Parameters:
proxy -
Throws:
FederationServicesException

createObject

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

Supported API: true

Parameters:
objectClass -
sourceObjectId -
attributes -
Returns:
Object
Throws:
FederationServicesException

updateObject

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

Supported API: true

Parameters:
sourceObjectId -
updateAttributes -
deleteAttributes -
Throws:
FederationServicesException

deleteObject

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

Supported API: true

Parameters:
sourceObjectId -
Throws:
FederationServicesException

findObjects

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

Supported API: true

Parameters:
criteria -
Returns:
QueryResult
Throws:
FederationServicesException

findObjects

public QueryResult findObjects(Class targetLinkClass,
                               Persistable obj1,
                               String obj1Role,
                               Persistable obj2)
                        throws 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:
FederationServicesException

navigate

public QueryResult navigate(Persistable obj,
                            String role,
                            Class linkClass,
                            boolean onlyOtherSide)
                     throws 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:
FederationServicesException

navigate

public QueryResult navigate(Persistable obj,
                            String role,
                            QuerySpec criteria,
                            boolean onlyOtherSide)
                     throws 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:
FederationServicesException

getSupportedObjectClasses

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

Supported API: true

Returns:
Enumeration
Throws:
FederationServicesException

getSupportedLinkClasses

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

Supported API: true

Returns:
Enumeration
Throws:
FederationServicesException

isQuerySupported

public boolean isQuerySupported(Class objectClass)
                         throws 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:
FederationServicesException

isNavigationSupported

public boolean isNavigationSupported(Class linkClass)
                              throws 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:
FederationServicesException

purgeCaches

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

Supported API: true

Throws:
FederationServicesException