org.gcube.contentmanagement.storagelayer.storagemanagementservice.impl
Class SMSPortType1

java.lang.Object
  extended by GCUBEPortType
      extended by org.gcube.contentmanagement.storagelayer.storagemanagementservice.impl.SMSPortType1

public class SMSPortType1
extends GCUBEPortType

WSRF interface to the storage management library All actual work is performed by the static methods of StorageManager


Field Summary
static java.lang.String ERROR_ELEMENTNAME
           
static java.lang.String ERROR_RETRY_EQUIVALENT
           
static java.lang.String ERROR_RETRY_SAME
           
static java.lang.String ERROR_UNRECOVERABLE
           
static BasicStorageHints NO_REFRENCES
          Singleton instance of an array of storage hints that identifies, only the limited information about an info object should be returned.
static java.lang.String REQUEST_FAILED_NAME
          constants
static java.lang.String SUBSYSTEM_RS
           
 
Constructor Summary
SMSPortType1()
           
 
Method Summary
 VoidType addReference(ReferenceDescription ref)
          Adds a new reference between two information objects.
 ArrayOfBulkReferenceResultItem addReferences(ArrayOfReferenceDescription parameters)
           
 java.lang.String addReferencesRS(java.lang.String parameters)
           
 VoidType associateRawContent(FileTransferParameters params)
          Gets the file from the defined location and stores it as the raw content of a information object.
 java.lang.String createInfoObject(NameAndType parameters)
          Creates a new information object
 ArrayOfInfoOIDAndHints createInfoObjectsWithContent(ArrayOfCreateInfoObjectReferencesProperties parameters)
           
 java.lang.String createInfoObjectsWithContentRS(java.lang.String parameters)
           
 InfoObjectIDAndConsumedHints createInfoObjectWithContent(CreateInfoObjectReferencesProperties parameters)
          Creates an information object with content, properties, relationships etc.
 boolean existsInfoObject(java.lang.String parameters)
           
 InfoObjectDescription getInfoObject(FileTransferParameters params)
          Retrieves an existing information object and associated data
 ArrayOfInfoObjectDescription getInfoObjects(ArrayOfFileTransferParameters parameters)
           
 java.lang.String getInfoObjectsRS(java.lang.String parameters)
           
 VolatileInformation getVolatileInformation(GetVolatileInformationParameters parameters)
          Returns the (maybe very volatile) inforamtion about an information object and its references.
 boolean hasRawContent(java.lang.String objectID)
          Returns whether there exists raw content associated with an information object
 boolean hasStorageProperty(PropertySelector parameters)
          Returnes whether an information object has a particular property set
 void internalAddReference(ReferenceDescription ref)
           
 StorageHint[] iternalAssociateRawContent(FileTransferParameters params)
           
 java.lang.String processInBackground(java.lang.String inputResultSetEPR, org.gcube.contentmanagement.storagelayer.storagemanagementservice.impl.SMSPortType1.Processor processor)
           
 boolean removeInfoObject(java.lang.String objectID)
          Deletes an information object.
 boolean removeInfoObjectAsync(java.lang.String objectID)
          Deletes an information object asynchronously.
 ArrayOfFailedObjects removeInfoObjects(ArrayOfString parameters)
           
 java.lang.String removeInfoObjectsRS(java.lang.String parameters)
           
 boolean removeRawContent(java.lang.String objectID)
          Removes any raw content associated with the information object
 boolean removeReference(ReferenceSelector selector)
          Deletes any reference with having the given parameters.
 ArrayOfBulkReferenceResultItem removeReferences(ArrayOfReferenceSelector parameters)
           
 java.lang.String removeReferencesRS(java.lang.String parameters)
           
 ArrayOfInfoObjectDescription retrieveObjectsHavingAllStorageProperties(ArrayOfByPropertyValueSelector parameters)
          Retrieves all info object which have all properties with given name and value TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in asingle query to RDBMS)
 ArrayOfInfoObjectDescription retrieveObjectsInRelationWithAll(ArrayOfFlexibleReferenceSelector parameters)
           
 ArrayOfString retrieveOIDInRelationWithAll(ArrayOfFlexibleReferenceSelector parameters)
          Retrieves all object IDs of information object which are related to all objects defined by the flexible refernce selectors TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in a single query to RDBMS)
 ArrayOfString retrieveOIDsByStorageProperty(ByPropertyValueSelector selector)
          Retrieves all object IDs of information object for which a particular property value has been set
 ArrayOfString retrieveOIDsHavingAllStorageProperties(ArrayOfByPropertyValueSelector parameters)
          Retrieves all object IDs of information object which have all properties with given name and value TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in a single query to RDBMS)
 ArrayOfReferenceDescription retrieveReferences(SourceReferenceSelector sourceSelector)
          Retrieves all references which point from this source object to some other object.
 ArrayOfBulkReferenceResultItem retrieveReferencesBulk(ArrayOfSourceReferenceSelector parameters)
           
 ArrayOfString retrieveReferenceTargetOIDs(SourceReferenceSelector sourceSelector)
          Retrieves target object IDs to which a particular reference from some other object exists.
 ArrayOfSourceReferenceResultItem retrieveReferenceTargetOIDsBulk(ArrayOfSourceReferenceSelector parameters)
           
 ArrayOfReferenceDescription retrieveReferredAll(TargetReferenceSelector targetSelector)
          Retrieves all references which point to this target object.
 ArrayOfString retrieveReferredSourceOIDs(TargetReferenceSelector targetSelector)
          Retrieves source object IDs from which a particular reference to some other object exists.
 ArrayOfTargetReferenceResultItem retrieveReferredSourceOIDsBulk(ArrayOfTargetReferenceSelector parameters)
           
 ArrayOfPropertyDescription retrieveStorageProperties(java.lang.String objectID)
          Retrieves all properties of an information object
 PropertyDescription retrieveStorageProperty(PropertySelector selector)
          Retrieves a particular property of an information object
 VoidType setStorageProperty(PropertyDescription prop)
          Sets the property of a given name for a particular information object.
 boolean unsetStorageProperty(PropertySelector selector)
          Removes a property of an information object
 VoidType updateRawContent(FileTransferParameters params)
          Gets the file from the defined location and stores it as the raw content of a information object.
 ArrayOfInfoOIDAndHints updateRawContentBulk(ArrayOfFileTransferParameters parameters)
           
 java.lang.String updateRawContentRS(java.lang.String parameters)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REQUEST_FAILED_NAME

