org.edg.data.reptor.storage
Interface StorageResource

All Known Implementing Classes:
StorageResourceGridFTPImpl, StorageResourceSEImpl, StorageResourceSRMImpl

public interface StorageResource

Storage Resource interface

Version:
$Id: StorageResource.java,v 1.19 2004/05/13 14:23:06 jamesc Exp $
Author:
Peter Kunszt

Method Summary
 java.net.URI generateSURL(java.lang.String storagePath)
          generate a SURL on this StorageResource.
 java.rmi.Remote getEndpoint()
          Return the SOAP endpoint for this Storage Resource.
 FileInfo getFileInfo(java.net.URI file)
           
 StorageElementInfo getInfo()
           
 SRMRequestStatus getRequestStatus(java.lang.String requestId)
           
 boolean isValidSurl(java.net.URI surl)
          Is a surl valid for a given Storage Resource.
 SRMRequestStatus prepareToGet(java.net.URI surl, java.lang.String protocol)
           
 SRMRequestStatus prepareToPut(java.net.URI surl, long size, java.lang.String protocol)
           
 void putActive(SRMRequestStatus request)
           
 void putDone(SRMRequestStatus request)
           
 

Method Detail

getFileInfo

public FileInfo getFileInfo(java.net.URI file)
                     throws InfoServiceException,
                            java.io.FileNotFoundException,
                            StorageResourceException
Throws:
InfoServiceException
java.io.FileNotFoundException
StorageResourceException

prepareToGet

public SRMRequestStatus prepareToGet(java.net.URI surl,
                                     java.lang.String protocol)
                              throws StorageResourceException,
                                     UnknownProtocolException
Throws:
StorageResourceException
UnknownProtocolException

prepareToPut

public SRMRequestStatus prepareToPut(java.net.URI surl,
                                     long size,
                                     java.lang.String protocol)
                              throws StorageResourceException,
                                     UnknownProtocolException
Throws:
StorageResourceException
UnknownProtocolException

putDone

public void putDone(SRMRequestStatus request)
             throws StorageResourceException
Throws:
StorageResourceException

putActive

public void putActive(SRMRequestStatus request)
               throws StorageResourceException
Throws:
StorageResourceException

getRequestStatus

public SRMRequestStatus getRequestStatus(java.lang.String requestId)
                                  throws StorageResourceException
Throws:
StorageResourceException

getEndpoint

public java.rmi.Remote getEndpoint()
Return the SOAP endpoint for this Storage Resource. Returns null if the StorageResource does not have a SOAP control channel


generateSURL

public java.net.URI generateSURL(java.lang.String storagePath)
                          throws StorageResourceException
generate a SURL on this StorageResource. If path is supplied, and not null use this as a path below the VO specific root directory. Otherwise construct a path. It returns null if the user's VO is not supported on that StorageResource.

Parameters:
storagePath - the storage path we would like, or null
Returns:
A SURL on this storage resource
Throws:
StorageResourceException

isValidSurl

public boolean isValidSurl(java.net.URI surl)
Is a surl valid for a given Storage Resource. Checks the scheme and host are compatible.

Parameters:
surl - the SURL
Returns:
true if the surl is valid, otherwise false

getInfo

public StorageElementInfo getInfo()