public class HttpCNode extends MultipartCNode implements CNode
Modifier and Type | Field and Description |
---|---|
protected static org.apache.commons.logging.Log |
log |
nodeType, restClient, session
SERVICE_VERSION
Constructor and Description |
---|
HttpCNode(MultipartRestClient mrc,
String nodeBaseServiceUrl)
Construct a Coordinating Node, passing in the base url for node services.
|
HttpCNode(String nodeBaseServiceUrl,
Session session)
Construct a Coordinating Node, passing in the base url for node services,
and the Session to use for connections to that node.
|
Modifier and Type | Method and Description |
---|---|
Identifier |
create(Identifier pid,
InputStream object,
SystemMetadata sysmeta)
|
Identifier |
create(Session session,
Identifier pid,
InputStream object,
SystemMetadata sysmeta)
|
boolean |
deleteReplicationMetadata(Identifier pid,
NodeReference nodeId,
long serialVersion)
|
boolean |
deleteReplicationMetadata(Session session,
Identifier pid,
NodeReference nodeId,
long serialVersion)
|
InputStream |
get(Identifier pid)
Get the resource with the specified pid.
|
InputStream |
get(Session session,
Identifier pid)
Get the resource with the specified pid.
|
Integer |
getDefaultSoTimeout() |
Log |
getLogRecords()
A convenience method for getLogRecords using no filtering parameters
see DataONE API Reference
|
Log |
getLogRecords(Date fromDate,
Date toDate,
Event event,
String pidFilter,
Integer start,
Integer count)
|
Log |
getLogRecords(Session session)
A convenience method for getLogRecords using no filtering parameters
see DataONE API Reference
|
Log |
getLogRecords(Session session,
Date fromDate,
Date toDate,
Event event,
String pidFilter,
Integer start,
Integer count)
|
SystemMetadata |
getSystemMetadata(Identifier pid)
Get the system metadata from a resource with the specified guid.
|
SystemMetadata |
getSystemMetadata(Session session,
Identifier pid)
Get the system metadata from a resource with the specified guid.
|
ObjectList |
listObjects()
|
ObjectList |
listObjects(Date fromDate,
Date toDate,
ObjectFormatIdentifier formatid,
Boolean replicaStatus,
Integer start,
Integer count)
|
ObjectList |
listObjects(Session session)
|
ObjectList |
listObjects(Session session,
Date fromDate,
Date toDate,
ObjectFormatIdentifier formatid,
Boolean replicaStatus,
Integer start,
Integer count)
|
NodeReference |
register(Node node)
|
Identifier |
registerSystemMetadata(Identifier pid,
SystemMetadata sysmeta)
|
Identifier |
registerSystemMetadata(Session session,
Identifier pid,
SystemMetadata sysmeta)
|
Identifier |
reserveIdentifier(Identifier pid)
|
Identifier |
reserveIdentifier(Session session,
Identifier pid)
|
ObjectLocationList |
resolve(Identifier pid)
|
ObjectLocationList |
resolve(Session session,
Identifier pid)
|
ObjectList |
search(Session session,
String queryType,
D1Url queryD1url)
A convenience method for creating a search command utilizing the D1Url
class for building the value for the query parameter.
|
ObjectList |
search(Session session,
String queryType,
String query)
see DataONE API Reference
This implementation handles URL-escaping for only the "queryType" parameter,
and always places a slash ('/') character after it.
|
ObjectList |
search(String queryType,
D1Url queryD1url)
A convenience method for creating a search command utilizing the D1Url
class for building the value for the query parameter.
|
ObjectList |
search(String queryType,
String query)
see DataONE API Reference
This implementation handles URL-escaping for only the "queryType" parameter,
and always places a slash ('/') character after it.
|
void |
setDefaultSoTimeout(Integer defaultSoTimeout) |
boolean |
setReplicationPolicy(Identifier pid,
ReplicationPolicy policy,
long serialVersion)
|
boolean |
setReplicationPolicy(Session session,
Identifier pid,
ReplicationPolicy policy,
long serialVersion)
|
boolean |
setReplicationStatus(Identifier pid,
NodeReference nodeRef,
ReplicationStatus status,
BaseException failure)
|
boolean |
setReplicationStatus(Session session,
Identifier pid,
NodeReference nodeRef,
ReplicationStatus status,
BaseException failure)
|
protected org.apache.http.client.config.RequestConfig |
setTimeouts(Integer milliseconds) |
boolean |
updateReplicationMetadata(Identifier pid,
Replica replicaMetadata,
long serialVersion)
|
boolean |
updateReplicationMetadata(Session session,
Identifier pid,
Replica replicaMetadata,
long serialVersion)
|
archive, archive, confirmMapIdentity, confirmMapIdentity, createGroup, createGroup, delete, delete, denyMapIdentity, denyMapIdentity, describe, describe, generateIdentifier, generateIdentifier, getChecksum, getChecksum, getFormat, getNodeBaseServiceUrl, getPendingMapIdentity, getPendingMapIdentity, getQueryEngineDescription, getSubjectInfo, getSubjectInfo, hasReservation, hasReservation, isAuthorized, isAuthorized, isNodeAuthorized, isNodeAuthorized, listChecksumAlgorithms, listFormats, listNodeIds, listNodes, listQueryEngines, listSubjects, listSubjects, lookupNodeBaseUrl, lookupNodeBaseUrl, lookupNodeId, mapIdentity, mapIdentity, ping, query, query, register, registerAccount, registerAccount, removeMapIdentity, removeMapIdentity, requestMapIdentity, requestMapIdentity, setAccessPolicy, setAccessPolicy, setObsoletedBy, setObsoletedBy, setRightsHolder, setRightsHolder, updateAccount, updateAccount, updateGroup, updateGroup, updateNodeCapabilities, updateNodeCapabilities, verifyAccount, verifyAccount
deserializeServiceType, getChecksum, getChecksum, getLatestRequestUrl, getNodeId, getNodeType, getSystemMetadata, getSystemMetadata, localizeInputStream, setNodeBaseServiceUrl, setNodeId, setNodeType
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getLatestRequestUrl, getNodeBaseServiceUrl, getNodeId, getNodeType, setNodeId, setNodeType
archive, archive, delete, delete, generateIdentifier, generateIdentifier, getFormat, hasReservation, hasReservation, listChecksumAlgorithms, listFormats, listNodes, ping, setObsoletedBy, setObsoletedBy
describe, describe, getChecksum, getChecksum, getQueryEngineDescription, listQueryEngines, query
isAuthorized, isAuthorized, setAccessPolicy, setAccessPolicy, setRightsHolder, setRightsHolder
confirmMapIdentity, confirmMapIdentity, createGroup, createGroup, denyMapIdentity, denyMapIdentity, getPendingMapIdentity, getPendingMapIdentity, getSubjectInfo, getSubjectInfo, listSubjects, listSubjects, mapIdentity, mapIdentity, registerAccount, registerAccount, removeMapIdentity, removeMapIdentity, requestMapIdentity, requestMapIdentity, updateAccount, updateAccount, updateGroup, updateGroup, verifyAccount, verifyAccount
register, updateNodeCapabilities, updateNodeCapabilities
isNodeAuthorized, isNodeAuthorized
public HttpCNode(MultipartRestClient mrc, String nodeBaseServiceUrl)
nodeBaseServiceUrl
- base url for constructing service endpoints.public HttpCNode(String nodeBaseServiceUrl, Session session)
nodeBaseServiceUrl
- base url for constructing service endpoints.session
- - the Session object passed to the CertificateManager
to be used for establishing connectionspublic Log getLogRecords() throws InvalidToken, InvalidRequest, ServiceFailure, NotAuthorized, NotImplemented, InsufficientResources
getLogRecords
in class MultipartCNode
InvalidToken
InvalidRequest
ServiceFailure
NotAuthorized
NotImplemented
InsufficientResources
public Log getLogRecords(Session session) throws InvalidToken, InvalidRequest, ServiceFailure, NotAuthorized, NotImplemented, InsufficientResources
getLogRecords
in class MultipartCNode
InvalidToken
InvalidRequest
ServiceFailure
NotAuthorized
NotImplemented
InsufficientResources
public Log getLogRecords(Date fromDate, Date toDate, Event event, String pidFilter, Integer start, Integer count) throws InvalidToken, InvalidRequest, ServiceFailure, NotAuthorized, NotImplemented, InsufficientResources
getLogRecords
in interface CNCore
getLogRecords
in class MultipartCNode
InvalidToken
InvalidRequest
ServiceFailure
NotAuthorized
NotImplemented
InsufficientResources
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.getLogRecords
public Log getLogRecords(Session session, Date fromDate, Date toDate, Event event, String pidFilter, Integer start, Integer count) throws InvalidToken, InvalidRequest, ServiceFailure, NotAuthorized, NotImplemented, InsufficientResources
getLogRecords
in interface CNCore
getLogRecords
in class MultipartCNode
InvalidToken
InvalidRequest
ServiceFailure
NotAuthorized
NotImplemented
InsufficientResources
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.getLogRecords
public Identifier reserveIdentifier(Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, IdentifierNotUnique, NotImplemented, InvalidRequest
reserveIdentifier
in interface CNCore
reserveIdentifier
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
IdentifierNotUnique
NotImplemented
InvalidRequest
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.reserveIdentifier
public Identifier reserveIdentifier(Session session, Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, IdentifierNotUnique, NotImplemented, InvalidRequest
reserveIdentifier
in interface CNCore
reserveIdentifier
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
IdentifierNotUnique
NotImplemented
InvalidRequest
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.reserveIdentifier
public Identifier create(Identifier pid, InputStream object, SystemMetadata sysmeta) throws InvalidToken, ServiceFailure, NotAuthorized, IdentifierNotUnique, UnsupportedType, InsufficientResources, InvalidSystemMetadata, NotImplemented, InvalidRequest
create
in interface CNCore
create
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
IdentifierNotUnique
UnsupportedType
InsufficientResources
InvalidSystemMetadata
NotImplemented
InvalidRequest
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.create
public Identifier create(Session session, Identifier pid, InputStream object, SystemMetadata sysmeta) throws InvalidToken, ServiceFailure, NotAuthorized, IdentifierNotUnique, UnsupportedType, InsufficientResources, InvalidSystemMetadata, NotImplemented, InvalidRequest
create
in interface CNCore
create
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
IdentifierNotUnique
UnsupportedType
InsufficientResources
InvalidSystemMetadata
NotImplemented
InvalidRequest
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.create
public Identifier registerSystemMetadata(Identifier pid, SystemMetadata sysmeta) throws NotImplemented, NotAuthorized, ServiceFailure, InvalidRequest, InvalidSystemMetadata, InvalidToken
registerSystemMetadata
in interface CNCore
registerSystemMetadata
in class MultipartCNode
NotImplemented
NotAuthorized
ServiceFailure
InvalidRequest
InvalidSystemMetadata
InvalidToken
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.registerSystemMetadata
public Identifier registerSystemMetadata(Session session, Identifier pid, SystemMetadata sysmeta) throws NotImplemented, NotAuthorized, ServiceFailure, InvalidRequest, InvalidSystemMetadata, InvalidToken
registerSystemMetadata
in interface CNCore
registerSystemMetadata
in class MultipartCNode
NotImplemented
NotAuthorized
ServiceFailure
InvalidRequest
InvalidSystemMetadata
InvalidToken
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNCore.registerSystemMetadata
public ObjectList listObjects() throws InvalidRequest, InvalidToken, NotAuthorized, NotImplemented, ServiceFailure
listObjects
in class MultipartCNode
InvalidRequest
InvalidToken
NotAuthorized
NotImplemented
ServiceFailure
public ObjectList listObjects(Session session) throws InvalidRequest, InvalidToken, NotAuthorized, NotImplemented, ServiceFailure
listObjects
in class MultipartCNode
InvalidRequest
InvalidToken
NotAuthorized
NotImplemented
ServiceFailure
public ObjectList listObjects(Date fromDate, Date toDate, ObjectFormatIdentifier formatid, Boolean replicaStatus, Integer start, Integer count) throws InvalidRequest, InvalidToken, NotAuthorized, NotImplemented, ServiceFailure
listObjects
in interface CNRead
listObjects
in class MultipartCNode
InvalidRequest
InvalidToken
NotAuthorized
NotImplemented
ServiceFailure
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.listObjects
public ObjectList listObjects(Session session, Date fromDate, Date toDate, ObjectFormatIdentifier formatid, Boolean replicaStatus, Integer start, Integer count) throws InvalidRequest, InvalidToken, NotAuthorized, NotImplemented, ServiceFailure
listObjects
in interface CNRead
listObjects
in class MultipartCNode
InvalidRequest
InvalidToken
NotAuthorized
NotImplemented
ServiceFailure
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.listObjects
public InputStream get(Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
MultipartD1Node
get
in interface CNRead
get
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
public InputStream get(Session session, Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
MultipartD1Node
get
in interface CNRead
get
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
public SystemMetadata getSystemMetadata(Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
MultipartD1Node
getSystemMetadata
in interface CNRead
getSystemMetadata
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
DataONE API Reference (MemberNode API)
,
DataONE API Reference (CoordinatingNode API)
public SystemMetadata getSystemMetadata(Session session, Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
MultipartD1Node
getSystemMetadata
in interface CNRead
getSystemMetadata
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
DataONE API Reference (MemberNode API)
,
DataONE API Reference (CoordinatingNode API)
public ObjectLocationList resolve(Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
resolve
in interface CNRead
resolve
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.resolve
public ObjectLocationList resolve(Session session, Identifier pid) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented
resolve
in interface CNRead
resolve
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.resolve
public ObjectList search(String queryType, D1Url queryD1url) throws InvalidToken, ServiceFailure, NotAuthorized, InvalidRequest, NotImplemented
search
in class MultipartCNode
queryD1url
- - a D1Url object containing the path and/or query elements
that will be passed to the indicated queryType. BaseUrl
and Resource segments contained in this object will be
removed/ignored.InvalidToken
ServiceFailure
NotAuthorized
InvalidRequest
NotImplemented
public ObjectList search(Session session, String queryType, D1Url queryD1url) throws InvalidToken, ServiceFailure, NotAuthorized, InvalidRequest, NotImplemented
search
in class MultipartCNode
queryD1url
- - a D1Url object containing the path and/or query elements
that will be passed to the indicated queryType.InvalidToken
ServiceFailure
NotAuthorized
InvalidRequest
NotImplemented
public ObjectList search(String queryType, String query) throws InvalidToken, ServiceFailure, NotAuthorized, InvalidRequest, NotImplemented
For example, to invoke the following solr query:
"?q=id:MyStuff:*&start=0&rows=10&fl=id score"one has to (1) escape appropriate characters according to the rules of the queryType employed (in this case solr):
"?q=id\:MyStuff\:\*&start=0&rows=10&fl=id\ score"then (2) escape according to general url rules:
"?q=id%5C:MyStuff%5C:%5C*&start=0&rows=10&fl=id%5C%20score"resulting in:
cn.search(session,"solr","?q=id%5C:MyStuff%5C:%5C*&start=0&rows=10&fl=id%5C%20score")For solr queries, a list of query terms employed can be found at the DataONE documentation on Content Discovery solr escaping: find ClientUtils
search
in interface CNRead
search
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
InvalidRequest
NotImplemented
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.search
public ObjectList search(Session session, String queryType, String query) throws InvalidToken, ServiceFailure, NotAuthorized, InvalidRequest, NotImplemented
For example, to invoke the following solr query:
"?q=id:MyStuff:*&start=0&rows=10&fl=id score"one has to (1) escape appropriate characters according to the rules of the queryType employed (in this case solr):
"?q=id\:MyStuff\:\*&start=0&rows=10&fl=id\ score"then (2) escape according to general url rules:
"?q=id%5C:MyStuff%5C:%5C*&start=0&rows=10&fl=id%5C%20score"resulting in:
cn.search(session,"solr","?q=id%5C:MyStuff%5C:%5C*&start=0&rows=10&fl=id%5C%20score")For solr queries, a list of query terms employed can be found at the DataONE documentation on Content Discovery solr escaping: find ClientUtils
search
in interface CNRead
search
in class MultipartCNode
InvalidToken
ServiceFailure
NotAuthorized
InvalidRequest
NotImplemented
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRead.search
public NodeReference register(Node node) throws NotImplemented, NotAuthorized, ServiceFailure, InvalidRequest, IdentifierNotUnique, InvalidToken
register
in interface CNRegister
register
in class MultipartCNode
NotImplemented
NotAuthorized
ServiceFailure
InvalidRequest
IdentifierNotUnique
InvalidToken
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNRegister.register
public boolean setReplicationStatus(Identifier pid, NodeReference nodeRef, ReplicationStatus status, BaseException failure) throws ServiceFailure, NotImplemented, InvalidToken, NotAuthorized, InvalidRequest, NotFound
setReplicationStatus
in interface CNReplication
setReplicationStatus
in class MultipartCNode
ServiceFailure
NotImplemented
InvalidToken
NotAuthorized
InvalidRequest
NotFound
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.setReplicationStatus
public boolean setReplicationStatus(Session session, Identifier pid, NodeReference nodeRef, ReplicationStatus status, BaseException failure) throws ServiceFailure, NotImplemented, InvalidToken, NotAuthorized, InvalidRequest, NotFound
setReplicationStatus
in interface CNReplication
setReplicationStatus
in class MultipartCNode
ServiceFailure
NotImplemented
InvalidToken
NotAuthorized
InvalidRequest
NotFound
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.setReplicationStatus
public boolean setReplicationPolicy(Identifier pid, ReplicationPolicy policy, long serialVersion) throws NotImplemented, NotFound, NotAuthorized, ServiceFailure, InvalidRequest, InvalidToken, VersionMismatch
setReplicationPolicy
in interface CNReplication
setReplicationPolicy
in class MultipartCNode
NotImplemented
NotFound
NotAuthorized
ServiceFailure
InvalidRequest
InvalidToken
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.setReplicationPolicy
public boolean setReplicationPolicy(Session session, Identifier pid, ReplicationPolicy policy, long serialVersion) throws NotImplemented, NotFound, NotAuthorized, ServiceFailure, InvalidRequest, InvalidToken, VersionMismatch
setReplicationPolicy
in interface CNReplication
setReplicationPolicy
in class MultipartCNode
NotImplemented
NotFound
NotAuthorized
ServiceFailure
InvalidRequest
InvalidToken
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.setReplicationPolicy
public boolean updateReplicationMetadata(Identifier pid, Replica replicaMetadata, long serialVersion) throws NotImplemented, NotAuthorized, ServiceFailure, NotFound, InvalidRequest, InvalidToken, VersionMismatch
updateReplicationMetadata
in interface CNReplication
updateReplicationMetadata
in class MultipartCNode
NotImplemented
NotAuthorized
ServiceFailure
NotFound
InvalidRequest
InvalidToken
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.updateReplicationMetadata
public boolean updateReplicationMetadata(Session session, Identifier pid, Replica replicaMetadata, long serialVersion) throws NotImplemented, NotAuthorized, ServiceFailure, NotFound, InvalidRequest, InvalidToken, VersionMismatch
updateReplicationMetadata
in interface CNReplication
updateReplicationMetadata
in class MultipartCNode
NotImplemented
NotAuthorized
ServiceFailure
NotFound
InvalidRequest
InvalidToken
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.updateReplicationMetadata
public boolean deleteReplicationMetadata(Identifier pid, NodeReference nodeId, long serialVersion) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented, VersionMismatch, InvalidRequest
deleteReplicationMetadata
in interface CNReplication
deleteReplicationMetadata
in class MultipartCNode
InvalidRequest
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.deleteReplicationMetadata
public boolean deleteReplicationMetadata(Session session, Identifier pid, NodeReference nodeId, long serialVersion) throws InvalidToken, ServiceFailure, NotAuthorized, NotFound, NotImplemented, VersionMismatch, InvalidRequest
deleteReplicationMetadata
in interface CNReplication
deleteReplicationMetadata
in class MultipartCNode
InvalidRequest
InvalidToken
ServiceFailure
NotAuthorized
NotFound
NotImplemented
VersionMismatch
http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.deleteReplicationMetadata
protected org.apache.http.client.config.RequestConfig setTimeouts(Integer milliseconds)
public Integer getDefaultSoTimeout()
public void setDefaultSoTimeout(Integer defaultSoTimeout)
Copyright © 2014. All Rights Reserved.