public static final java.lang.String REQUEST_FAILED_NAME
constants


ERROR_ELEMENTNAME

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

ERROR_RETRY_SAME

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

ERROR_RETRY_EQUIVALENT

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

ERROR_UNRECOVERABLE

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

SUBSYSTEM_RS

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

NO_REFRENCES

public static final BasicStorageHints NO_REFRENCES
Singleton instance of an array of storage hints that identifies, only the limited information about an info object should be returned. This means in particular no references.

See Also:
BasicStorageHints#HINT_NAME_RETURN_OBJECT_WITHOUT_REFERENCES
Constructor Detail

SMSPortType1

public SMSPortType1()
Method Detail

createInfoObject

public java.lang.String createInfoObject(NameAndType parameters)
                                  throws GCUBEUnrecoverableValueNotValidFault,
                                         GCUBERetrySameIOFault,
                                         GCUBERetryEquivalentIOFault,
                                         GCUBEUnrecoverableIOFault
Creates a new information object

Parameters:
TEST_OBJECT_NAME - a human readable name (does not need to be unique, can also be null)
TEST_OBJECT_TYPE - the type of the information object
Returns:
the object ID of the new information object
Throws:
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

createInfoObjectWithContent

public InfoObjectIDAndConsumedHints createInfoObjectWithContent(CreateInfoObjectReferencesProperties parameters)
                                                         throws GCUBEUnrecoverableObjectNotFoundFault,
                                                                GCUBEUnrecoverableValueNotValidFault,
                                                                GCUBERetrySameIOFault,
                                                                GCUBERetryEquivalentIOFault,
                                                                GCUBEUnrecoverableIOFault
Creates an information object with content, properties, relationships etc.

Parameters:
parameters - the parameters for this
Returns:
the new ID and the used hints
Throws:
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault, - GCUBERetryEquivalentIOFault, GCUBEUnrecoverableIOFault
GCUBEUnrecoverableObjectNotFoundFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

