uk.org.ogsadai.dataresource
Class TestDataResourceAccessor

java.lang.Object
  |
  +--uk.org.ogsadai.dataresource.TestDataResourceAccessor
All Implemented Interfaces:
DataResourceAccessor, PersistInFiles, ResourceListener

public class TestDataResourceAccessor
extends java.lang.Object
implements DataResourceAccessor, PersistInFiles, ResourceListener

A data resource accessor for testing and demonstration purposes.

It creates a session-specific resource property when it receives a "session created" event and removes the property again when it receives a "session terminated" event.

Author:
The OGSA-DAI Project Team

Field Summary
private static?java.lang.String COPYRIGHT_NOTICE
???????????
?
Constructor Summary
TestDataResourceAccessor()
???????????
?
Method Summary
?Property[] getProperties()
??????????Gets the resource properties associated with the data resource accessor.
static?javax.xml.namespace.QName getPropertyName(SessionID?sid)
??????????Generates and returns the session-specific property name used for the test.
?void restoreFromConfig(java.io.File?directory)
??????????Configures the data resource accessor by reading any relevant configuration files in the given directory.
?void sessionCreated(ResourceEvent?event)
??????????Invoked when a new session is created that is associated with this data resource accessor.
?void sessionTerminated(ResourceEvent?event)
??????????Invoked when a session that is associated with this data resource accessor has been terminated.
?void setResourceName(java.lang.String?resourceName)
??????????Sets the name of the resource.
?
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
?

Field Detail

COPYRIGHT_NOTICE

private static final java.lang.String COPYRIGHT_NOTICE
See Also:
Constant Field Values
Constructor Detail

TestDataResourceAccessor

public TestDataResourceAccessor()
Method Detail

setResourceName

public void setResourceName(java.lang.String?resourceName)
Description copied from interface: DataResourceAccessor
Sets the name of the resource. This method will be called one before any other methods in this interface are called. Data resource accessors are not required to do anything with this name although it is sometimes useful to include it in any error messages.

Specified by:
setResourceName in interface DataResourceAccessor
Parameters:
resourceName - Name of the data service resource which will use this data resource accessor to mediate access to a data resource.

restoreFromConfig

public void restoreFromConfig(java.io.File?directory)
                       throws DataResourceAccessorConfigException,
                              DataResourceAccessorMetaDataException,
                              DataResourceAccessorSetupException,
                              java.lang.IllegalArgumentException
Description copied from interface: PersistInFiles
Configures the data resource accessor by reading any relevant configuration files in the given directory.

If a data service resource is being constructed by reading from a configuration file this method will be called once immediately after the setName method is called. The data resource accessor should read its configuration from the files in the given directory of the data service resource which uses it.

Data resource accessors are free to add, amend or delete files in the given directory at any time throughout their lifetime. The exception to this rule is the dataResourceClassConfig.xml file which must be left unaltered since this specifies the data resource accessor class name.

Specified by:
restoreFromConfig in interface PersistInFiles
Parameters:
directory - Directory containing the data service resource configuration files. This includes the data resource accessor configuration files.
Throws:
java.lang.IllegalArgumentException - if the directory argument is null or is not a directory.
DataResourceAccessorSetupException - if an error occurs when setting up the data resource accessor after having read the configuration files.
DataResourceAccessorConfigException - if an error occurs reading the configuration files.
DataResourceAccessorMetaDataException - if an error occurs when constructing data resource accessor meta data properties.

getProperties

public Property[] getProperties()
Description copied from interface: DataResourceAccessor
Gets the resource properties associated with the data resource accessor. These are made available as properties of the data service resource to which the data resource accessor belongs.

This method should be called once after the readConfig method has been called but before any other methods are called.

Specified by:
getProperties in interface DataResourceAccessor
Returns:
The resource proporties. If there are no resource properties then a zero-sized array will be returned.

sessionCreated

public void sessionCreated(ResourceEvent?event)
Description copied from interface: ResourceListener
Invoked when a new session is created that is associated with this data resource accessor.

Specified by:
sessionCreated in interface ResourceListener
Parameters:
event - describes the details of the event.

sessionTerminated

public void sessionTerminated(ResourceEvent?event)
Description copied from interface: ResourceListener
Invoked when a session that is associated with this data resource accessor has been terminated. This is invoked after the session manager has received its terminatation call but before the session has actually been cleaned up, so an implementation may still interact with the session.

Specified by:
sessionTerminated in interface ResourceListener
Parameters:
event - describes the details of the event.

getPropertyName

public static javax.xml.namespace.QName getPropertyName(SessionID?sid)
Generates and returns the session-specific property name used for the test.

Publicly accessible so that it can also be used by tests.

Parameters:
sid - The session ID
Returns:
a session-specific property with local part sid + TestProperty.