org.globus.ogsa.impl.base.aggregator
Class DataAggregationManager

java.lang.Object
  extended byorg.globus.ogsa.impl.base.aggregator.DataAggregationManager
All Implemented Interfaces:
org.gridforum.ogsi.NotificationSink, org.globus.ogsa.NotificationSinkCallback, org.globus.ogsa.OperationProvider, java.rmi.Remote, org.globus.ogsa.ServiceProperties

public class DataAggregationManager
extends java.lang.Object
implements org.globus.ogsa.OperationProvider, org.globus.ogsa.NotificationSinkCallback

Service delegation component which aggregates and "caches" service data from other services into the local service data container using notification sinks. Should be compatible with any service that implements NotificationSinkPortType


Field Summary
static java.lang.String DEFAULT_NAMESPACE
           
static java.lang.String DEFAULT_PARAM_NAME
           
static java.lang.String MANAGER_INSTANCE
           
 
Fields inherited from interface org.globus.ogsa.ServiceProperties
ACTIVATE_ON_STARTUP, ACTIVATION, BASE_CLASS_NAME, BOOTSTRAP, CONFIG_PATH, CONTAINS_REFERENCE, CREATION_EXTENSIBILITY, CREATION_EXTENSIBILITY_OUTPUT, CUSTOM_EXTENSIBILITY_DESERIALIZER, CUSTOM_EXTENSIBILITY_SERIALIZER, CUSTOM_MAPPING_REGISTERED, DEACTIVATED_PERSISTENT, DEACTIVATED_STATE, DEACTIVATED_TRANSIENT, DEACTIVATION, DESTROY_LISTENER, DESTRUCTION_SKELETON, DISABLE_FACTORY_REGISTRY, ENDPOINT, ENTRY_INSTANCE_CREATION, FACTORY, FACTORY_CALLBACK, FACTORY_HANDLE, FACTORY_PROVIDER, FACTORY_REGISTRY, GSR_DESCRIPTION, HANDLE, HANDLE_PORT, HANDLE_PROTOCOL, INSTANCE_CLASS, INSTANCE_DEACTIVATION, INSTANCE_GSR_DESCRIPTION, INSTANCE_LIFECYCLE, INSTANCE_PORT_TYPE, INSTANCE_PORT_TYPE_NS, INSTANCE_PREFIX, INSTANCE_REGISTRY, INSTANCE_SCHEMA_PATH, INSTANCE_WSDL, INTERFACE_CLASS_NAME, INVOCATION_ID, LAZY_CREATION, LIFECYCLE, LIFECYCLE_MONITOR, LIFECYCLE_MONITOR_CLASS, NAME, NOTIFICATION_ENGINE, NOTIFICATION_FACTORY, NOTIFICATION_SOURCE, OPERATION_PROVIDERS, PERSISTENT, PERSISTENT_PROPERTIES, PORT, PORT_TYPE, PORT_TYPE_NS, PRIMARY_KEY, PROTOCOL, QUERY_ENGINE, REDIRECT_RESOLVER, REGISTRY, RESOLVER_CACHE, ROUTER_HEADER, ROUTER_VIA, SCHEMA_LOCATION, SCHEMA_PATH, SERVICE_ACTIVATOR, SERVICE_DATA, SERVICE_DEPLOYMENT, SERVICE_GROUP_ENTRY, SERVICE_GROUP_PROVIDER, SERVICE_LOADER, SERVICE_NODE, SERVICE_PATH, SINK_ID, STARTUP_STATE, SWEEP_SERVICE_DATA, TIMEOUT, TIMESTAMP, TRANSIENT, TYPE, USER, WEBSTART_PANEL_NAME, WEBSTART_URL, WSDL
 
Constructor Summary
DataAggregationManager()
          Constructs an aggregator that performs basic GT3.0-style service data aggregation.
DataAggregationManager(DataAggregationSource dataSource, DataAggregationSink[] dataSinks)
          Constructs an Data Aggregation Manager that delegates functionality to the supplied DataAggregationSource and DataAggregationSink objects.
 
