Changes in the DataONE ObjectFormat class deprecate the convert() method, and we're now using Metacat's ObjectFormatService to look up object format attributes. The following changes replace ObjectFormat.convert() with ObjectFormatService.getFormat() in several classes....
committing changes related to the new restservice update specification (newPid vs. obsoletedGuid)
Use SystemUtil.getContextURL() in ResourceHandler to construct the DataONE service URL (rather than direct calls to PropertyService). This handles http and https URLs, and strips the :80 or :443 for the well known ports.
improved multipart handling (improved logging messages, code, and error checking). Added exception classname to error output when the generic Exception is thrown. Added error check for cases of null value for file parts 'sysmeta' and 'object.'
Removed hardcoded D1 node type in ResourceHandler and added in a new 'dataone.nodeType' property. Also added 'dataone.coordinatingNodeBaseURL' property which points to the CN that stores the authoritative object format list. If this instance of Metacat is a CN, it may point to itself.
ResourceHandler in Metacat was set to return the KNB site URL as the MN base URL rather than the node Id. Fixed. https://redmine.dataone.org/issues/1390
added file extension for txt or csv files
fixed node response bug
fixed update problem
put the pid in the info section of the url
fixed content type problem where csv files were set as text/xml
removed debug statements
remove httpclient 3.1 and custom-built httpclient.jarrework MetacatClient (and other classes) to use httpclient 4updated build to not create httpclient.jarencoding tests now pass.
some new code for debugging mmp
added more code for new mmp requests
refactor checksum and some other stuff
trying to get the new MMP handler working with ResourceHandler
updating commons-fileupload to 1.2.2
replicate works on metacat now. just waiting for roberts changes to the mmp clients
new mmp code
refactored MMP handling
updated replicate to only use GET requests. added notes for tomorrows standup
fixed bug with http/https port
adding additional debugging info
undoing last commit
added additional debugging info
adding war version replacement token
fix for member variables but in the request wrapper
adding war version to node response
implemented health api
added url decoding to the filter
use detected document encoding or Metacat's default encoding (UTF-8)
fixed a bug with trailing slashes
fix for paths with semi-colons or other 'reserved' characters in them for D1 rest services
fixed bug where permission would get set to -1 for no good reason
added response type
added the root registry node response
changed d1 url to knb/d1/....
return the identifier object instead of nothing
made delete serialize the identifier
got getChecksum working. working on delete now. all tests in d1clienttest now pass
changes for new d1 schemas
changed date format a bit to get the parser to like it
adding getChecksum method
remove temp files after multipart read
got the streaming mime multipart working
still working on mmp stream parsing
working on integrating streaming mmp into resourceHandler
more work on streaming mmp support
getting closer to a non-memory bound solution for mime multipart de/encoding
changes for dataone .5 schema updates
fixing redmine task 738
fixing trac bug 828
added explicit 200 codes to ResourceHandler
added better logging and http code setting
fixed bug where the query cache was not getting reset by a REST insert/query combo.
added a todo
new todos from code review with roger
fixed mime multipart problems so that roger can try to use the d1client
fixed error where insert/update errors were not getting caught as exceptions
set the content type to text/xml for the rest interface
Set content type on listObjects to be XML so that it is recognized by clients.Reformatted method to use original file conventions.
Reformatted code to fix indenting.
fixing another null auth token bug
hudson tests are now running. needed date conversions. still more work to do with systemmetadata date format.
updated for date format that supports time zones correctly.
added some new error handling to work around this issue https://trac.dataone.org/ticket/706
fixed bug in access control where the sessionid was not correctly passed along so changes of privileges were not being made
fixed bug where null session data was not treated properly.
fixed some bugs in time handling for listObjects and getLogRecords
added new exception handling to serialize number format exceptions for rest calls
fixed listObject bugs, added params to the listObjects rest interface, consolidated the date format passed in params
fixed query for listObjects so that paging works as advertised.
fixed error with listObjects and get.
got the crud test to pass on knb-mn, now need to figure out why the rest service still isn't working
still looking for listObjects problem
cleanup of 'fixed' ResourceHandler
tracked down streaming bug. now need to figure out a better way to fix it.
finished getLogRecords. Fixed some date bugs in metacat.
adding getlogrecords to the rest interface.
fixed bug in metacat that allowed attribute data to be appended to element data in returnfields
fixed bugs associated with crud access control changes.
added generateMissingSystemMetadata to the ResourceHandler so it is now available via a REST call.
moved authentication checking out of ResourceHandler and into CrudService
refactored the sessionService to use a correct singleton initialization scheme. Added true authentication to ResourceHandler.
listObjects is now working for rest calls as well as crud calls
changed the detailCode for DataOne exceptions to a string
added getSystemMetadata to ResourceHandler and changed the url format to be meta/guid. added a new servlet reponse handler in the web.xml file to handle the new urls and send them to the RestServlet.
implemented update in ResourceHandler and fixed a bug in CrudService where data files were not handled correctly on update
added exception testing to the crud test
removed CrudService dependency on servlet params. CrudService is now a singleton. I'm getting an error from metacat saying it can't find teh systemmetadata schema, even though it is, in fact, registered with metacat. need to identify why this is happening.
adding a system to track system metadata documents for dataone
Added initial implementation of getSystemMetadata and its associated REST service. Current implementation is returning a hardcoded system metadata document -- need to look up the real document for each guid and return that.
Added comment about MIME form processing.
Refactored metacat to use dataone-service-api-0.3.0 jar file, with the new JIBX generated types and serialization. Included JIBX runtime jar in metacat to handle serialization and deserialization of SystemMetadata objects. Removed the old API jar file.