createInfoObjectsWithContent

public ArrayOfInfoOIDAndHints createInfoObjectsWithContent(ArrayOfCreateInfoObjectReferencesProperties parameters)
                                                    throws GCUBEUnrecoverableValueNotValidFault,
                                                           GCUBERetrySameIOFault,
                                                           GCUBERetryEquivalentIOFault,
                                                           GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

createInfoObjectsWithContentRS

public java.lang.String createInfoObjectsWithContentRS(java.lang.String parameters)
                                                throws GCUBERetrySameIOFault,
                                                       GCUBERetryEquivalentIOFault,
                                                       GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeInfoObject

public boolean removeInfoObject(java.lang.String objectID)
                         throws GCUBERetrySameIOFault,
                                GCUBERetryEquivalentIOFault,
                                GCUBEUnrecoverableIOFault
Deletes an information object. This will trigger propagation of deletions if corresponding relations exist.

Parameters:
objectID - the object ID of the object that should be deleted
Returns:
whether the object did exist (and therefore the operation had an effect) or not.
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeInfoObjectAsync

public boolean removeInfoObjectAsync(java.lang.String objectID)
                              throws GCUBERetrySameIOFault,
                                     GCUBERetryEquivalentIOFault,
                                     GCUBEUnrecoverableIOFault
Deletes an information object asynchronously. This will trigger propagation of deletions if corresponding relations exist. WARNING: Since Storage Management Service is implemented as a stateless webservice, this asynchronous deletion has no possibility of signalling any exception that happened during the execution of this operation in background.

Parameters:
objectID - the object ID of the object that should be deleted
Returns:
whether the object did exist (and therefore the operation had an effect) or not.
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeInfoObjects

public ArrayOfFailedObjects removeInfoObjects(ArrayOfString parameters)
                                       throws GCUBERetrySameIOFault,
                                              GCUBERetryEquivalentIOFault,
                                              GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeInfoObjectsRS

public java.lang.String removeInfoObjectsRS(java.lang.String parameters)
                                     throws GCUBERetrySameIOFault,
                                            GCUBERetryEquivalentIOFault,
                                            GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

getInfoObject

public InfoObjectDescription getInfoObject(FileTransferParameters params)
                                    throws GCUBEUnrecoverableObjectNotFoundFault,
                                           GCUBEUnrecoverableValueNotValidFault,
                                           GCUBERetrySameIOFault,
                                           GCUBERetryEquivalentIOFault,
                                           GCUBEUnrecoverableIOFault
Retrieves an existing information object and associated data

Parameters:
objectID - the object ID of the object that should be deleted
targetFileLocation - a URI where raw content should be transferred (if present), use DO_NOT_TRANFER_RAW_CONTENT if raw content is not wanted
storageHints - recommandation, how a source should be selected (if several are availble)
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

getInfoObjects

public ArrayOfInfoObjectDescription getInfoObjects(ArrayOfFileTransferParameters parameters)
                                            throws GCUBEUnrecoverableObjectNotFoundFault,
                                                   GCUBEUnrecoverableValueNotValidFault,
                                                   GCUBERetrySameIOFault,
                                                   GCUBERetryEquivalentIOFault,
                                                   GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

getInfoObjectsRS

public java.lang.String getInfoObjectsRS(java.lang.String parameters)
                                  throws GCUBERetrySameIOFault,
                                         GCUBERetryEquivalentIOFault,
                                         GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

associateRawContent

public VoidType associateRawContent(FileTransferParameters params)
                             throws GCUBEUnrecoverableObjectNotFoundFault,
                                    GCUBEUnrecoverableValueNotValidFault,
                                    GCUBERetrySameIOFault,
                                    GCUBERetryEquivalentIOFault,
                                    GCUBEUnrecoverableIOFault
Gets the file from the defined location and stores it as the raw content of a information object.

Parameters:
objectID - the id of the information object, to which the file should be associated
fileLocation - the location from which the file can be retrieved
storageHints - recommendation, how the this file should be stored
Throws:
java.rmi.RemoteException
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

iternalAssociateRawContent

public StorageHint[] iternalAssociateRawContent(FileTransferParameters params)
                                         throws StorageLayerException,
                                                InvalidHintException