Method Summary
 java.lang.String addDataAggregation(DataAggregationType dataAggregation)
          Causes the aggregator to begin collecting data from a remote service.
 void addDataSink(DataAggregationSink sink)
           
 void deliverNotification(org.gridforum.ogsi.ExtensibilityType message)
           
 void flush()
           
 DataAggregationSink[] getDataSinks()
           
 DataAggregationSource getDataSource()
           
 javax.xml.namespace.QName[] getOperations()
           
 java.lang.Object getPersistentProperty(java.lang.String name)
           
 java.lang.Object getProperty(java.lang.String name)
           
 void initialize(org.globus.ogsa.GridServiceBase serviceBase)
           
 boolean isValidSession(java.lang.String sessionID)
           
 void processConfig()
           
 void removeDataAggregation(java.lang.String sessionID)
           
 void removeDataSink(DataAggregationSink sink)
           
 void setPersistentProperty(java.lang.String name, java.lang.Object obj)
           
 void setProperty(java.lang.String name, java.lang.Object obj)
           
 void terminate()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_NAMESPACE

public static final java.lang.String DEFAULT_NAMESPACE
See Also:
Constant Field Values

DEFAULT_PARAM_NAME

public static final java.lang.String DEFAULT_PARAM_NAME
See Also:
Constant Field Values

MANAGER_INSTANCE

public static final java.lang.String MANAGER_INSTANCE
See Also:
Constant Field Values
Constructor Detail

DataAggregationManager

public DataAggregationManager()
Constructs an aggregator that performs basic GT3.0-style service data aggregation.


DataAggregationManager

public DataAggregationManager(DataAggregationSource dataSource,
                              DataAggregationSink[] dataSinks)
Constructs an Data Aggregation Manager that delegates functionality to the supplied DataAggregationSource and DataAggregationSink objects.

Parameters:
dataSource - a class that implments the DataAggregationSource interface
dataSinks - an array of classes that implment the dataSink interface
Method Detail

getOperations

public javax.xml.namespace.QName[] getOperations()
Specified by:
getOperations in interface org.globus.ogsa.OperationProvider

getProperty

public java.lang.Object getProperty(java.lang.String name)
Specified by:
getProperty in interface org.globus.ogsa.ServiceProperties

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object obj)
Specified by:
setProperty in interface org.globus.ogsa.ServiceProperties

flush

public void flush()
           throws org.globus.ogsa.ServicePropertiesException
Specified by:
flush in interface org.globus.ogsa.ServiceProperties
Throws:
org.globus.ogsa.ServicePropertiesException

getPersistentProperty

public java.lang.Object getPersistentProperty(java.lang.String name)
Specified by:
getPersistentProperty in interface org.globus.ogsa.ServiceProperties

setPersistentProperty

public void setPersistentProperty(java.lang.String name,
                                  java.lang.Object obj)
Specified by:
setPersistentProperty in interface org.globus.ogsa.ServiceProperties

getDataSource

public DataAggregationSource getDataSource()

getDataSinks

public DataAggregationSink[] getDataSinks()

addDataSink

public void addDataSink(DataAggregationSink sink)

removeDataSink

public void removeDataSink(DataAggregationSink sink)

isValidSession

public boolean isValidSession(java.lang.String sessionID)
                       throws java.lang.Exception
Throws:
java.lang.Exception

initialize

public void initialize(org.globus.ogsa.GridServiceBase serviceBase)
                throws org.globus.ogsa.GridServiceException
Specified by:
initialize in interface org.globus.ogsa.OperationProvider
Throws:
org.globus.ogsa.GridServiceException

terminate

public void terminate()

processConfig

public void processConfig()
                   throws org.globus.ogsa.config.ConfigException
Throws:
org.globus.ogsa.config.ConfigException

addDataAggregation

public java.lang.String addDataAggregation(DataAggregationType dataAggregation)
                                    throws org.globus.ogsa.GridServiceException
Causes the aggregator to begin collecting data from a remote service.

Parameters:
dataAggregation - Implementation-specific parameters of the data to be collected.
Returns:
The session ID of the Data Aggregation session that has just been created by this method.
Throws:
org.globus.ogsa.GridServiceException

removeDataAggregation

public void removeDataAggregation(java.lang.String sessionID)
                           throws org.globus.ogsa.GridServiceException
Throws:
org.globus.ogsa.GridServiceException

deliverNotification

public void deliverNotification(org.gridforum.ogsi.ExtensibilityType message)
                         throws org.globus.ogsa.GridServiceException
Specified by:
deliverNotification in interface org.gridforum.ogsi.NotificationSink
Throws:
org.globus.ogsa.GridServiceException