org.glite.rgma
Interface ProducerFactory


public interface ProducerFactory

A factory for Primary, Secondary and OnDemand Producers.


Method Summary
 OnDemandProducer createOnDemandProducer(TimeInterval terminationInterval, java.net.URI uri)
          Creates an on-demand producer.
 OnDemandProducer createOnDemandProducer(TimeInterval terminationInterval, java.net.URI uri, StringList voNames)
          Deprecated. See createOnDemandProducer(TimeInterval,URI)
 PrimaryProducer createPrimaryProducer(TimeInterval terminationInterval, ProducerProperties producerProperties)
          Creates a primary producer that uses the specified data storage and producer type.
 PrimaryProducer createPrimaryProducer(TimeInterval terminationInterval, ProducerProperties producerProperties, StringList voNames)
          Deprecated. Use createPrimaryProducer(TimeInterval,ProducerProperties).
 SecondaryProducer createSecondaryProducer(TimeInterval terminationInterval, ProducerProperties producerProperties)
          Creates a secondary producer, that uses a primary producer with the specified attributes to republish information.
 SecondaryProducer createSecondaryProducer(TimeInterval terminationInterval, ProducerProperties producerProperties, StringList voNames)
          Deprecated. See createSecondaryProducer(TimeInterval,ProducerProperties).
 void dropPrimaryTupleStore(java.lang.String logicalName)
          Permanently deletes a named Primary Producer tuple store.
 void dropSecondaryTupleStore(java.lang.String logicalName)
          Permanently deletes a named Secondary Producer tuple store.
 Service getOnDemandProducerService()
          Gets a reference to the OnDemandProducer service, which can be used to get and set properties and get version.
 Service getPrimaryProducerService()
          Gets a reference to the PrimaryProducer service, which can be used to get and set properties and get version.
 Service getSecondaryProducerService()
          Gets a reference to the SecondaryProducer service, which can be used to get and set properties and get version.
 TupleStoreList listPrimaryTupleStores()
          Returns a list of existing tuple stores that can be used by Primary Producers.
 TupleStoreList listSecondaryTupleStores()
          Returns a list of existing tuple stores that can be used by Secondary Producers.
 OnDemandProducer reconnectOnDemandProducer(ResourceEndpoint resourceEndpoint)
          Reconnects to an existing OnDemandProducer resource.
 PrimaryProducer reconnectPrimaryProducer(ResourceEndpoint resourceEndpoint)
          Reconnects to an existing PrimaryProducer resource.
 SecondaryProducer reconnectSecondaryProducer(ResourceEndpoint resourceEndpoint)
          Reconnects to an existing SecondaryProducer resource.
 

Method Detail

createOnDemandProducer

public OnDemandProducer createOnDemandProducer(TimeInterval terminationInterval,
                                               java.net.URI uri,
                                               StringList voNames)
                                        throws RemoteException,
                                               RGMAException
Deprecated. See createOnDemandProducer(TimeInterval,URI)

Creates an on-demand producer.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
uri - The URI for the system that will respond to queries.
voNames - List of VO names to publish to.
Returns:
A new on-demand producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the URI is invalid.

createOnDemandProducer

public OnDemandProducer createOnDemandProducer(TimeInterval terminationInterval,
                                               java.net.URI uri)
                                        throws RemoteException,
                                               RGMAException
Creates an on-demand producer.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
uri - The URI for the system that will respond to queries.
Returns:
A new on-demand producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the URI is invalid.

reconnectOnDemandProducer

public OnDemandProducer reconnectOnDemandProducer(ResourceEndpoint resourceEndpoint)
                                           throws RGMAException,
                                                  RemoteException,
                                                  UnknownResourceException
Reconnects to an existing OnDemandProducer resource.

Parameters:
resourceEndpoint - Endpoint of the OnDemandProducer.
Returns:
A reference to the OnDemandProducer.
Throws:
RGMAException - If an R-GMA error occurs.
RemoteException - If the service could not be contacted.
UnknownResourceException - If the resource does not exist.

createPrimaryProducer

public PrimaryProducer createPrimaryProducer(TimeInterval terminationInterval,
                                             ProducerProperties producerProperties,
                                             StringList voNames)
                                      throws RemoteException,
                                             RGMAException
Deprecated. Use createPrimaryProducer(TimeInterval,ProducerProperties).

Creates a primary producer that uses the specified data storage and producer type.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
producerProperties - a ProducerProperties object
voNames - List of VO names to publish to.
Returns:
A new primary producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the storage location is invalid.

createPrimaryProducer

public PrimaryProducer createPrimaryProducer(TimeInterval terminationInterval,
                                             ProducerProperties producerProperties)
                                      throws RemoteException,
                                             RGMAException
Creates a primary producer that uses the specified data storage and producer type.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
producerProperties - a ProducerProperties object
Returns:
A new primary producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the storage location is invalid.

reconnectPrimaryProducer