Throws:
StorageLayerException
InvalidHintException

updateRawContent

public VoidType updateRawContent(FileTransferParameters params)
                          throws GCUBEUnrecoverableObjectNotFoundFault,
                                 GCUBEUnrecoverableValueNotValidFault,
                                 GCUBERetrySameIOFault,
                                 GCUBERetryEquivalentIOFault,
                                 GCUBEUnrecoverableIOFault
Gets the file from the defined location and stores it as the raw content of a information object. Any possibly pre-existing content associated with the object will be invalidated.

Parameters:
objectID - the id of the information object, to which the file should be associated
fileLocation - the location from which the file can be retrieved
storageHints - recommendation, how the this file should be stored
Throws:
java.rmi.RemoteException
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

updateRawContentBulk

public ArrayOfInfoOIDAndHints updateRawContentBulk(ArrayOfFileTransferParameters parameters)
                                            throws GCUBEUnrecoverableObjectNotFoundFault,
                                                   GCUBEUnrecoverableValueNotValidFault,
                                                   GCUBERetrySameIOFault,
                                                   GCUBERetryEquivalentIOFault,
                                                   GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

updateRawContentRS

public java.lang.String updateRawContentRS(java.lang.String parameters)
                                    throws GCUBERetrySameIOFault,
                                           GCUBERetryEquivalentIOFault,
                                           GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeRawContent

public boolean removeRawContent(java.lang.String objectID)
                         throws GCUBEUnrecoverableObjectNotFoundFault,
                                GCUBEUnrecoverableValueNotValidFault,
                                GCUBERetrySameIOFault,
                                GCUBERetryEquivalentIOFault,
                                GCUBEUnrecoverableIOFault
Removes any raw content associated with the information object

Parameters:
objectID - the id of the information object
Throws:
java.rmi.RemoteException
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

addReference

public VoidType addReference(ReferenceDescription ref)
                      throws GCUBEUnrecoverableObjectNotFoundFault,
                             GCUBEUnrecoverableValueNotValidFault,
                             GCUBERetrySameIOFault,
                             GCUBERetryEquivalentIOFault,
                             GCUBEUnrecoverableIOFault
Adds a new reference between two information objects. A reference is always directed and can define propagation rules for deletion of items.

Parameters:
sourceObjectID - the object ID of the starting information object of the relation
targetObjectID - the object Id of the referenced information object
role - the role of the information object (sourceObject) with respect to this reference
position - an attribute to allow for position preserving representation, set to ReferenceDescription.UNDEFINED_POSITION if not in use.
propagationRule - rule for propagation of deletion.
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault
See Also:
org.gcube.contentmanagement.layerindependent.descriptions.ReferenceDescription

internalAddReference

public void internalAddReference(ReferenceDescription ref)
                          throws StorageLayerException
Throws:
StorageLayerException

addReferences

public ArrayOfBulkReferenceResultItem addReferences(ArrayOfReferenceDescription parameters)
                                             throws GCUBEUnrecoverableObjectNotFoundFault,
                                                    GCUBEUnrecoverableValueNotValidFault,
                                                    GCUBERetrySameIOFault,
                                                    GCUBERetryEquivalentIOFault,
                                                    GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

addReferencesRS

public java.lang.String addReferencesRS(java.lang.String parameters)
                                 throws GCUBERetrySameIOFault,
                                        GCUBERetryEquivalentIOFault,
                                        GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeReference

public boolean removeReference(ReferenceSelector selector)
                        throws GCUBEUnrecoverableObjectNotFoundFault,
                               GCUBEUnrecoverableValueNotValidFault,
                               GCUBERetrySameIOFault,
                               GCUBERetryEquivalentIOFault,
                               GCUBEUnrecoverableIOFault
Deletes any reference with having the given parameters.

Parameters:
sourceObjectID - the object ID of the starting information object of the relation
targetObjectID - the object Id of the referenced information object
role - the role of the information object (sourceoid) with respect this reference. Can be set to ReferenceDescription.ANY_ROLE to match all possible values of role.
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeReferences

