*0.0.2 (March 27th, 2009)* * Support for the option for subscribing service automatically to the BLACKBOARD/LAST_REQUEST element, in order to receive messages for the orchestration protocol *0.0.3 (Mai 19th, 2009)* * Global common configuration of properties adopted * No more support for Perl services *0.0.4 (June 4th, 2009)* *no proper service end point reference fixed *contex and epr properties modified *0.0.5 (June 27th, 2009)* *using CNR DateUtils library for handling DS profile dates *0.0.6 (June 28th, 2009)* *Consideration of open/close state of resultset by storing records *Blackboard profile and other profiles utilities moved in to the unibi-commons *0.0.7 (September 25th, 2009)* * bug #787 - not correct order override properties * xml XPathParser moved to unibi-commons * blackboard support moved to the icm-commons * API changed: input parameter 'rsEPR' of method storeMDRecordsFromRS changed from String to W3CEndpointReference *0.0.8 (October 8th, 2009)* * API changed, method deliverMDRecords: - parameter 'mdformat' removed - new parameter 'sortByIdentifer' for sorting results by objectIdentifier introduced *0.1.0 (November 30th, 2009)* * bug #901 for DELETE notification fixed: checking mdstoreID parameter for empty strings, missing BB Failure notifications added. * bug in generating record paths, code cleaned * the algorithm for creating mdstore directories tree has been changed; the mdstores of different formats are not any more stored in different directories; the mdstore format can be identified in the file system through the empty file "format-" stored inside the mdstore directory; the mdstore directory path is build now in the following manner: (1) basicMDStoreDirectory(taken from properties (2) hash code generated from mdstore identifier (limited to the 3 first numbers - maximum) (3) mdstore identifier it means: /(1)/(2)/(3) * the algorithm for creating record paths has NOT been changed: (4) record identifier length (5) hash code generated form record identifier (limited to the 4 first numbers - maximum) (6) record identifier (limited to 255 characters) it means: /(1)/(2)/(3)/(4)/(5)/(6) * Content of mdstore Lucene index changed: - stores 'X' character instead of mdstore id (its enough for searching - returning all records from index) - stores only record hash path instead of absolute record path; the complete records paths are build now during delivering records to the client; *0.1.1 (March 10th, 2010)* * dropping exception in mergeMDRecordKeywords in case if the input field name is defined without the schema. * Lucene index was not closed properly when the exception occurred during feeding mdstore * IndexReader in LuceneStorageReader was not properly closed; now it has been removed at all and replaced directly by IndexSearcher' * locking parallel storing processes on the same mdstore data structure * cleaning data structure process blocked response to the client because it was not inside the thread, now it is. * automatic repairing Lucene indicies and removing index locs * the statistic fields in MDStore profile were not properly cleaned during REFRESHING * API changes: - the return type of storeMDRecords changed from boolean to void, additionally the MDStoreServiceException is returned - option for running storing process via notification (STORE) - new methods createMDStore and deleteMDStore available via IMDStoreServiceDef interface * migration class for transforming mdstore data structures in version 0.0.+ to the version 0.1.+ *0.1.2 (September 23th, 2010)* * Storing mdstore data structures locally * Information Service switch implemented: the communication between the MDStore and Information services can be switched off, it means that Mdstore don't sent any requests on the Information Service and instead of this it uses local profiles.The switch can be configured in service properties file (services.mdstore.is.communication.switch = true|false) * API changes: - IMDStoreServiceDef extended about new function getMDStoreProfile for returning mdstore data structure profile - new storing method storeMDRecordsFromRS2 accepting string epr as an input parameter - new method for creating mdstore with predefined identifier