Add code to handle replication document in xml_document table.
Modification in algo:
1. Find if the root element has prefix (e.g. <eml:eml>). If found, go to step 2, otheriwse go to step 3.
2. Look for xmlns:prefix element to find the ns (e.g.:xmlns:eml="eml://ecoinformatics.org/eml-2.0.0") 2.a If not found go to step 4...
Bugfix for 2091. Removed the function needValidation(). Added function getPrefix which returns the prefix. And use the following steps to find out the namespace
1. Find if the root element has prefix (e.g. <eml:eml>). If found, go to step2, otheriwse go to step 3....
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)
Removed sql syntax not acceptable by Oracle.
Changed the filter and ldapbase values in getUserInfo so that it works for both NCEAS and LTER ldap
Bug fix in the changes made in previous commit
Added warning to be displayed in the log when document is not inserted.
Added support in the metacat client for the new function added to MetaCatServlet
Added a new action - getloggedinuserinfo - which returns information about the user in the following format.
Removed code entered in previous commit as it is no longer needed
Also in the previous commit, the successful message changed. Now in addtion to the sessionid tag, the following tags also included: <name>[name of the user]</name>, <isModerator> (if is moderator) and <isAdministrator> (if is Administrator)
Added a new function - getUserInfo to AuthInterface and AuthLdapThe function returns a string array for a given username. the array contains the name, organization name and email address of the user. In case of ldap, it is cn, o and mail attributes for ldapbase=username...
Fixed a bug in QueryGroup which prevented QueryGroup from appending itself to the sql query when no queryTerm is present.
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
Commited the wrong MetaCatUtil.java file last time. Making the changes again.
1. Replacing MetaCatUtil.debugMessage or MetaCatUtil.logMetacat call with logMetacat (private Logger object) call 2. Commented out debugMessage() 3. Removed getLog() and earlier old log4j code...
1. Replacing MetaCatUtil.debugMessage or MetaCatUtil.logMetacat call with logMetacat (private Logger object) call2. Commented out debugMessage()3. Removed getLog() and earlier old log4j code4. Removed formattedDebugMessage
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'