public ArrayOfBulkReferenceResultItem removeReferences(ArrayOfReferenceSelector parameters)
                                                throws GCUBEUnrecoverableObjectNotFoundFault,
                                                       GCUBEUnrecoverableValueNotValidFault,
                                                       GCUBERetrySameIOFault,
                                                       GCUBERetryEquivalentIOFault,
                                                       GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

removeReferencesRS

public java.lang.String removeReferencesRS(java.lang.String parameters)
                                    throws GCUBERetrySameIOFault,
                                           GCUBERetryEquivalentIOFault,
                                           GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferences

public ArrayOfReferenceDescription retrieveReferences(SourceReferenceSelector sourceSelector)
                                               throws GCUBEUnrecoverableObjectNotFoundFault,
                                                      GCUBEUnrecoverableValueNotValidFault,
                                                      GCUBERetrySameIOFault,
                                                      GCUBERetryEquivalentIOFault,
                                                      GCUBEUnrecoverableIOFault
Retrieves all references which point from this source object to some other object.

Parameters:
sourceObjectID - the object ID of the starting information object of the relation
role - the role of the information object (sourceoid) with respect this reference. Can be set to ReferenceDescription.ANY_ROLE to match all possible values of role.
Returns:
an array of ReferenceDescription representing all references
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferencesBulk

public ArrayOfBulkReferenceResultItem retrieveReferencesBulk(ArrayOfSourceReferenceSelector parameters)
                                                      throws GCUBEUnrecoverableObjectNotFoundFault,
                                                             GCUBEUnrecoverableValueNotValidFault,
                                                             GCUBERetrySameIOFault,
                                                             GCUBERetryEquivalentIOFault,
                                                             GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferenceTargetOIDs

public ArrayOfString retrieveReferenceTargetOIDs(SourceReferenceSelector sourceSelector)
                                          throws GCUBEUnrecoverableObjectNotFoundFault,
                                                 GCUBEUnrecoverableValueNotValidFault,
                                                 GCUBERetrySameIOFault,
                                                 GCUBERetryEquivalentIOFault,
                                                 GCUBEUnrecoverableIOFault
Retrieves target object IDs to which a particular reference from some other object exists.

Parameters:
sourceObjectID - the object ID of the starting information object of the relation
role - the role of the information object (sourceoid) with respect this reference. Can be set to ReferenceDescription.ANY_ROLE to match all possible values of role.
Returns:
an array of ReferenceDescription representing all references
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferenceTargetOIDsBulk

public ArrayOfSourceReferenceResultItem retrieveReferenceTargetOIDsBulk(ArrayOfSourceReferenceSelector parameters)
                                                                 throws GCUBEUnrecoverableObjectNotFoundFault,
                                                                        GCUBEUnrecoverableValueNotValidFault,
                                                                        GCUBERetrySameIOFault,
                                                                        GCUBERetryEquivalentIOFault,
                                                                        GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferredSourceOIDs

public ArrayOfString retrieveReferredSourceOIDs(TargetReferenceSelector targetSelector)
                                         throws GCUBEUnrecoverableObjectNotFoundFault,
                                                GCUBEUnrecoverableValueNotValidFault,
                                                GCUBERetrySameIOFault,
                                                GCUBERetryEquivalentIOFault,
                                                GCUBEUnrecoverableIOFault
Retrieves source object IDs from which a particular reference to some other object exists.

Parameters:
targetObjectID - the object ID to which the information object is related
role - the role of the information object (sourceoid) with respect this reference. Can be set to ReferenceDescription.ANY_ROLE to match all possible values of role.
Returns:
an array of ReferenceDescription representing all references
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferredSourceOIDsBulk

public ArrayOfTargetReferenceResultItem retrieveReferredSourceOIDsBulk(ArrayOfTargetReferenceSelector parameters)
                                                                throws GCUBEUnrecoverableObjectNotFoundFault,
                                                                       GCUBEUnrecoverableValueNotValidFault,
                                                                       GCUBERetrySameIOFault,
                                                                       GCUBERetryEquivalentIOFault,
                                                                       GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveReferredAll

public ArrayOfReferenceDescription retrieveReferredAll(TargetReferenceSelector targetSelector)
                                                throws GCUBEUnrecoverableObjectNotFoundFault,
                                                       GCUBEUnrecoverableValueNotValidFault,
                                                       GCUBERetrySameIOFault,
                                                       GCUBERetryEquivalentIOFault,
                                                       GCUBEUnrecoverableIOFault
