org.ogf.graap.wsag.client.local
Class LocalAgreementFactoryClientImpl

java.lang.Object
  extended by org.ogf.graap.wsag.client.local.LocalAgreementFactoryClientImpl
All Implemented Interfaces:
AgreementFactoryClient, AgreementFactoryService, AgreementRegistryService, WsClient, WSDMResource

public class LocalAgreementFactoryClientImpl
extends Object
implements AgreementFactoryClient

An implementation of the Client API for local invocation of an agreement factory.

Author:
Oliver Waeldrich

Constructor Summary
LocalAgreementFactoryClientImpl(AgreementFactory factory)
          Creates a client for local invocation of an agreement factory.
 
Method Summary
 AgreementFactoryClient clone()
          Returns a copy of the client.
 AgreementClient createAgreement(AgreementOffer offer)
          Creates a new agreement instance with the SLA management server.
 AgreementClient createPendingAgreement(AgreementOffer offer)
          Creates a pending agreement instance.
 AgreementClient createPendingAgreement(AgreementOffer offer, EndpointReferenceType acceptanceEPR)
          Creates a pending agreement instance.
 EndpointReferenceType getEndpoint()
          Returns the endpoint of the client instance.
 Properties getProperties()
          Returns the properties used by the web-service client.
 String getResourceId()
          Returns the WSDM id of a web-service resource.
 ISecurityProperties getSecurityProperties()
          Returns the security properties used by the web-service client.
 AgreementTemplateType getTemplate(String name, String id)
          Returns a template with a particular name and id from the server, or null if the requested template does not exist.
 AgreementTemplateType[] getTemplates()
          Retrieves the templates for supported SLAs from the SLA management system.
 WsClient getWebServiceClient()
          Returns the web service client used for communication with the SLA management system.
 NegotiationClient initiateNegotiation(NegotiationContextType context)
          Initiates a new negotiation process.
 boolean isUsingTrace()
          Determines whether or not a client prints the web-service messages to the console.
 AgreementClient[] listAgreements()
          Lists the agreement instances of a particular agreement factory.
 void setProperties(Properties properties)
          Sets the properties used for the web-service client.
 void setTrace(boolean trace)
          Sets the clients trace mode.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LocalAgreementFactoryClientImpl

public LocalAgreementFactoryClientImpl(AgreementFactory factory)
Creates a client for local invocation of an agreement factory.

Parameters:
factory - the factory object
Method Detail

clone

public AgreementFactoryClient clone()
                             throws CloneNotSupportedException
Returns a copy of the client.

Specified by:
clone in interface AgreementFactoryClient
Overrides:
clone in class Object
Returns:
the cloned AgreementFactoryClient
Throws:
CloneNotSupportedException - indicates that the particular client implementation does not support cloning

getWebServiceClient

public WsClient getWebServiceClient()
Returns the web service client used for communication with the SLA management system.

Specified by:
getWebServiceClient in interface AgreementFactoryClient
Specified by:
getWebServiceClient in interface AgreementFactoryService
Specified by:
getWebServiceClient in interface AgreementRegistryService
Returns:
the web service client for this service.
See Also:
AgreementFactoryClient.getWebServiceClient()

createAgreement

public AgreementClient createAgreement(AgreementOffer offer)
                                throws AgreementFactoryException,
                                       ResourceUnknownException,
                                       ResourceUnavailableException
Creates a new agreement instance with the SLA management server.

Specified by:
createAgreement in interface AgreementFactoryService
Parameters:
offer - the agreement offer
Returns:
a client for the created agreement
Throws:
AgreementFactoryException - indicates that the agreement was rejected by the factory
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

createPendingAgreement

public AgreementClient createPendingAgreement(AgreementOffer offer)
                                       throws AgreementFactoryException,
                                              ResourceUnknownException,
                                              ResourceUnavailableException
Creates a pending agreement instance. The decision whether to accept or reject the agreement is deferred.

Specified by:
createPendingAgreement in interface AgreementFactoryService
Parameters:
offer - The agreement offer passed from the agreement initiator.
Returns:
An AgreementClient for the new created agreement.
Throws:
AgreementFactoryException - An error occurred during the the agreement creation. The agreement was rejected.
ResourceUnknownException - No pending agreement factory exists at the specified endpoint.
ResourceUnavailableException - The agreement factory at the specified endpoint is not accessible.

