Project

General

Profile

  • svn:eol-style: native
  • svn:keywords: Author Date Id Revision HeadURL

# Date Author Comment
10164 12/28/2016 10:42 AM Jing Tao

The indexall action will be run on another thread.

10029 10/24/2016 04:34 PM Jing Tao

Add more checks to avoid a null exception.

10006 10/05/2016 04:53 PM Jing Tao

Clear the code for the method handleInsertOrUpdate.

9986 09/14/2016 11:07 AM Jing Tao

Add a note to notify users that the reindex action is asynchronized.

9956 09/09/2016 09:17 PM Jing Tao

Add the feature to support the noNamespaceSchemalLocation and refactory the code.

9583 03/23/2016 03:57 PM Jing Tao

If a format id in the system metadata is registered in the xml_catalog table, we will use the schema location for the format id to validate the xml instance;
otherwise, we will use our previous way.

9534 02/25/2016 04:29 PM Chris Jones

Also handle authentication tokens when uploading data (action=upload) by using Ben's RequestUtil.getSessionData() changes.

refs https://github.nceas.ucsb.edu/KNB/arctic-data/issues/43

9363 10/09/2015 12:26 PM Jing Tao

In the reindex method, the error message will be sent back.

9178 04/29/2015 04:41 PM Jing Tao

Add the code to check the authorization of the client which is reindexing a pid.

9024 12/16/2014 06:50 PM Jing Tao

Fixed a bug that the method getLocalId swallowed an exception incorrectly in the IdentifierManager.

8986 11/19/2014 04:59 PM Jing Tao

Fixed a bug that the solr index of data files doesn't reflect the change of access control.

8977 11/19/2014 12:17 PM ben leinfelder

remove AnnotatorService completely - was moved to cn-index-processor

8972 11/17/2014 09:29 PM ben leinfelder

let metacat-index lookup annotations for indexing rather than the metacat "reindex" action.

8953 11/05/2014 01:42 PM ben leinfelder

allow per-document reindexing to be initiated by any user (to support third-party annotations)

8948 10/31/2014 05:36 PM Jing Tao

Write the input stream into the file system without alteration in dataone create and update methods.

8946 10/31/2014 05:09 PM ben leinfelder

look up annotations when reindexing a given pid. still very much a prototype in that we are looking up annotations from an external annotator-store. TODO: add pid filtering to query when annotateit.org supports it (pending upgrade on their site).

8810 07/23/2014 04:19 PM ben leinfelder

add support for v2 DataONE API.

8792 05/20/2014 04:11 PM ben leinfelder

prevent js scriptlets from running when we return error messages to the client by escaping any potentially harmful xml blocks. https://projects.ecoinformatics.org/ecoinfo/issues/6224

8748 04/24/2014 01:28 PM ben leinfelder

switch to use FIleUpload instead of O'Reilly COS library for handling chunked file uploads. https://projects.ecoinformatics.org/ecoinfo/issues/6517

8744 04/22/2014 03:38 PM ben leinfelder

index the ORE after we submit the metadata for indexing. https://projects.ecoinformatics.org/ecoinfo/issues/6520

8647 02/25/2014 04:14 PM ben leinfelder

recursively submit obsoleted objects for indexing when instructed. https://projects.ecoinformatics.org/ecoinfo/issues/6424

8634 02/21/2014 11:20 AM ben leinfelder

look up guid when done setting access by docid so we can sync and refresh accesspolicy on MN and CN.

8633 02/21/2014 10:50 AM ben leinfelder

additional logging for set access

8629 02/21/2014 09:02 AM Peter Slaughter

setAccessAction: get guid from passed in id for calls to SyncAccessPolicy, HazelcastService.refreshSystemMetadataEntry

8593 02/11/2014 02:19 PM Jing Tao

Add the code to check if the docid contains the whitespaces in the handleInsertOrUpdate, handleUpload and handleInsertMultipartInsertAction methods.

8588 02/10/2014 04:17 PM ben leinfelder

allow utf-8 user first/last names to be used in responses for: login, logout, validatesession, getprincipals.

8509 01/21/2014 08:41 AM Peter Slaughter

When a docid's access policy is modified with metacat native api, update CN with the new access policy

8464 01/07/2014 01:56 PM ben leinfelder

Unify solr indexing with an IndexTask that is added to the queue -- allows us to send more than just the systemMetadata to the indexer. Initially this is for READ event counts for each document. https://projects.ecoinformatics.org/ecoinfo/issues/6346

8304 10/09/2013 11:52 PM Matt Jones

Reviewed code for all uses of FileInputStream, checking to see if the method should be closing the stream, and if so, closing it in the method as well as in the finally clause to ensure we don't leak file descriptors.

