got a better version of paging working. still needs to be cleaned up and debugged more.
Fix bug that if there is a search value is different to others, the query wouold work.
Added a new class called Sitemap that is used to generate a series of XML documents representing the URLs of metacat documents following the sitemap protocol. The Sitemap class extends TimerTask so that it can be scheduled to run once a day or so. New configuration options were added to metacat.properties to control where the sitemaps are written and hw often they are updated. By default we do it once a day, as more often is overkill for search engines....
transfer to value to upper case.
Added new feature to allow metacat documents to be retrieved from a URL that does not use the query url syntax, instead embedding the docid and qformat in the url path, as in this example: http://localhost:8180/knb/metacat/test.1.1/knbThis format allows clients to read documents without entering a query URL, which will be used in a subsequent step to allow search engines to better index metacat content.
Decreased the debug message priority to 'debug' level for messages when reading an XML document.
Fixed bug that modified query wasn't add.
Add some new constance
Add method to handle union operator.
Limited use of predicates in XPath return fields
Add event log for timed replication.
Add even log in replication.
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.
checking in timing print statments
Add a new method to print out more effecient query.
Add new data structure and method to handle query terms which have same search value.
Add a new method to compare the query terms to see if they have same search value.
Get rid of user_owner=public part in access query.
reformatted a bit and removed unneeded code
paging now works well. sped up the caching by using SAX instead of DOM parsing. it seems fast. need some other people to test for me though. the two params needed are 'pagesize' and 'pagestart'. I haven't updated any of the web interfaces to use this, so if you want to try it, you'll have to type in the url the old fashioned way
Add a new overload method - createResultDocument and add a new check for null.
got paging working. metacat also now caches resultsets for users' sessions. the paging is a bit slow, due to some xpath statements. i need to get this optimized now.
Fix bug in advanced search that first surfaced in Java 1.5.0/Tomcat 5.5. Only set the sessid parameter if the sessionId string that is passed in is non-null.
adding changes to make paged query results possible
Add exception handle code according the change in SpacialHarvest class.
Change the exception handle way accroding the change in SpatialDataset class.
Change the shape file store object to be static and make them synchronized in order to be thread safe.
Change the constructor to prive so other class can only go through getInstance to get object.
Change some log info.
Check if the word is "infinity" before casting a string to double ojbect.
more changes for the ajax stuff. it now works on the production server
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...
As a fix to http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2748, I'm applyingthe patch sent to me from Mike Frenock when he reported this bug.
This patch changes MetaCatServlet.handleUploadAction() by first settinga boolean flag on whether the file to be uploaded exists already. If it...
This is just a code cleanup patch that re-aligns some indentations and removessome debugging code.
As a partial fix to http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2747,I've modified AuthLdap.getGroups() and removed the code that handles LDAPreferral connect and search timeout issues in a separate thread. I've replacedthis code with ReferralException code that uses two JNDI parameter settings:...
As a partial fix to http://bugzilla.ecoinformatics.org/show_bug.cgi?id=2747,
I'm applying 3 patches to AuthLdap.java that simplify the code that addressestimeout issues when connecting and searching referral LDAP databases, fixes thegetGroups() method to correctly get groups in referral LDAP databases, and does...
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...
Add code to handle double quotes in normalize method.
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:
I've changed DocumentImpl.java in three locations:
buildIndex() traverseParents() updatePathIndex()
This patch modifies buildIndex(). Like the prior two patches, it changes...
This patch modifies traverseParents(). It changes pathsFoundForIndexing from...
This patch modifies updatePathIndex() by changing the pathsFound input...
I've added a second constructor to PathIndexEntry.java. The firstconstructor is used to represent a record entry from the xml_indextable, and the new second constructor represents a record entry in...
I've added the complimentary setter methods to the getter methodsthat are already present in the class:
added a method to query metacat to see if a particular docid is registered or not
finally got the getallids function working
added functionality to get a list of ids used in the system
added getalldocids function to get all docids that match a certain scope.
Added preliminary support for multiple spatial schemas in the same metacat instance .. bug 2551
Initial architecture for dynamically generating SLD/OGC:Filter documents to control which docids get shown on the map. The sldfactory servlet is in place to handle this but is not fully functional since there is currently no way to quickly and dynamically generate a list of allowable docids with a level of performance acceptable for real-time web mapping.
Merged the spatial web.xml.combined into the default web.xml.tomcat5
Updated MetaCatServlet so that it supports a web-based interface for configuring its own properties the first time it is run (determined by the property "configured" being set to false). Which properties are exposed in the web interface is determined by the list of properties in the 'metacat.properties.metadata' file. This file is managed by the new OptionsMetadata class in the utilities module, and provides information that allows metacat to build a human-readable configuration page for the properties. Still need to finish filling out the information in metacat.properties.metadata for the rest of the properties that we want to be editable. This autoconfiguration process is the first step towards building a turnkey installer for metacat....
Ensure that spatial operations are only triggered when runSpatialOption is set to true.
Modified the configuration classes to allow configuration through the web interface of all of the properties set in the metacat.properties file. The layout of this form still needs work, in particular because java.util.Properties does not maintain any order for the properties, nor does it allow for metadata about each property to be set and saved in the file. We can probably overcome this by creating a shadow file that lists all of the options and their metadata (such as grouping, controlled values, etc).
Began work on a web interface for configuring metacat at runtime. This systemchecks the 'configured' property when metacat starts up. If configured=false, thenit loads an HTML form containing the properties that need to be set. The user configures the properties and they are written into the metacat.properties file. Then metacat needs to be restarted. ...
Eliminated unneeded log information in source code file.
Eliminated the MetacatUtil.printMessage() method in favor of using the Log4J debugging methods.
Removed the release ant token from all files in 'src'.
Changed the filename that is used when data files are downloaded and when XML files are downloaded in XML format. Now, data files use the format "docid-docname". See bug #2566.
Only run spatial cache regeneration once. Plus some fixes to spatial_query action api.
Changed float object handling in spatial components in order to compile on jdk 1.4.2
Ensure that spatial cache respects changed access constraints for updated documents
Correctly cache doc title in the spatial cache
fix to docid overrides to handle an empty result set
Fixed geometry logic to swap north and south if n < s
Reverting to previous QueryTerm.java that uses 'LIKE' for comparisons. Thisallows substring matching to work properly, but prevents the postgres indexfrom being used. As a result, full table scans are done on the tables, causinga major performance hit. Need to determine how to eliminate the use of LIKE...
Modifications to the table definitions to add indices that should be usedwhen searching the database. Added an upgrade script to create theseindices as well. Modified QueryTerm.java to use the '=' comparator ratherthan 'LIKE' so that we can do index scans rather than table scans. This needs...
fixed point centroid calculation to reflect bboxs that cross the dateline
Make spatial query more accurate by actually intersecting geometries in addition to a simple bbox filter. Important for testing intersection of irregular shaped objects or multi-geometries
Added docid override mechanism to DBQuery. Bypasses the queryspec.printSQL method and creates an optimized docid query in cases (like the spatial query) where you know the docids a priori
Updated spatial query to also look at point spatial cache as some documents may only be represented as a single point.
Rewrote spatial query handler to use geotools directly against the spatial cache.
Allow only public readable docs in the spatial cache
Added javadoc comments for all new spatial classes. Optimized the title query in SpatialDocument.
Removed old spatial classes
Fixed polygon generator for cases where bbox crosses the dateline or the poles
refactory java classes for spatial harvester
initial import of changes to metacat source and config files to support spatial option
Fixed parameter order for call to createSpatialQuery and fixed bounding box intersection logic.
added exception handler for normalize function. if StringIndexOutOfBoundsException is thrown then it is reported and nodedata value is forwarded without normalization.
Cleaned up the code with proper debug statements..
Replaced getIdentifyingName and ldapAuthenticate with new code. ldapAuthenticate will first try to form a secure connection. If the secure connection fails then based on the value specifiedin metacat.properties, an insecure connection will be made. authenticate() function first tries to connect using the dn specified with the default ldap base and url. in case that fails,...
Add qformat parameter in call to executeAdvancedSearch() method.
Refactor code to get the relative paths of the resultset XSL and search results JSP from the MetacatHelper class rather than hard-coded.
Change relative path to the login page.
Add new methods getResultsetXSL and getResultsJSP.
Add qformat parameter to runQuery() and executeAdvancedSearch() methods.
Omit unused StringTokenizer objects.
Add qformat parameter to resultsetToHTML() method. Set the qformat paramater in the transformer if it is specified.
Add serialVersionUID class variable to eliminate Eclipse warnings.
Allow admin to update any document
check for nullpointerexception
Fix for a bug in MetacatServlet. Metacat assumed that it is supposed to get the schema information from the second line of the document. This is basedon the assumption that xml decleration will always be present. This is good practice but not required. Hence the fix -> Metacat should ignore the...
Fix for bug# 2371
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.
Two changes to Metacat Harvester implementation:
(1) Removed call to deprecated Thread.stop() method. Added boolean class variable, Harvester.keepRunning. When the thread is destroyed, set Harvester.keepRunning to false.
(2) Access the harvestList.xsd schema file by finding it locally in the web application rather than via a URL to cvs.ecoinformatics.org.
fixed bugs in teh client that were preventing the lsid service from working right