Replacing MetaCatUtil.debugMessage or MetaCatUtil.logMetacat call with logMetacat (private Logger object) call
if moderator is logged into metacat and no option for enable-editing is specified then enable editing by default
Fix for bug 2222. So that correct query is generated when searchmode is 'not-contains'.
Change the method to get access document docid and revision.
Fixed bug which can cause eml beta6 couldn't run access control.
Add rev in get data doc info.
Fixed a bug if one server failed in replication, it will cause another server failed.
Add code to guess the docid's revision in read action.
Remove some debug message.
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.
Remove this file.
fix for the bug entered in previous fix
Fix for bug in QueryGroup. Didnt check if the QueryGroup returned empty string. E.g. in case of a % search.
Fixed bug which currentDocument maybe null.
Fixed bug which currentDocument may be null.
fixe bug which currentDoc maybe null.
Add code to transfer string to date type.
Add function transfer string to date.
Add date info.
Add info about date.
Changes according add data info.
Rewrite replication for revision document.
Add code to get date info
Fixed the bug in xml segment is not correct to express revision document list.
Remove the print out statement.
Fixed some bug in replication.
Add code to handle deleted document replication.
Add code to handle replicate the deleted document.
Add method to get revision list in xml_revisions table for a given docid.
Add code to handle replication deleted docs.
Change setString to setInt for ticket account because driver changes.
Add code to get revision table info
New class to handle replicated deleted doc.
Add default constructor and change some viriable to protected.
added code to define LOG_CONFIG_NAME
Added code to start threads which initiate indexing once insertion to xml_nodes is complete.
Removing the code that calls the indexing thread. This call will be made from documentImpl.java once document insertion and update is finished.
Added support for log4j to MetaCatUtil so that it can be used by Metacat code for logging.
Add a new indicator - is revision document.
Replacing debugMessage in metacat code with log4j methods for logging
Replacing debugMessage with log4j methods for logging
Add code to check the if the user has permission to start or stop timed replication.
Add some null checking code in onList method.
Change sessionHash to static variable and add a static get method.
Use a util function to get replication server.
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
Use a util class to get local replication url.
Add code to trim server name white space.
Modified MetaCatUtil to read metacat access control lists from metacat.properties. Also coded various methods which can be used to find out if a user is an admin, moderator or on allowed/denied submitter list.
Modified MetaCatServlet to check if a user is allowed to insert/update before insert and update is done.
Add code to trim white space in server name.
Remove output stream from the constructor.
Persistant timed replication parameter.
Formatting cleanup, fixed a missing 'private' declaration. Preparing for LSID integration work.
Add code to check if adminstor list is null.
Removing support for 'site' from pathquery
Replaced SQL queries in getMaxDocid() which used INSTR with queries which dont use INSTR. Now the INSTR related computation is done in Java code
Modified the code so that users show up outside the groups also in the tree constructed by action=getPrincipals.
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.
Added fix for http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2172.
normalize method now checks for & in the text passed to the method
Added the patch provided by Johnoel. Check out the following link to bugzilla for more info: http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2081
Add some method to setting replication start time.
Add new method to set options.
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.
Check if all the paths in returnfield are indexed. If yes, then you xml_path_index for getting values of returnfields instead of using xml_nodes + xml_index
Adding code to check if all the paths being searched for indexed are not. If all paths are indexed, the code will use xml_path_index instead of using xml_nodes and xml_index
Adding a new method to MetaCatServlet for getting the value of paths to be indexed from metacat.properties file and indexing those paths in xml_path_index
Changed the name of the function
Added a new function which can used to control the carriage return at the end of the debug message and 'Metacat' in front of the message...
Fixed a bug in printSQL function. The bug came into the picture for queries which involve multiple query groups and one of the query groups does a % search.
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"
Fixed a bug in last commit. Doing a search likepathquery version="1.2"><returndoctype>eml://ecoinformatics.org/eml-2.0.0</returndoctype><returnfield>originator/individualName/surName</returnfield><querygroup operator="INTERSECT"><queryterm casesensitive="false" searchmode="contains"><value>%</value></queryterm><queryterm casesensitive="false" searchmode="contains"><value>National Center for Ecological Analysis and Synthesis</value><pathexpr>organizationName</pathexpr></queryterm></querygroup></pathquery>...
Fixed a bug - when returnfield_id is not found in xml_returnfield, records are not added to xml_queryresults
1. removed the call to QuerySpecification.printAttributeSQL() from QuerySpecification.printExtendedSQL()2. in QuerySpecification.printExtendedSQL() if ( returnFieldList.size() == 0 ) then it returns null3. DBQuery.addReturnfield() doesnt execute the element query if printExtendedSQL returns null
A minor change from containAtrributeReturnField to containsAttributeReturnField
I've added in a test in QuerySpecification.printExtendedSQL that checksto see if attributes, and sometimes only attributes, are in the originalreturnfield request. If so, the printAttributeQuery is called.
Changed the handleReturnField() method so that it handles path expressions withonly attributes in the path.
Added a check if printAttributeQuery() for returnPath to see that it is not null so that that this doesnt happen
xml_index.path like 'null' AND xml_nodes.nodename like 'id'
Fixed a bug in previous commit
Modified code for computing the returnfield string - earlier only elements were used to construct the string. e.g. /dataset/titleNow attributes are also added to the returnfield. e.g. title/@id
Replaced 1.4.0 with release
release
When a path expression includes element content and attribute content, thenthe SQL generated needs to search for attribute nodetypes with parentnodenames equal to the path expression element content. However, whenonly searching for attribute content (such as just @packageId), then...
When searching for attributes in the XPATH expression, an 'index out of bounds'exception was thrown when only an attribute was included in the path string.
This fix changes the pathexpr.indexOf comparison to 0 rather than 1, sincethe index starts at 0....
Removing call to normalize from getNodeRecordList()
Changing the normalize function. Adding changes submitted by Johnoel. Removing code for converting " as " can be stored as it on Oracle. Removing code which strips out \n and \r
Removed occurence of enum which is a keyword in Java 1.5
Changed the queries so that PreparedStatement.setString() and .setInt() are used instead of write the string directly into the sql statements
Fixed a bug from previous commit which removed whitespaces from documents.
Removed irrelevant code from previous commit
Removed code which entered value for nodedata in xml_index
Modified code such that nodedata column in xml_index is not created and used. So now we are using the same logic for using xml_index which was used for metacat release 1.4
Added new database upgrade script for postgres.Modified the database upgrade script for oracleAdded comment to DBquery.javaFixed a bug in xmltables.sql
Added code so that metacat administrator can delete any document.
Added the trailing '/' that was ommitted when XPATH queries included attributes.This is a partial bug fix for:
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2052
Fixed bug in command-line mode which caused array index out of bounds exception.
Changed default maxHarvests value to 0. Added logic to ignore maxHarvests value when it is set to 0 or a negative number. This allows Harvester to run indefinitely without shutting down after reaching a maximum number of harvests. The previous default value of 30 would cause Harvester to terminate after 30 harvests.
Added code to check if the document is indexed yet! So entry into xml_queryresult is only made if the doc is in xml_index.
Added code such that an offset can be specified in metacat.properties for entering records into xml_queryresult table. The value of xml_returnfield.usage_count should be more than the value specified in metacat.properties for records to be entered into xml_queryresult. so if you want results for any combination of returnfields should be stored in xml_queryresult only after that combination has been requested 50 times, set this value to 50
Changes for entering new records into xml_queryresult:
1. Added a function which checks if there is a record exsists in xml_returnfield table for a given combination of return fields. If a record is found, the id for the record is returned. otherwise a new record is created in the xml_returnfield table and the id of the new record is returned....