createPendingAgreement

public AgreementClient createPendingAgreement(AgreementOffer offer,
                                              EndpointReferenceType acceptanceEPR)
                                       throws AgreementFactoryException,
                                              ResourceUnknownException,
                                              ResourceUnavailableException
Creates a pending agreement instance. The decision whether to accept or reject the agreement is deferred. Once the decision has been made the client is notified via the given notification endpoint.

Specified by:
createPendingAgreement in interface AgreementFactoryService
Parameters:
offer - The agreement offer passed from the agreement initiator.
acceptanceEPR - An endpoint to an agreement acceptance instance.
Returns:
An AgreementClient for the new created agreement.
Throws:
AgreementFactoryException - An error occurred during the the agreement creation. The agreement was rejected.
ResourceUnknownException - No pending agreement factory exists at the specified endpoint.
ResourceUnavailableException - The agreement factory at the specified endpoint is not accessible.

initiateNegotiation

public NegotiationClient initiateNegotiation(NegotiationContextType context)
                                      throws NegotiationFactoryException,
                                             ResourceUnknownException,
                                             ResourceUnavailableException
Initiates a new negotiation process.

Specified by:
initiateNegotiation in interface AgreementFactoryService
Parameters:
context - the context for the negotiation to initialize
Returns:
the new initiated negotiation instance
Throws:
NegotiationFactoryException - indicates that the creation of a negotiation process was rejected
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

getEndpoint

public EndpointReferenceType getEndpoint()
Returns the endpoint of the client instance.

Specified by:
getEndpoint in interface WsClient
Returns:
Returns the endpoint reference for this WS resource.

getProperties

public Properties getProperties()
Returns the properties used by the web-service client.

Specified by:
getProperties in interface WsClient
Returns:
a list of properties associated with the client

getResourceId

public String getResourceId()
                     throws ResourceUnknownException,
                            ResourceUnavailableException
Returns the WSDM id of a web-service resource.

Specified by:
getResourceId in interface WSDMResource
Returns:
the WSDM resource id
Throws:
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

getSecurityProperties

public ISecurityProperties getSecurityProperties()
Returns the security properties used by the web-service client.

Specified by:
getSecurityProperties in interface WsClient
Returns:
the security properties for this client

getTemplate

public AgreementTemplateType getTemplate(String name,
                                         String id)
                                  throws ResourceUnknownException,
                                         ResourceUnavailableException
Returns a template with a particular name and id from the server, or null if the requested template does not exist.

Specified by:
getTemplate in interface AgreementFactoryClient
Parameters:
name - the name of the requested template
id - the id of the requested template
Returns:
a template with the given name and id, or null if no appropriate template was found.
Throws:
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

getTemplates

public AgreementTemplateType[] getTemplates()
                                     throws ResourceUnknownException,
                                            ResourceUnavailableException
Retrieves the templates for supported SLAs from the SLA management system.

Specified by:
getTemplates in interface AgreementFactoryService
Returns:
all templates exposed by this agreement factory instance
Throws:
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

isUsingTrace

public boolean isUsingTrace()
Determines whether or not a client prints the web-service messages to the console.

Specified by:
isUsingTrace in interface WsClient
Returns:
true, if the web service client traces the incoming/outgoing messages.

listAgreements

public AgreementClient[] listAgreements()
                                 throws ResourceUnknownException,
                                        ResourceUnavailableException
Lists the agreement instances of a particular agreement factory.

Specified by:
listAgreements in interface AgreementRegistryService
Returns:
a set of registered agreements
Throws:
ResourceUnknownException - the remote resource is unknown
ResourceUnavailableException - the remote resource is unavailable

setProperties

public void setProperties(Properties properties)
Sets the properties used for the web-service client.

Specified by:
setProperties in interface WsClient
Parameters:
properties - Sets the properties for this client

setTrace

public void setTrace(boolean trace)
Sets the clients trace mode.

Specified by:
setTrace in interface WsClient
Parameters:
trace - true, if the web service client should traces incoming/outgoing messages.


Copyright © 2008-2012 Fraunhofer Institute SCAI. All Rights Reserved.