Use the "MNRead" to replace "MNStorage" to determine the version of the MN.
Close the input stream on the create/update method when the code aborts.
Fixed a bug that the publish method should throw an io exception.
refs #7419: refactored CNodeService implementations to not throw IdentifierNotUnique for hasReservation.
Modify the text of an exception.
Add contrains for the v1/v2.registerSystemMetadata method. See https://redmine.dataone.org/issues/7380
The setReplicationPolicy method only apply to the pids whose authoritative member node has v2 MNStorage.
Add a flag on the systemMetadataChanged method. If it is true, the authoritative member node will only accepts the serial version and replica list; the replica node accepts everything. If it is false, it will accept everything.
use the TypeFactory to convert the Log and ObjectFormatList objects from the v2 to v1.
Use the TypeFactory to replace the TypeMarshaller according to the change in the d1_common_java.
Use the NodeReference object to replace the replicaStatus to restrict the listObjects method.
Transform the ObjectFormat from v2 to v1 in getFormat method.
Convert the v2 system metadata object to v1 in the getSystemMetadata method.
The method setObsoletedBy only hanldes SID.
The setReplicationStatus method only supports sid and the setRightsHolder method supports both PID and SID.
Fixed a bug that it should use getReplica rather than get method.
Went through the v2 ObjectFormatList and convert every v2 ObjectFormat to v1 ObjectFormat and put them into a v1 objectFormatList.
Add the code to handle sid in the publish method.
Add the code to exclude the sid in the view and getPackage.
Add a converter to convert the V2 Log object to the V1 Log object.
The the code to handle sids on the v2 api - setReplicationPolicy, setReplicationStatus, setAccessPolicy and setObsoletedBy.
Add the code to handle if a identifier is a sid in setAccessPolicy, setReplicationPolicy, setObsoletedBy and setRreplicationStatus.
Add the code to handle SID in the getLogRecords method.
In the getLogRecords method, the pidFilter is checked if it exists.
Fixed a bug that the getLogRecords can't handle the case that the event is null.
Add the code to support the sereis id on isAuthorized and systemMetadataChanged method.
Add the code to handle the sid in the delete and archive method.
Check if the identifier is a sid for the v1 update.
Implement the series id in the getSystemMetadata method.
Looking for sid for the method describe.
Refactor the code to check a pid exists in the v1 api.
Modified the get method to handle the sid in the v2 api.
convert v2 SM to v1 SM for the v1 service call response
add support for v2 DataONE API.