| Revision:

# Date Author Comment
3247 04/18/2007 04:03 PM berkley

removed a bunch of commented out code

3246 04/18/2007 03:55 PM berkley

got a better version of paging working. still needs to be cleaned up and debugged more.

3245 04/18/2007 11:31 AM Jing Tao

Fix bug that if there is a search value is different to others, the query wouold work.

3244 04/18/2007 02:26 AM Matt Jones

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 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....

3242 04/17/2007 03:58 PM Jing Tao

transfer to value to upper case.

3241 04/17/2007 03:36 PM Matt Jones

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:
This 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.

3240 04/17/2007 03:25 PM Matt Jones

Decreased the debug message priority to 'debug' level for messages when reading an XML document.

3239 04/17/2007 02:22 PM Jing Tao

Fixed bug that modified query wasn't add.

3238 04/16/2007 05:32 PM Jing Tao

Add some new constance

3237 04/16/2007 05:32 PM Jing Tao

Add method to handle union operator.

3235 04/16/2007 10:27 AM sledge

Limited use of predicates in XPath return fields

3234 04/13/2007 11:49 AM Jing Tao

Add event log for timed replication.

3233 04/13/2007 11:49 AM Jing Tao

Add even log in replication.

3230 04/12/2007 06:34 PM Jing Tao

Somehow the change went to the head rather than branch. So i rollback the change in head.

3229 04/12/2007 06:13 PM Jing Tao

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.

3227 04/12/2007 10:23 AM berkley

checking in timing print statments

3226 04/11/2007 05:41 PM Jing Tao

Add a new method to print out more effecient query.

3225 04/10/2007 04:32 PM Jing Tao

Add new data structure and method to handle query terms which have same search value.

3224 04/10/2007 04:31 PM Jing Tao

Add a new method to compare the query terms to see if they have same search value.

3223 04/05/2007 05:28 PM Jing Tao

Get rid of user_owner=public part in access query.

3222 04/03/2007 01:17 PM berkley

reformatted a bit and removed unneeded code

3221 04/03/2007 01:10 PM berkley

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

3220 04/02/2007 04:38 PM Jing Tao

Add a new overload method - createResultDocument and add a new check for null.

3219 04/02/2007 03:23 PM berkley

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.

3217 03/29/2007 04:03 PM Duane Costa

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.

3211 03/22/2007 09:59 AM berkley

adding changes to make paged query results possible

3202 03/07/2007 05:06 PM Jing Tao

Add exception handle code according the change in SpacialHarvest class.

3201 03/07/2007 05:05 PM Jing Tao

Change the exception handle way accroding the change in SpatialDataset class.

3200 03/07/2007 05:03 PM Jing Tao

Change the shape file store object to be static and make them synchronized in order to be thread safe.

3199 03/07/2007 05:01 PM Jing Tao

Change the constructor to prive so other class can only go through getInstance to get object.

3198 03/07/2007 05:00 PM Jing Tao

Change some log info.

3197 03/07/2007 03:14 PM Jing Tao

Check if the word is "infinity" before casting a string to double ojbect.

3196 03/07/2007 02:29 PM berkley

more changes for the ajax stuff. it now works on the production server

3182 02/15/2007 02:59 PM Chris Jones

One more patch for bug 2469:
Although the correct parentid values were being indexed in xml_path_index
for leaf node xpaths, they were still incorrect for relative and absolute
paths. This patch modifies traverseParents() and changes the parent node id
to be indexed to that of the leaf node, no matter if the path is a leaf,...

3181 02/15/2007 10:55 AM Chris Jones

As a continued fix for,
I've fixed the indexing implementation in both buildIndex() and
traverseParents(). Duane pointed out that the incorrect parent node ids
were being indexed in xml_path_index, causing some stylesheets to render...

3161 01/29/2007 07:16 PM Chris Jones

As a fix to, I'm applying
the patch sent to me from Mike Frenock when he reported this bug.

This patch changes MetaCatServlet.handleUploadAction() by first setting
a boolean flag on whether the file to be uploaded exists already. If it...

3157 01/25/2007 10:35 PM Chris Jones