8303 10/09/2013 08:53 PM Jing Tao

Sparate the action reindex and reindexall.

8193 09/13/2013 11:12 AM ben leinfelder

Generate an ORE when sci metadata is added via the Metacat API.
https://projects.ecoinformatics.org/ecoinfo/issues/6061

8164 08/26/2013 04:30 PM Jing Tao

If the pathquery engine is disabled, the xml path index queue will be disabled as well.

7843 07/03/2013 10:13 AM ben leinfelder

add Metacat servlet action to force the reindexing of one or more or all pids in the system. https://projects.ecoinformatics.org/ecoinfo/issues/5945

7824 06/24/2013 12:05 PM ben leinfelder

do not use tmp file to return an inputstream on read() operations - just read from the file we already have. https://projects.ecoinformatics.org/ecoinfo/issues/6009

7823 06/21/2013 09:44 PM ben leinfelder

use standard File.createTempFile() method for uploaded data files and delete them when we are done with them. https://projects.ecoinformatics.org/ecoinfo/issues/6008

7812 06/20/2013 04:49 PM ben leinfelder

use an independent ISet<SystemMetadata> structure to communicate objects that should be indexed by metacat-index. https://projects.ecoinformatics.org/ecoinfo/issues/5943

7699 05/16/2013 03:21 PM ben leinfelder

remove extra lines from returned <docid/> block. https://projects.ecoinformatics.org/ecoinfo/issues/5932

7695 05/15/2013 05:16 PM ben leinfelder

Allow use of PID instead of docid in the Perl registry. At least for reading/editing and deleting existing content. Does not create content using a pid. https://projects.ecoinformatics.org/ecoinfo/issues/5932

7671 05/08/2013 02:58 PM ben leinfelder

adjust action=zip behavior to use full docids and entity names (data files) for the zip entry. Also uses the given qformat to render the metadata. https://projects.ecoinformatics.org/ecoinfo/issues/3816

7475 12/12/2012 02:38 PM ben leinfelder

move DocInfo parsing into utilities project so that it can be used by Morpho as well as Metacat.
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5737

7454 12/03/2012 02:25 PM Brendan Hahn

Do not set headers until response is ready to send (5756)

7409 10/19/2012 10:20 AM ben leinfelder

allow getlog action to use docid parameters that do not include revision. In these cases, the latest revision will be used.

7404 10/18/2012 11:10 AM ben leinfelder

pass parameters to the getLog action for rendering in xslt

7150 04/30/2012 04:03 PM ben leinfelder

optionally remove the document/data file from the filesystem completely when 'deleting' it.
https://redmine.dataone.org/issues/2677

7128 04/09/2012 03:18 PM ben leinfelder

add a parameter for optionally writing EML-embedded access control rules to the Metacat DB.
https://redmine.dataone.org/issues/2584
https://redmine.dataone.org/issues/2583

7085 03/22/2012 12:13 PM ben leinfelder

use Java-based temp file creation instead of Date (ms) timestamp to ensure uniqueness of the file and avoid re-use by two concurrent threads.

7024 02/22/2012 02:27 PM ben leinfelder

only generate system metadata when the call comes from the legacy Metacat API, not the D1 API.
https://redmine.dataone.org/issues/2362 (I think this was the culprit)

6965 01/30/2012 02:44 PM ben leinfelder

use File.deleteOnExit() not a half hour timer thread to do it.

6852 01/05/2012 12:06 PM ben leinfelder

download remote data and save locally when it is referenced by an EML package, then include it in the ORE map.
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5522

6744 12/07/2011 12:18 PM ben leinfelder

refactor Metacat access handling to be on a per-revision basis so that it more closely aligns with the DataONE approach
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5560

6718 11/30/2011 05:22 PM ben leinfelder

look up all docids is now a static method (ORE/SystemMetadata generation)

6714 11/29/2011 03:43 PM ben leinfelder

evict the HazelCast SystemMetadata entry if we update the access control rules via Metacat's legacy API, otherwise stale SystemMetadata stays in memory instead of being looked up from the backing table store.

6712 11/29/2011 02:15 PM ben leinfelder

optionally include ORE generation/insertion into Metacat when generating SystemMetadata
https://redmine.dataone.org/issues/2056

6705 11/29/2011 12:31 PM ben leinfelder

refactor SystemMetadata creation into separate class from the MetacatHandler -- this will be shared by upgrade code and normal metacat api.

6701 11/28/2011 04:09 PM ben leinfelder

simplify SystemMetadata generation -- will be done during Metacat upgrade for D1 features/support.

6686 11/22/2011 04:10 PM Jing Tao

