Warning: These documents are under active
development and subject to change (version 2.1.0-beta).
The latest release documents are at:
https://purl.dataone.org/architecture
register
(token, ID, metadata)¶Todo
Describe this operation.
Parameters: |
|
---|
batchGet
(token, PIDs) → ?¶Identical to get() except that a list of identifiers is requested.
The issue here is how to serialize the results. There are some conceptual mechanisms for handling structured markup such as XML, but no consistent approaches for working with data blobs. Perhaps this method should apply only to system metadata, for which the serialization can be defined independently of all the other participating nodes?
Parameters: |
|
---|---|
Return type: | Bytes of the specified objects. How are multiple objects serialized? |
Raises: |
|
Todo
batchGet specifies that multiple objects may be retrieved in a single call. How are these objects packaged in the response?
checkDataQuality
(PID)¶Todo
need details on what this operation is supposed to be doing.
Parameters: | PID – object to check |
---|
From the authorization API:
requestToken
()¶This operation is used by CN applications to obtain a token for system level operations.
Note
This could be a normal login()
operation using a system user and
secret that is stored in a secure location.
From the replication API:
synchronizationComplete
(token, PID)¶This is a callback method used by a CN to indicate to a MN that it has
completed replication of the science metadata identified by PID. When
called, the MN should somehow record that synchronization is complete for
that object so that the next time it reponds to a listObjects(token,
query)
query the object will not be included as requiring
synchronization.
Parameters: |
|
---|
Note
A CN could use this method to provide the MN with an updated version of the system metadata for the object if this method accepted a system metadata object instead of a simple PID as a parameter.
Returns: | A simple acknowledgement. |
---|
Todo
Define “a simple acknowledgement”
Raises: |
|
---|
This method is not necessary since the CNs keep track of when an object was last synchronized. There should not be a requirement for MNs to track if content has been retrieved by the CNs.
More stuff from the replication APIs
cancelReplication (sess, transID) listAllObjects () listRecords () replicationSucceeds (transID) startReplica (ID, sessionID, transID, srcMN) sysOp (token) listChangedRecords(token) -> PIDs
## from v0.3 doc ## listObjects(token, query) -> list of PIDs synchronizationComplete(token, PID) synchronizationFailed(token, PID, problemDescription)
cancelReplication
(sess, transID)¶listAllObjects
()¶listRecords
()¶replicationSucceeds
(transID)¶startReplica
(ID, sessionID, transID, srcMN)¶sysOp
(token)¶listChangedRecords
(token) → PidList¶List the records that have changed since the last synchronization event.
Parameters: | token – A token with authority to retrieve a list of changed records. |
---|
From the capabilities API, this function is listed but has no definition:
serviceRequest
(token)¶