Formatting improvements.
Implement a new HarvesterServlet for running Harvester as a servlet. This eliminates the need to run Harvester in a terminal window. By default, the HarvesterServlet is commented out in lib/web.xml.tomcat(3,4,5). The user documentation will be modified to instruct Harvester administrators to uncomment the HarvesterServlet entry.
Re-implement logic to prune old log entries from the HARVEST_LOG and HARVEST_DETAIL_LOG tables. The old logic caused integrity constraint violations in the database because it tried to delete parent records from HARVEST_LOG prior to deleting child records from HARVEST_DETAIL_LOG....
Modifying code so that nodedata is stored in xml_index table next to the paths.This helps in making the search faster.
Increase number of rows in harvest list from 300 to 1200.
Fixed a bug from previous commit
Some more modifications so that % search doesnt run a select on xml_nodes.
Modified code to fix bug # 1850
Change default document type in Harvest List Editor to eml-2.0.1.
Remove DOS end-of-line carriage returns.Other minor formatting improvements to the code.
Modified code so that when a % search is done, a xml_nodes search is not done. This search is not required and hence saves time in doing a % search
Added code to check for NaN valuse which converting string to double.
Fixed a bug in containsKey() function.
Modified 'insert xml_nodes...' so that numerical data is added into numericalnodedata also.
Modified handling of greater-than and less-than so that comparison is done against nodedatanumerical column.
Fixed a bug in previous commit. Moved normalization function before the string size is counted so that size change due to normalization is taken into account.
Added code to check id document is passed as part of the params. This is done toprevent NullPointerException which results in sending null to the user.
Made changes to fix bug# 1538. Changed the code of the normalize function in MetaCatUtil.java. Earlier code was not taking care of characters above 123.
In DBSAXHandler.java, added call to normalize function before text is written to db.
Add a new method to get newest version of a given document.
Add a new method to get newest version for a given document.
Modify value of redirect to match the servlet-mapping URL values in web.xml. The old value used the servlet class name. This worked in Tomcat 4 but seems to break in Tomcat 5 on Windows. The new value uses the servlet-mapping URL value. This should work in both Tomcat 4 and Tomcat 5.
Minor enhancement to support multiple email addresses for harvester administrator and site contact. Each address is separated by a comma or semicolon.
Thanks Jing, Fixed those code comments.
Adde a function to the metacat client to set access on an xml document in ametacat repository.
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).
Added in servlet action 'buildindex' for building the XML_index table entriesfor either a set of documents (if one or more docid params are provided) orfor the whole set of documents in the xml_documents table. The buildindexaction is restricted to only be accessible by users who are listed in the...
Changed DBSAXHandler.run() to now use the new DocumentImpl.buildIndex() methodfor populating the xml_index table. The new method uses a jdbc ResultSetfor populating the index rather than doing it with the DBSAXNode, so it isfaster and can be run at any time on any document. This will allow us to...
Compose the Metacat URL from the httpserver and the servletpath properties, replacing hard-coded references to servlet.
Send redirect to HarvesterRegistration, instead of using the full class name which works on Tomcat-only installations but not with Apache.
Change the date format to one that is standard on both Oracle and Postgres.
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
Modified inline data permission handling, so that access rules for old version of inline data can be checked correctly.
Added a function which returns inline data id with out the revision number.
Changed error text that is returned when an invalid eml is inserted.
Add a code to load eml201 parser to fix the bug that couldn't generate access rule for eml201 doc.
Fixed error in handling of multiple additional metadata tags...
removed errors being generated in handling of qformat when action=insert. If qformat is not specified, xml is assumed as default.
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....
removed a bug which was pointed out by Bing and fixed by Jing.
Removed some unused code
Added new upload function which takes InputStream as input.
fixed some bugs in document update
Added method to metacat client for reading inline data - readInlineData()
Fixed a bug in upload function. For online data updates, access was not checked.
Fixed handling of various docid formats.
Code added to handle errors resulting from following urls: http://metacat.nceas.ucsb.edu/knb/metacat?action2 - no action specified http://metacat.nceas.ucsb.edu/knb/metacat?action=insert - no docid specified http://metacat.nceas.ucsb.edu/knb/metacat?action=login - no username specified...
Added check for null condition so that proper error text is returned to user.
Checked to be sure the instance has been initialized in the getDBCOnnectionstatic method call. Assuming it has been initialized could (and does)lead to NullPointerExceptions when used outside of the metacat servletif the conneciton pool isn't initialized properly.
Reformatted code for readability. It was crazy. Still has problems, but itsbetter. Will be working on some new methods on monday.
Fixed a bug in access handling when no access is specified.
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 upload functionality to metacat client for upload online data
Add warning if default harvest list file is not found on disk.
Change relative path to harvestList.xsd schema to allow harvest list editor to run standalone.
Removed some debugging code added in last commit
Added code to read EML2.0.1 into source code.
Improvements to Harvester registration web form.
Add diagnostic output
Get rid of some useless code.
Improve handling of default values.Call fileNew() if no default Harvest List file is specified.Improve documentation for default properties.
Add File Validate menu itemAdd column to display the row numberAdd name of file to the title barLoad properties from .harvestListEditor in home directory instead of from metacat.properties
Harvest List Editor, a GUI tool for editing Harvest List XML files
Fixed a bug which was introduced because 'eml2namespace' was replaced by 'eml2_0_0namespace' in metacat.properties
Store session attributes as username and password for consistency with Metacat
Improvements to Harvester registration form
Made initial changes for accepting EML version 2.1.0 in Metacat
Revised the api and ecogrid can use it easily.
Fixed a bug that couldn't find eml2 data format.
Improve Harvester registration login
fixed the bug that couldn't assign access rule for the data file come with morpho.
Change method accessNumberUsed to static method.
Change eml2 to eml200
Change the code when Eml parser name changed.
New class to replace EmlSAXHandler.
Rename this class to Eml200SAXHandler.
Integrate Harvester properties with build.properties and metacat.properties.Eliminate the need for a separate harvester.properties file.Improve email message to the site to include more summary information.
Refactored a number of methods to allow for more effective JUnit testing
Changes to comments
Replace Harvester dbDriver property with database property
Added ou also to getprincipal output. So now organizationUnitName is also returned in getprincipal output.
Made changes so that PISCO and NRS trees are also returned in getPrincipals action.
Allow user to set frequency to 0 for testing purposes
Modify schema location
Fixed getprincipals output. Earlier DNs for LTER were in URL form. Now they appear in DN form.Earlier:ldap://knb.lternet.edu:389/DN,baseNow:DN
Have to make changes so that PISCO and NRS also show up.
Fixed two small bugs.
Made changes in XML that is sent back as result of action=getprincipals. Changes are as following:
1. <authSystem> tag contains organization attribute which specifies organization name2. <user> tag now has <organization> tag which specifies the organization name of the user. This is being generated as null for LTER as of now.
Rename url property to defaultDB
Added the EventLog functionality to the servlet as action=getlog. Valid parameters are ipAddress, principal, docid, event, start, end. All parameters can be repeated except start and end.
Partial implementation of a query facility for the access log. Need to fix problems with the date filtering, and tie this into the servlet action when completed and tested.
Interim checkin of EventLog reporting structure. Still basically incomplete but compiles.
Omit HARVEST_OPERATION_TABLE and store harvest operations in properties file instead
Fixed the returndoctype bug in DBQuery as described in bug 1451. Now,results are returned even if returndoctype is null, which is theappropriate behavior.
Implement sending email reports to harvest administrator and site administrator
Patched to make the date-time value insertion work under oracle. Now ittests fine under both oracle and postgres. Still need to write anaccess/query function.