When read a FGDC document, Metacat will add a new parameter enableFGDCediting params for the xml transforming.

6561 10/27/2011 05:51 PM ben leinfelder

move the DataONE 1.0.0-SNAPSHOT

6542 10/20/2011 02:03 PM ben leinfelder

add User-Agent logging to support D1 requirements

6508 09/22/2011 03:57 PM ben leinfelder

catch datapackage parsing errors as before

6468 09/20/2011 10:48 AM ben leinfelder

catch runtime exceptions that arise from hazelcast storage errors in the system metadata map

6449 09/16/2011 03:23 PM ben leinfelder

only "save" to the shared system metadata map - not directly to the table store.

6447 09/16/2011 03:07 PM ben leinfelder

rely on Hazelcast to store the SystemMetadata locally for the node. Entry event listeners store the shared system metadata on their local node when alerted. TODO: remove old replication code that included system metadata xml when replicating scimeta and data

6444 09/16/2011 01:08 PM ben leinfelder

include sysmeta for uploaded BIN data that comes through the legacy Metacat servlet API

6397 09/07/2011 05:16 PM ben leinfelder

changes for schema update (d1_common)

6384 08/31/2011 02:36 PM Chris Jones

Update classes to use the DataONE 0.6.4 schema and types. Major changes involve using BigInteger vs long in SystemMetadata.size, and using ObjectFormatIdentifier rather than Object format.

6378 08/03/2011 10:46 AM ben leinfelder

latest D1 jars - changes include:
updateSystemMetadata() impl for CN
new identifier methods (generate is its own method)
removal of the resourceMap pointer from system metadata

6367 07/28/2011 10:10 AM ben leinfelder

remove ServiceTypeUtil - replace with TypeMarshaller

6366 07/27/2011 04:25 PM ben leinfelder

use new "v1" types from DataONE

6276 07/01/2011 11:10 AM ben leinfelder

remove extraneous update() call when create() does the call for us

6233 06/28/2011 11:18 AM Chris Jones

Change Metacathandler.read() to be public since it's internal to Metacat, and use read() in D1NodeService after isAuthorized() for the calling Subject from the Session object.

6139 06/15/2011 08:48 AM Chris Jones

Updated CNCoreImpl to implement listFormats() and getFormat(), and changed calls to ObjectFormatCache in IdentifierManager, MetacatHandler to call getInstance(). Removed the ObjectFormatService registration from MetaCatServlet since it is replaced by CNCoreImpl.

6134 06/08/2011 02:35 PM ben leinfelder

use Data Manager Library to parse EML when needed in DataONE classes.
(augmented DML to parse data format elements in EML to estimate MIME type)
https://redmine.dataone.org/issues/1634

6130 06/07/2011 02:56 PM ben leinfelder

organize imports so that it is clearer what dependencies exist on the D1 jars

6124 06/07/2011 09:53 AM Chris Jones

Merged in the D1_0_6_2_BRANCH changes that include the transition from ObjectFormat calls to ObjectFormatCache calls.

6105 05/26/2011 11:51 AM ben leinfelder

rework SystemMetadata creation when inserting documents via the Metacat servlet api (in which case there was no client-supplued system metadata)

6099 05/25/2011 11:59 AM ben leinfelder

-remove system metadata guid -> local id mapping (there is no document for system metadata now)
-include system metadata elements when replicating data objects (TODO: transfer all system metadata structures with the docinfo request).
TODO: remove docid+rev from the systemMetadata table definition

6097 05/24/2011 04:18 PM ben leinfelder

do not use XML files for storing SystemMetadata - use DB tables only.

6092 05/19/2011 01:52 PM Matt Jones

Modified Metacat to build against the D1_SCHEMA_0_6_1 branch of the dataone schemas by incorporating the 0.6.1-SNAPSHOT version of d1_common and d1_libclient libraries, and refactoring Metacat code references to the d1 schema changed types.

6091 05/18/2011 04:32 PM Chris Jones

In order to sync up with DataONE 0.6.1 changes, I'm backing out ObjectFormatService changes temporarily in Metacat. Most functionality will be rolled back in using the DataONE 0.6.2 tag, but some methods in ObjectFormatService (such as getListFromDisk()) will be moved into d1_libclient_java.

6088 05/17/2011 08:02 PM Chris Jones

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....

6048 04/25/2011 03:25 PM Chris Jones

Minor changes to MetacatHandler:
- Improved logging where MetaCatServlet.class was used in getLogger() rather than MetacatHandler.class (holdover from the refactor)
- Minor formatting changes, and replacement of 'MetaCatServlet' with 'MetacatHandler' in the logging output as needed.