Retrieves all references which point to this target object.

Parameters:
targetObjectID - the object Id of the referenced information object
role - the role of the information object (sourceoid) with respect this reference. Can be set to ReferenceDescription.ANY_ROLE to match all possible values of role.
Returns:
an array of ReferenceDescription representing all references
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveOIDInRelationWithAll

public ArrayOfString retrieveOIDInRelationWithAll(ArrayOfFlexibleReferenceSelector parameters)
                                           throws GCUBEUnrecoverableObjectNotFoundFault,
                                                  GCUBEUnrecoverableValueNotValidFault,
                                                  GCUBERetrySameIOFault,
                                                  GCUBERetryEquivalentIOFault,
                                                  GCUBEUnrecoverableIOFault
Retrieves all object IDs of information object which are related to all objects defined by the flexible refernce selectors TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in a single query to RDBMS)

Parameters:
parameters - the names and values of the properties
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveObjectsInRelationWithAll

public ArrayOfInfoObjectDescription retrieveObjectsInRelationWithAll(ArrayOfFlexibleReferenceSelector parameters)
                                                              throws GCUBEUnrecoverableObjectNotFoundFault,
                                                                     GCUBEUnrecoverableValueNotValidFault,
                                                                     GCUBERetrySameIOFault,
                                                                     GCUBERetryEquivalentIOFault,
                                                                     GCUBEUnrecoverableIOFault
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

setStorageProperty

public VoidType setStorageProperty(PropertyDescription prop)
                            throws GCUBEUnrecoverableObjectNotFoundFault,
                                   GCUBEUnrecoverableValueNotValidFault,
                                   GCUBERetrySameIOFault,
                                   GCUBERetryEquivalentIOFault,
                                   GCUBEUnrecoverableIOFault
Sets the property of a given name for a particular information object.

If this property already exists, it will be updated. If not, it will be added with the given values.

Parameters:
objectID - the object ID of the information object
TEST_OBJECT_NAME - the name of the property (use prefixes, e.g. namespace prefixes to disambiguate)
TEST_OBJECT_TYPE - the type of the value of this property
value - the value of the property
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

unsetStorageProperty

public boolean unsetStorageProperty(PropertySelector selector)
                             throws GCUBEUnrecoverableObjectNotFoundFault,
                                    GCUBEUnrecoverableValueNotValidFault,
                                    GCUBERetrySameIOFault,
                                    GCUBERetryEquivalentIOFault,
                                    GCUBEUnrecoverableIOFault
Removes a property of an information object

Parameters:
objectID - the object ID of the information object
TEST_OBJECT_NAME - the name of the property
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveStorageProperty

public PropertyDescription retrieveStorageProperty(PropertySelector selector)
                                            throws GCUBEUnrecoverableObjectNotFoundFault,
                                                   GCUBEUnrecoverableValueNotValidFault,
                                                   GCUBERetrySameIOFault,
                                                   GCUBERetryEquivalentIOFault,
                                                   GCUBEUnrecoverableIOFault
Retrieves a particular property of an information object

Parameters:
objectID - the object ID of the information object
TEST_OBJECT_NAME - the name of the property
Returns:
a PropertyDescription of the defined property
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveStorageProperties

public ArrayOfPropertyDescription retrieveStorageProperties(java.lang.String objectID)
                                                     throws GCUBEUnrecoverableObjectNotFoundFault,
                                                            GCUBEUnrecoverableValueNotValidFault,
                                                            GCUBERetrySameIOFault,
                                                            GCUBERetryEquivalentIOFault,
                                                            GCUBEUnrecoverableIOFault
Retrieves all properties of an information object

Parameters:
objectID - the object ID of the information object
Returns:
an array of PropertyDescription representing all properties
Throws:
BaseLayerException
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveOIDsByStorageProperty

public ArrayOfString retrieveOIDsByStorageProperty(ByPropertyValueSelector selector)
                                            throws GCUBEUnrecoverableObjectNotFoundFault,
                                                   GCUBEUnrecoverableValueNotValidFault,
                                                   GCUBERetrySameIOFault,
                                                   GCUBERetryEquivalentIOFault,
                                                   GCUBEUnrecoverableIOFault
