CREATE TABLE xml_access ( docid VARCHAR2, -- the document id # principal_name VARCHAR2, -- name of user, group, etc. permission NUMBER, -- "read", "write", "all" perm_type VARCHAR2, -- "allowed" or "denied" perm_order VARCHAR2 -- "allow first" or "deny first"...
fixed compatibility problem by overloading the write method. Jivka's new parameter (Reader acl) is now defaulted to null if it is not explicitly declared.
added interface to handle a new "acl" parameter bringing the text of a xml access file for a given metadata documentthe "acl" parameter is optional and should be sent on INSERT or UPDATE action.
added ticket_counter and deny attributes to xml_access table
new class for parsing ACL XML file and loading acl data into metacat db
added delete functionality
added support for server_location in the xml_revisions table.
removed inadvertent comments
added needed table fields for storing document location in xml_documents
removed dependence on a server code in the accession number of each document. the file's resident server is now located in xml_documents.server_location.
no message
added new server_location field to xml_documents with a foreign key to xml_replication.serverid
now updates the xml_replication last_checked field
updated javadoc documentation
fixed bug/typo
changed action scheme
Modified pathquery.dtd and QuerySpecification to allow some new constraintson queries submitted to Metacat. Now, queries can contain an optionalset of <owner> tags that identify the users for which documents should bereturned, and a list of <site> tags constraining the site identifiers...
can now send a file to another server
can now download a document from a server
Changed utility query to include the user_owner field rather than thetitle field, which is now obsolete.
Fixed typo in DBSAXHandler debug message.
not needed any more
it is not needed to be here
changes for using SRB v1.1.8 at LTER, NM
changed naming scheme
servlet to handle metacat replication requests.
a timer based thread that does Delta-T replication checking.
a parser to handle replication xml messages
change for using the db connection
updated xml_relation table
Updated the Javadoc documentation so that the current release can be providedon the web site.
Fixed problem with AuthInterface, AuthLdap, and AuthMcat where thesigantures of the methods of these classes were not in agreement, which wascausing AuthLdap to no longer compile. Changed parameter signatures so thatthe 'user' parameter is used consistently in all of the methods.
bug fix about util.openDBConnection() for xmlIndex tread
small fix for exception when srbMaster is not running
XSLT transformation on "login" and "logout" action
AuthMcat- new class for authentication through MCA; implements AuthInterfaceAuthSession- assigning HttpSession obj only after successful athentication;- cleared isAuthenticated field - not needed- cleared invalidate() method - not neededAuthInterface...
Began work on new UI for the KNB web site. It will be the main queryinterface from the KNB website.
Fixed the LDAP authentication adapter (AuthLdap.java) so that it now looks upthe distinguished name for a user before attempting to do authentication.This is because the user's distinguished name can sometimes be based ontheir uid attribute, but sometimes be based on their cn (common name)...
merge AUTH_LDAP to the main branch
clear System.exit(0) within the static block
Various changes to improve consistency of the MARINE and METACAT userinterfaces as presented through the XSL->HTML conversions. Eliminatedone (extraneous) copy of the rowcol.css style sheet in favor of sharinga single css stylesheet in xmltodb/lib/style/rowcol.css. Modified all...
Included script for insert of all eml dtds.
added functionality to return the doctype of a relation in a relationdoctype tag. This information is now returned automatically in the resultset under the path resultset/relation/relationdoctype.
removed debug print statements.
added code for getting stylized related documents
allowed both indexing threads to run without interfering with each other.
fixed bug that caused a nullPointerException when a null resultset was returned.
Changed to prevent the insertion if the provided Accession# is in use as Dan suggested.
removed system.out.printlns
added support for urls of the form "metacat://server.xyz.com?docid=XXX:yy"
added package and resource data and structures
Separate thread used for writing into xml_index table.This cut the time of the response on insert almost in half.The tread is started afterwards(on end of document parsing and inserting into xml_nodes) fromDBSAXHandler and uses new(separate) db connection....
This class syncronously indexes any package file that is loaded into the database.r
Added backtrack functionality. Backtracking works by passing a returndoc parameter. There can be more than one. If a document that is hit by a query is not of type returndoc then it searches the database for a related file of type returndoc. If one is found it is displayed, if no relation is found, the original is displayed....
included new method getPoolSize()
added extra timing information to the main() driver method.
fix the small bug with output like:Fatal processing error<success> <docid>null</docid></success>on hadleInsertOrUpdateAction()
writeDocID() not needed any morethrow SAXException from everywhere
on character(cbuf, start, len) included:if currentNode.getTagName().equals("title") currentDocument.setTitle(cbuf)instead of using:currentDocument.setTitleFromChildElement() in endDocument() call
change Assession# generation to use the same db connection
Updated the download data function. the download data function now pulls a document from the database, zips it up and sends the zip stream to the client. It also zips up any related files. a relation parameter is used to pass related files to the servlet. If only one document should be zipped and sent, a single docid in the param hashtable is sufficient.
changes related to decrease the time of INSERT of document.With these changes I inserted 200KB file for 3 minutes, 50KB for 50sec.This is mainly simplifing the DBSAXNode class andusing batching feature of Oracle JDBC driver.
This allows for the easy handling of metacat:// urls. The documentation in the source code explains the specification for the url in detail.
Added functionality for package specifications. metacatservlet now contains a new action called getrelateddocument that handles retrieving related documents using the metacatURL specification (metacatURL.java). DBQuery contains new code in runQuery that embeds relation tags in the returned hashtable describing the documents related to each docid. querySpecification contains a new method which prints the sql that does the relation query.
store generated Access# in meta_file_id tag if there are any
fix bug in toXML() about getting output of XML document like:<paragraph
added parentnodeid to xml_index table
added parentnodeid to xml_index
fix for "Document not found" err message on "getdocument" action
fix for "public" authentication
xml_documents.public_access modified to beNUMBER DEFAULT 1ie all documents to have public access by default
removed print statments
fixed xml tag error in squer
fixed bug in handleSQuery that returned the tag in the <query> tag of a resultset.BugID:Submitted by:Reviewed by:
added check from "read" permission on "query" and "squery" actionsfor connected user or for "public" connection
3 indexes added on:xml_nodes (rootnodeid)xml_nodes (parentnodeid)xml_documents (docid, doctype)
sql file defining the table structure for eml-package data.
added support for getabstract action
Added a method called getNodeContent which retrieves the content of a node in a document. If there are more than one nodes with the same name returned, it returns an array with all of the data.
added resource.xsl to the catalog
Modified MetaCatServlet to use the new DocumentImpl.toXml() method forefficiency of reading documents. See bugzilla bug #111 for an explanation.
Fixed document reading bug (bugzilla bug #111) so that reading documentsis no longer a power function of the number of nodes in the document(which used to be the case). Now, reading a document occurs entirelywithin DocumentImpl, by making a single SQL call to get the document data,...
change the 2 executions in archiveDocRevision()with 1 statement:"insert into xml_revisionsselect ... from xml_documents where docid = ..."
small changes on hasWritePermission()
get rid of the FK in xml_acess table that points to xm_documents.docidsince xml_access.docid(s) point to current and revised documents(ie xml_documents.docid and xml_revisions.docid)
storing user_owner and user_updated where needednew function in DocumentImpl checking for "write" perm on UPDATE or DELETEadded delete from xml_index of the old version of docid on UPDATE
this file is no longer used.
changed xslf for new returnfield scheme. the returnfields are now returned as <param name="<returnfield>"> tags.hThe sql for the returnfield query was redone to fix a previous problem with slow queries
cleared static methods in AccessionNumber classes for fixing bug foundwhen multiple requests to the servlet at a time.
Minor update to remove unneeded constructor in DocumentImpl class.
new table xml_access and new attrs to xml_documents for ACL
for getDoctypes() addedWHERE entry_type='DTD' condition in the select statement
Changes with Srb authentication: including quering of Srb/MCAT during the Srb connection for:- groupname of connected user- list of groups and users in MCAT for ACL function for MetaCat
Continued code redesign for the DocumentImpl class. Now the "delete" and"write" methods are static, so a DocumentImpl objject need not be createdin order to initiate a INSERT, UPDATE, or DELETE action (it is createdimplicitly by the DBSAXHandler). When doing a "READ" action, one still...