6044 04/25/2011 10:58 AM rnahf

added a few debugging lines in createSystemMetadata() related to contents of identifier strings

6041 04/22/2011 01:44 PM rnahf

fixing annoying error message inaccuracy

6036 04/13/2011 08:03 PM Matt Jones

MOdified MetacatHandler to catch cases where ObjectFormat is not being set properly on data files when
generating SystemMetadata. When the EML document contains a format for an entity that maps to a null
type in ObjectFormat.convert(), then the type ends up being null and an error is generated on insertion...

6029 04/01/2011 05:00 PM ben leinfelder

add event notification for insert/update/delete on documents (for semtools plugin)

6027 03/31/2011 05:12 PM ben leinfelder

do not attempt to check permissions when reading documents for systemMetadata generation (unless I completely do not understand this feature - please verify!).

6017 03/23/2011 01:31 PM ben leinfelder

include accessfileid and subtreeid when inserting xml_access values

5998 03/01/2011 09:13 AM Chris Jones

To support GUIDs in MetacatHandler.handleDeleteAction(), I've added in a new method:
deleteFromMetacat() - deletes a document based on the docid
This factors the deletion code out of handleDeleteAction(). handleDeleteAction() now does a docid lookup based on GUID, and if it is not found, reverts to the deletion based on docid instead.

5977 02/17/2011 02:57 AM Chris Jones

These are fairly significant changes to MetacatHandler.handleInsertOrUpdateAction() that add in support for creation or update of GUIDs and SystemMetadata. Upon insertion or update of DataPackages from non-DataONE aware clients (such as Morpho), the identifier table is updated by creating a GUID, and the systemmetadata table is updated with fields after the EML document is parsed for distribution information and entity typing. System Metadata documents are also generated and inserted into Metacat. The list of data entities is iterated over and System Metadata is generated for each data file as well.

5976 02/17/2011 02:39 AM Chris Jones

In MetacatHandler I've removed updateSystemMetadata() in favor of additions to insertOrUpdateSystemMetadata(). Modified createSystemMetadata() to reflect the changes as well.

5975 02/16/2011 06:23 PM Chris Jones

Modified MetacatHandler.createSystemMetadata() to take a localId, not a guid as an argument since there are times when the guid has yet to have been created, and it is created in this method if so.
Also, put the read() call to get the InputStream of the data/metadata document into it's own try/catch statement.

5968 02/16/2011 01:56 PM Chris Jones

Somehow missed adding in javadoc for read(). Here it is.

5967 02/16/2011 01:52 PM Chris Jones

For now, getSystemMetadata() will be private like the other *SystemMetadata() methods.

5966 02/16/2011 01:47 PM Chris Jones

Modified MetacatHandler, updated the getSystemMetadata() method to now use read() and deserializeSystemMetadata() to produce the SystemMetadata object. Exceptions are pushed up the stack, and so accordingly, modified createSystemMetadata() to reflect the changes.

5962 02/16/2011 09:25 AM Chris Jones

Modified MetacatHandler, added createSystemMetadata() - generates SystemMetadata objects for newly inserted data or documents. This is intended to be used from handleInsertOrUpdateAction(), and only for documents being inserted from clients that don't support the DataONE interface. The method parses EML documents to discover data entities, and updates the system metadata for those entries, with support for describes and describedBy metadata. Currently doesn't handle FGDC, etc. documents....

5961 02/16/2011 09:14 AM Chris Jones

Modified MetacatHandler, added three methods:
getSystemMetadata() - returns a SystemMetadata object from the systemmetadata table using the given GUID. Stub only.
updateSystemMetadata() - updates the systemmetadata table using the given SystemMetadata object....

5960 02/16/2011 09:10 AM Chris Jones

Modified MetacatHandler and added two methods:
serializeSystemMetadata() - Serialize a SystemMetadata object to XML string
deserializeSystemMetadata() - Deserialize a SystemMetadata object from an XML string

5959 02/16/2011 09:07 AM Chris Jones

Modified MetacatHandler, added read() - Read a document from metacat and return an InputStream. The XML or data document should be on disk, but if not, read from the metacat database. This method should be optimized, along with others, to not write stream data to disk for performance reasons.

5958 02/16/2011 09:06 AM Chris Jones

To support generation of SystemMetadata and GUIDs, added a number of methods to MetacatHandler that are also in CrudService(). CrudService should eventually be refactored to use the handler methods. Added:
readFromFilesystem() - Read a file from Metacat's configured file system data directory, and return a FileInputStream. This code has been factored out of handleInsertOrUpdateAction()....

5849 01/27/2011 12:17 PM berkley

added some debug lines