public PrimaryProducer reconnectPrimaryProducer(ResourceEndpoint resourceEndpoint)
                                         throws RGMAException,
                                                RemoteException,
                                                UnknownResourceException
Reconnects to an existing PrimaryProducer resource.

Parameters:
resourceEndpoint - Endpoint of the PrimaryProducer.
Returns:
A reference to the PrimaryProducer.
Throws:
RGMAException - If an R-GMA error occurs.
RemoteException - If the service could not be contacted.
UnknownResourceException - If the resource does not exist.

createSecondaryProducer

public SecondaryProducer createSecondaryProducer(TimeInterval terminationInterval,
                                                 ProducerProperties producerProperties,
                                                 StringList voNames)
                                          throws RemoteException,
                                                 RGMAException
Deprecated. See createSecondaryProducer(TimeInterval,ProducerProperties).

Creates a secondary producer, that uses a primary producer with the specified attributes to republish information.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
producerProperties - a ProducerProperties object
voNames - List of VO names to publish to.
Returns:
A new secondary producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the storage location is invalid.

createSecondaryProducer

public SecondaryProducer createSecondaryProducer(TimeInterval terminationInterval,
                                                 ProducerProperties producerProperties)
                                          throws RemoteException,
                                                 RGMAException
Creates a secondary producer, that uses a primary producer with the specified attributes to republish information.

Parameters:
terminationInterval - The interval after which this Producer will be removed from the remote service if there has been no contact from the API.
producerProperties - a ProducerProperties object
Returns:
A new secondary producer.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties. If the storage location is invalid.

reconnectSecondaryProducer

public SecondaryProducer reconnectSecondaryProducer(ResourceEndpoint resourceEndpoint)
                                             throws RGMAException,
                                                    RemoteException,
                                                    UnknownResourceException
Reconnects to an existing SecondaryProducer resource.

Parameters:
resourceEndpoint - Endpoint of the SecondaryProducer.
Returns:
A reference to the SecondaryProducer.
Throws:
RGMAException - If an R-GMA error occurs.
RemoteException - If the service could not be contacted.
UnknownResourceException - If the resource does not exist.

listPrimaryTupleStores

public TupleStoreList listPrimaryTupleStores()
                                      throws RemoteException,
                                             RGMAException
Returns a list of existing tuple stores that can be used by Primary Producers.

Returns:
A TupleStoreList object.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties.
See Also:
dropPrimaryTupleStore(String)

dropPrimaryTupleStore

public void dropPrimaryTupleStore(java.lang.String logicalName)
                           throws RGMAException,
                                  RemoteException
Permanently deletes a named Primary Producer tuple store.

Parameters:
logicalName - Name of tuple store.
Throws:
RGMAException - If the store does not exist or if it is in use by a producer. If no endpointReference is defined in properties.
RemoteException - If the service could not be contacted.
See Also:
listPrimaryTupleStores()

listSecondaryTupleStores

public TupleStoreList listSecondaryTupleStores()
                                        throws RemoteException,
                                               RGMAException
Returns a list of existing tuple stores that can be used by Secondary Producers.

Returns:
A TupleStoreList object.
Throws:
RemoteException - If the service could not be contacted.
RGMAException - If no endpointReference is defined in properties.
See Also:
dropSecondaryTupleStore(String)

dropSecondaryTupleStore

public void dropSecondaryTupleStore(java.lang.String logicalName)
                             throws RGMAException,
                                    RemoteException
Permanently deletes a named Secondary Producer tuple store.

Parameters:
logicalName - Name of tuple store.
Throws:
RGMAException - If the store does not exist or if it is in use by a producer. If no endpointReference is defined in properties.
RemoteException - If the service could not be contacted.
See Also:
listSecondaryTupleStores()

getSecondaryProducerService

public Service getSecondaryProducerService()
                                    throws RGMAException
Gets a reference to the SecondaryProducer service, which can be used to get and set properties and get version.

Returns:
A Service object for the SecondaryProducer.
Throws:
RGMAException - If an invalid endpoint or no endpoint is defined in properties.
See Also:
getOnDemandProducerService(), getPrimaryProducerService()

getOnDemandProducerService

public Service getOnDemandProducerService()
                                   throws RGMAException
Gets a reference to the OnDemandProducer service, which can be used to get and set properties and get version.

Returns:
A Service object for the OnDemandProducer.
Throws:
RGMAException - If an invalid endpoint or no endpoint is defined in properties.
See Also:
getSecondaryProducerService(), getPrimaryProducerService()

getPrimaryProducerService

public Service getPrimaryProducerService()
                                  throws RGMAException
Gets a reference to the PrimaryProducer service, which can be used to get and set properties and get version.

Returns:
A Service object for the PrimaryProducer.
Throws:
RGMAException - If an invalid endpoint or no endpoint is defined in properties.
See Also:
getOnDemandProducerService(), getSecondaryProducerService()