This is just a code cleanup patch that re-aligns some indentations and removes
some debugging code.

3156 01/25/2007 10:27 PM Chris Jones

As a partial fix to,
I've modified AuthLdap.getGroups() and removed the code that handles LDAP
referral connect and search timeout issues in a separate thread. I've replaced
this code with ReferralException code that uses two JNDI parameter settings:...

3155 01/25/2007 10:00 PM Chris Jones

As a partial fix to,

I'm applying 3 patches to that simplify the code that addresses
timeout issues when connecting and searching referral LDAP databases, fixes the
getGroups() method to correctly get groups in referral LDAP databases, and does...

3152 01/25/2007 09:41 AM Matt Jones

Fixed the implementation of the buildIndex function which was not
working for new document insertions. A previous fix in updatePathIndex
for ATTRIBUTE data inadvertantly caused a foreign key duplication
exception for insertions of ELEMENT nodes when multiple relative paths...

3150 01/18/2007 05:03 PM Jing Tao

Add code to handle double quotes in normalize method.

3149 01/18/2007 04:33 PM Chris Jones

I'm fixing a compile problem under jdk 1.4.2, where the get() method in
HashMap needs an Object as a parameter, not a primitive data type. I changed
the long to a Long as the lookup key.

3148 01/18/2007 03:20 PM Chris Jones

As part of a patch fix for:
I've changed in three locations:

This patch modifies buildIndex(). Like the prior two patches, it changes...

3147 01/18/2007 03:07 PM Chris Jones

As part of a patch fix for:

I've changed in three locations:


This patch modifies traverseParents(). It changes pathsFoundForIndexing from...

3146 01/18/2007 02:52 PM Chris Jones

As part of a patch fix for:

I've changed in three locations:


This patch modifies updatePathIndex() by changing the pathsFound input...

3145 01/18/2007 02:26 PM Chris Jones

As part of a patch fix for:

I've added a second constructor to The first
constructor is used to represent a record entry from the xml_index
table, and the new second constructor represents a record entry in...

3144 01/18/2007 02:20 PM Chris Jones

As part of a patch fix for:

I've added the complimentary setter methods to the getter methods
that are already present in the class:


3143 01/18/2007 10:36 AM berkley

added a method to query metacat to see if a particular docid is registered or not

3142 01/11/2007 09:59 AM berkley

finally got the getallids function working

3141 01/09/2007 06:22 PM berkley

added functionality to get a list of ids used in the system

3140 01/09/2007 11:38 AM berkley

added getalldocids function to get all docids that match a certain scope.

3120 12/13/2006 04:38 PM perry

Added preliminary support for multiple spatial schemas in the same metacat instance .. bug 2551

3118 12/11/2006 07:07 PM perry

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.

3104 11/29/2006 05:40 PM perry

Merged the spatial web.xml.combined into the default web.xml.tomcat5

3099 11/23/2006 12:32 AM Matt Jones

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 '' 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 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....

3098 11/20/2006 06:11 PM perry

Ensure that spatial operations are only triggered when runSpatialOption is set to true.

3083 11/12/2006 01:55 AM Matt Jones

Modified the configuration classes to allow configuration through the web interface of all of the properties set in the 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).

3082 11/11/2006 03:48 AM Matt Jones

Renamed method.

3081 11/11/2006 03:45 AM Matt Jones

Began work on a web interface for configuring metacat at runtime. This system
checks the 'configured' property when metacat starts up. If configured=false, then
it loads an HTML form containing the properties that need to be set. The user configures the properties and they are written into the file. Then metacat needs to be restarted. ...

3079 11/10/2006 10:54 AM Matt Jones

Eliminated unneeded log information in source code file.

3078 11/10/2006 10:51 AM Matt Jones

Eliminated the MetacatUtil.printMessage() method in favor of using the Log4J debugging methods.

3077 11/10/2006 10:25 AM Matt Jones

Removed the release ant token from all files in 'src'.

3076 11/09/2006 11:22 PM Matt Jones

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.

3073 11/09/2006 03:49 PM perry

Only run spatial cache regeneration once. Plus some fixes to spatial_query action api.