Retrieves all object IDs of information object for which a particular property value has been set

Parameters:
TEST_OBJECT_NAME - the name of the property
value - the value of the property
Returns:
an array of object OIDs
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveOIDsHavingAllStorageProperties

public ArrayOfString retrieveOIDsHavingAllStorageProperties(ArrayOfByPropertyValueSelector parameters)
                                                     throws GCUBEUnrecoverableObjectNotFoundFault,
                                                            GCUBEUnrecoverableValueNotValidFault,
                                                            GCUBERetrySameIOFault,
                                                            GCUBERetryEquivalentIOFault,
                                                            GCUBEUnrecoverableIOFault
Retrieves all object IDs of information object which have all properties with given name and value TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in a single query to RDBMS)

Parameters:
parameters - the names and values of the properties
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

retrieveObjectsHavingAllStorageProperties

public ArrayOfInfoObjectDescription retrieveObjectsHavingAllStorageProperties(ArrayOfByPropertyValueSelector parameters)
                                                                       throws GCUBEUnrecoverableObjectNotFoundFault,
                                                                              GCUBEUnrecoverableValueNotValidFault,
                                                                              GCUBERetrySameIOFault,
                                                                              GCUBERetryEquivalentIOFault,
                                                                              GCUBEUnrecoverableIOFault
Retrieves all info object which have all properties with given name and value TODO: Replace this interim solution with more generic solution that can be much more efficiently evaluated in BaseLayer (in particular in asingle query to RDBMS)

Parameters:
parameters - the names and values of the properties
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

hasStorageProperty

public boolean hasStorageProperty(PropertySelector parameters)
                           throws GCUBEUnrecoverableObjectNotFoundFault,
                                  GCUBEUnrecoverableValueNotValidFault,
                                  GCUBERetrySameIOFault,
                                  GCUBERetryEquivalentIOFault,
                                  GCUBEUnrecoverableIOFault
Returnes whether an information object has a particular property set

Parameters:
oid - the object ID of the information object
TEST_OBJECT_NAME - the name of the property
Returns:
true, if the property is set
Throws:
ObjectNotFoundException - if the OID is invalid
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

hasRawContent

public boolean hasRawContent(java.lang.String objectID)
                      throws GCUBEUnrecoverableObjectNotFoundFault,
                             GCUBEUnrecoverableValueNotValidFault,
                             GCUBERetrySameIOFault,
                             GCUBERetryEquivalentIOFault,
                             GCUBEUnrecoverableIOFault
Returns whether there exists raw content associated with an information object

Parameters:
objectID - the object ID of the information object
Returns:
true, if there is raw content; false otherwise
Throws:
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

getVolatileInformation

public VolatileInformation getVolatileInformation(GetVolatileInformationParameters parameters)
                                           throws GCUBEUnrecoverableObjectNotFoundFault,
                                                  GCUBEUnrecoverableValueNotValidFault,
                                                  GCUBERetrySameIOFault,
                                                  GCUBERetryEquivalentIOFault,
                                                  GCUBEUnrecoverableIOFault
Returns the (maybe very volatile) inforamtion about an information object and its references.

Parameters:
parameters - the parameters including the OID and the type of references.
Returns:
the current state of the information object. May change very shortly in case of batch updates of an object / adding of references.
Throws:
java.rmi.RemoteException
GCUBEUnrecoverableObjectNotFoundFault
GCUBEUnrecoverableValueNotValidFault
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

existsInfoObject

public boolean existsInfoObject(java.lang.String parameters)
                         throws GCUBERetrySameIOFault,
                                GCUBERetryEquivalentIOFault,
                                GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault

processInBackground

public java.lang.String processInBackground(java.lang.String inputResultSetEPR,
                                            org.gcube.contentmanagement.storagelayer.storagemanagementservice.impl.SMSPortType1.Processor processor)
                                     throws GCUBERetrySameIOFault,
                                            GCUBERetryEquivalentIOFault,
                                            GCUBEUnrecoverableIOFault
Throws:
GCUBERetrySameIOFault
GCUBERetryEquivalentIOFault
GCUBEUnrecoverableIOFault