|
|
|||
|
||||
The TDR defines a Java (and eventually Web Service) interface for each of these components such that alternate implementations can be plugged in. For example, the Storage Locator implementation could simply return some scratch space or it could use user preferences and resource management to find the optimal storage location.
A subset of these capabilities, without the metadata and catalog, can be described as a "Storage Repository".
The TDR API is also designed to support an abstract concept of Data that goes well beyond a file centric view. Data in the TDR is any geo-science data that can be represented by a URL. It could be a file, a collection of files, a subset of a file, a database result set, or an in-memory representation of the data.
putData(source:URL, logicalName:String, [user:User], [metadata:Metadata]):UniqueID putData(data:Data, logicalName:String, [user:User], [metadata:Metadata]):UniqueID getData(id:UniqueID, [user:User], [protocol:String]):Data getData(logicalName:String, [user:User], [protocol:String]):Data getDataURL(id:UniqueID, [user:User], [protocol:String]):URL getDataURL(logicalName:String, [user:User], [protocol:String]):URL retrieveData(id:UniqueID, destination:URL, [user:User]) retrieveData(logicalName:String, destination:URL, [user:User])
getStorageLocation([user:User], [size:int], [protocol:String]):URL
moveData(source:URL, destination:URL, [user:User])
generateUniqueID():UniqueID
generateMetadata(data:URL, [metadata:Metadata]):Metadata
translateMetadata(metadata:Metadata, targetSchema:String):Metadata
catalog(logicalName:String, metadata:Metadata, [user:User]) getMetadata(logicalName:String, [user:User]):Metadata
register(id:UniqueID, location:URL) getLocation(id:UniqueID):URL getAllLocations(id:UniqueID):List
For example:
| Contact Us Site Map Search Terms and Conditions Privacy Policy Participation Policy | |||||
|
|||||