3070 10/26/2006 05:13 PM perry

Changed float object handling in spatial components in order to compile on jdk 1.4.2

3069 10/25/2006 06:32 PM perry

Ensure that spatial cache respects changed access constraints for updated documents

3068 10/25/2006 06:29 PM perry

Ensure that spatial cache respects changed access constraints for updated documents

3057 10/05/2006 04:47 PM perry

Correctly cache doc title in the spatial cache

3055 10/04/2006 02:44 PM perry

fix to docid overrides to handle an empty result set

3054 09/28/2006 02:21 PM perry

Fixed geometry logic to swap north and south if n < s

3053 09/28/2006 01:13 AM Matt Jones

Reverting to previous that uses 'LIKE' for comparisons. This
allows substring matching to work properly, but prevents the postgres index
from being used. As a result, full table scans are done on the tables, causing
a major performance hit. Need to determine how to eliminate the use of LIKE...

3052 09/27/2006 04:21 PM Matt Jones

Modifications to the table definitions to add indices that should be used
when searching the database. Added an upgrade script to create these
indices as well. Modified to use the '=' comparator rather
than 'LIKE' so that we can do index scans rather than table scans. This needs...

3051 09/18/2006 04:47 PM perry

fixed point centroid calculation to reflect bboxs that cross the dateline

3050 09/18/2006 04:45 PM perry

fixed point centroid calculation to reflect bboxs that cross the dateline

3048 09/18/2006 12:07 PM perry

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

3047 09/18/2006 11:21 AM perry

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

3045 09/13/2006 04:46 PM perry

Updated spatial query to also look at point spatial cache as some documents may only be represented as a single point.

3044 09/13/2006 04:10 PM perry

Rewrote spatial query handler to use geotools directly against the spatial cache.

3043 09/13/2006 12:24 PM perry

Allow only public readable docs in the spatial cache

3040 09/11/2006 02:22 PM perry

Added javadoc comments for all new spatial classes. Optimized the title query in SpatialDocument.

3039 09/11/2006 12:58 PM perry

Removed old spatial classes

3037 09/07/2006 07:10 PM perry

Fixed polygon generator for cases where bbox crosses the dateline or the poles

3035 08/31/2006 04:54 PM perry

refactory java classes for spatial harvester

3034 08/31/2006 04:37 PM perry

initial import of changes to metacat source and config files to support spatial option

3028 07/31/2006 02:50 PM perry

Fixed parameter order for call to createSpatialQuery and fixed bounding box intersection logic.

3024 07/19/2006 03:00 PM sgarg

added exception handler for normalize function. if StringIndexOutOfBoundsException is thrown then it is reported and nodedata value is forwarded without normalization.

3023 07/19/2006 08:56 AM sgarg

Cleaned up the code with proper debug statements..

3022 07/17/2006 11:23 AM sgarg

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 specified
in, 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,...

3011 06/14/2006 08:44 AM Duane Costa

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.

3010 06/14/2006 08:42 AM Duane Costa

Change relative path to the login page.

3009 06/14/2006 08:41 AM Duane Costa

Add new methods getResultsetXSL and getResultsJSP.

3008 06/14/2006 08:35 AM Duane Costa

Add qformat parameter to runQuery() and executeAdvancedSearch() methods.

Omit unused StringTokenizer objects.

3007 06/14/2006 08:32 AM Duane Costa

Add qformat parameter to resultsetToHTML() method. Set the qformat paramater in the transformer if it is specified.

3006 06/14/2006 08:31 AM Duane Costa

Add serialVersionUID class variable to eliminate Eclipse warnings.

3004 06/09/2006 01:09 PM sgarg

Allow admin to update any document

3003 06/08/2006 11:09 AM sgarg

check for nullpointerexception

3002 06/07/2006 04:11 PM sgarg

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 based
on the assumption that xml decleration will always be present. This is good practice but not required. Hence the fix -> Metacat should ignore the...

2997 05/08/2006 01:46 PM sgarg

Fix for bug# 2371

2996 05/08/2006 01:09 PM sgarg

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 in
the function.

2995 05/01/2006 11:20 AM Duane Costa

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