Move the code to write metadata to disk into documentImpl
Add some generics typing. Separate the code that strips inline data from document files to have a different strategy for 2.0.X versus 2.1.X documents.
Look for schemaLocations in the document while initializing parser. If full schema validation is turned on in metacat.properties, and at least one schema is not registered locally, then turn on full schema validation in the parser.
Fix workgroup description
add closing </distribution> tag to regex for inline data.
Created a method in DocumentImpl to read a document file from disk. Created a support method to strip inline data for users that don't have read access.
Move the DBAdaptor accessor into a DatabaseService class
qualify xml and eml properties with an xml. prefix
Continue to qualify property names
Fully qualify spatial and replication properties
Use qualified properties
Add sql debug statements
Append context url onto system id instead of server url.
Merge 1.9 changes into Head
fixed bug 3403
Remove an obsolete private method getPartNodeRecordList.
Use dev=1 replace dev like '1'. since postgres 8.3 doesn't support it.
Add debug info for special charater.
Modified a sql command from "like" to "=". It dramatically improves the peformance of build index.
Add debug information.
Add code to expire cached query result when metacat have a insert, update or delete action.
Fix a bug that move node from xml_nodes to xml_nodes_revisions.
Decreased the debug message priority to 'debug' level for messages when reading an XML document.
Somehow the change went to the head rather than branch. So i rollback the change in head.
This commit is for branch. In this commit the correct ip and user name will be stored in access_log table in replication event. However, it only for Forcereplication. And the test isn't completed yet. This commit is only for future use.
Change some log info.
One more patch for bug 2469:Although the correct parentid values were being indexed in xml_path_indexfor leaf node xpaths, they were still incorrect for relative and absolutepaths. This patch modifies traverseParents() and changes the parent node idto be indexed to that of the leaf node, no matter if the path is a leaf,...
As a continued fix for http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2469,I've fixed the indexing implementation in both buildIndex() andtraverseParents(). Duane pointed out that the incorrect parent node idswere being indexed in xml_path_index, causing some stylesheets to render...
Fixed the implementation of the buildIndex function which was notworking for new document insertions. A previous fix in updatePathIndexfor ATTRIBUTE data inadvertantly caused a foreign key duplicationexception for insertions of ELEMENT nodes when multiple relative paths...
I'm fixing a compile problem under jdk 1.4.2, where the get() method inHashMap needs an Object as a parameter, not a primitive data type. I changedthe long to a Long as the lookup key.
As part of a patch fix for:
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2469
I've changed DocumentImpl.java in three locations:
buildIndex() traverseParents() updatePathIndex()
This patch modifies buildIndex(). Like the prior two patches, it changes...
buildIndex()traverseParents()updatePathIndex()
This patch modifies traverseParents(). It changes pathsFoundForIndexing from...
This patch modifies updatePathIndex() by changing the pathsFound input...
Ensure that spatial operations are only triggered when runSpatialOption is set to true.
Removed the release ant token from all files in 'src'.
release
Changed float object handling in spatial components in order to compile on jdk 1.4.2
initial import of changes to metacat source and config files to support spatial option
added exception handler for normalize function. if StringIndexOutOfBoundsException is thrown then it is reported and nodedata value is forwarded without normalization.
Allow admin to update any document
Modified code so that database is queried just once when a document is read. Currently the read is being done in the constructor and then again inthe function.
1. Modified buildIndex() so that only one connection is used for both indexing nodes and indexing paths.2. Modified the indexing algo so that indexing of paths is done while nodes are being indexed. Results in a much faster indexing algo3. Replaced access to NodeRecord.<variable> with NodeRecord.<getVariable>
Fixed the bug that replicate data file failed that the documents records wouldn't be deleted.
Changes in calls made to IndexingQueue class
Removed the call to indexing function in DBSAXHandler and added a call to indexing function IndexingQueue
Modified the debug levels of debug statements
Add code to handle catalog is null when inserting xml_revisions table.
Add code to handle write record into xml_documents when catalog id is null.
Bugfix to the code which sets parentnodeid in xml_path_index. (Use setInt instead of setFloat)
Changes in log levels of some commands mentioned in the previos commit.
Replacing MetaCatUtil.debugMessage or MetaCatUtil.logMetacat call with logMetacat (private Logger object) call
Fixed bug which can cause eml beta6 couldn't run access control.
Fixed bug couldn't delete xml_nodes when moving to xml_nodes_revision in replication.
Change the code to make sure DocumentImpl class's constructor should have rev attached.
Add code to transfer string to date type.
Add function transfer string to date.
Rewrite replication for revision document.
Fixed some bug in replication.
Add code to handle replicate the deleted document.
Add default constructor and change some viriable to protected.
Added code to start threads which initiate indexing once insertion to xml_nodes is complete.
Fix for bug 2060.
Moved the call to starting of indexing thread from endDocument to DocumentImpl after commit has been done. This way when ever a document is indexed it has already been entered in xml_nodes and xml_documents
Added new methods to MetaCatUtil: isAdministrator and isModerator.
These methods are used to check if a given username is part of the admin and moderator list specified in metacat.properties
Modified DocumentImpl and MetaCatServlet to use these functions.
Bugfix to the previous commit.
Also made changes so that while indexing the path in buildIndex(), instead of seperate database calls to the database for each path, one call is made with all the paths in it.
Modified code to enter/remove data from xml_path_index and enter data into xml_nodes_revision when action=insert, update and delete are performed.
Added code to delete all entries in xml_queryresult table when buildIndex for a docid is called.
Adding the call to normalize function for now -- too many calls to normalize function are made and this needs to be looked into. Removing call to normalize function caused trouble in text like this "A&B"
Removing call to normalize from getNodeRecordList()
Removed irrelevant code from previous commit
Removed code which entered value for nodedata in xml_index
Added code so that metacat administrator can delete any document.
Added code for updating xml_queryresult for action=delete and action=update
For both actions, the entries in xml_queryresult are deleted.This works for action=update because deletion of entry is simple and the entries will be created again when the docid is part of a search result next time.
Modifying code so that nodedata is stored in xml_index table next to the paths.This helps in making the search faster.
Modified code to fix bug # 1850
Modified buildIndex() to now include an '@' sign in the path for ATTRIBUTEnodes. Removed a bunch of debugging information. Fixed the BuildIndexTestso that it would work on any machine (removed hardcoded paths).
Whitespace changes that fix a few formatting problems after Jing's commit.
Add new feature that delete can be broadcasted by force replication.
The new buildIndex() function now can write allof the appropriate index paths to the database for any given document. Next need to create a function to rebuild on demand, and modify DBSAXHandler.run() to use the new buildIndex() function.
Added changes to buildIndex() function. Now it is finding the right set ofpaths, just have to save these in a hash and then add them to the DB xml_indextable.
changed function parameters in accordance with changes in PermissionController
Beginning new method for building the xml_index table. This uses theJDBC resultset directly rather than DBSaxNode, and recurses through therecords of the table. The new function 'buildIndex()' would be called, butcurrently is not linked in to any code, so it shouldn't get in the way....
Fixed a bug in upload function. For online data updates, access was not checked.
Fixed handling of various docid formats.
Reformatted code for readability. It was crazy. Still has problems, but itsbetter. Will be working on some new methods on monday.
Added eml-2.0.1 tags for eml processing.
Also fixed a bug. The error returned in case of no revision number specified was just null. Now it says that revision number is required.
Merging in changes made in branch 'dataaccess' by Jing Tao.
Added code to read EML2.0.1 into source code.
Made initial changes for accepting EML version 2.1.0 in Metacat
Change eml2 to eml200
Change the code when Eml parser name changed.
Fixed a bug if a document already has index, but now metacat doesn't use index. If you try to delete this one, will cause error.
Excluded the update of the xml_index table in insert,update, and delete if the usexmlindex option is set to false.
Fixed the bug for sessionid storing, revision couldn't be zero and Ldap DN is case sensitive.
Fixed bug that version could not be zero in replication.
in toxml method, add new code to handle dtd.
If xml document uploading failed, the inline data file will be deleted either.
Change a array size from 4*10(testing) to 4*1024.
Using reader to replace string to read inline data.
Change the year from YY to YYYY
Revise inital value for insert a new server. Change some debug level.
Fixed a bug in registryDataFile.