Now, eml parser can support pulling out access control for document level and subtree level.
Add code to handle subtree.
Every call to write into xml_nodes will return current node id.
Add a varible to keep track node id and every call for write to xml_nodes will return a node id.
A new class to store info about sub tree.
Add code to handle additional access data and reference.
Add the code to handle text nodes were splitted to couples.
Add the code the handle text node was splitted
After finishing parsing a access rule and accessSection, assign them to a new object.
Set a condition to for setting eml2 parser.
Access control for documents level works.
Set up an eml parser.
Implement clone method.
Implement to handle document level access control.
Change a varible from private to protected.
Fixed error.
Add copy object method.
Add some constants
A new class to reprent a eml access module.
A new class represents access rules, include principles, permissions.
A new sax parser will handle eml2 (not finished yet)
Add a new contant string access.
Add code to call SchemaLocationResolver.
Change schemalocationkeywords constant from private to public and it can be reused.
Change the debugMessage method. Only debug is true and debug level is higher, the statement can be print out.
Change checkURLConnection to public static. It can be rused.
New class to handle ingore user specification for schema location, upload new schemalocation to metacat and register namespace and schema location in xml_catalog table.
Set mutiple external schema locations for parser.
If insert a schema xml, the doctype will be root element name space.
Code to handle text node was splited.
Add code to handle text node was splited.
Change package query.
Add code to handle text code was splited.
Add schema validation parameter here.
Make the paser knew namespace and schema validation.
New class to wrap documentimple.
Delete the file to clean up access table.
Delete the file to clean access table.
Delete the file which will clean up access table.
Change some output for inser documents.
Don't insert "acl" as accessfileid for single file. It will be null.
Create a action setaccess for assign access rule to single file.
Remove some genric stuff to AccessControlInterface.
A general interface to handle access control.
A class to handle assign a access rule to a single file.
In the end of dtd, set processingDTD false.
Add some debug info.
In extened query, parentnodeid was added.
If a text node was split into two parts, now it will be combined.
Merge code from branch monarch.
Merge the code for monarch.
Merge the branch for monarch.
Merge the code to handle export single document.
Support returnfields has attributes.
Support return field has attributes.
add some methods and attributes to determine percentage search.
Change the code for percentage search.
Add new feature to support attribute in query.
Fixed a bug that after finding a non-dataset document, then go back to find dataset document for it in xml_relation table.
Revise code to make validateion work.
Change the code for validation.
Delete the code that adding access rule for access file itself.
Chage the debug level for display the free connection number.
Add a piece of query to get rid of invalid number in nodedata.
Fixed a bug that if new triple is a new rule in xml_access table, the new triple wouldn't be added into data set file.
In creating xml_access table, add a condition for assigning a access document to itself: if there is not triple. If there is a triple that access file points itself, we don't need inserting again. Otherwise we will get duplicate records.
Get rid of running parser access documents into rules when it handle a access document. (we only need to parser it when handling a dataset file).
Add code to write the updated acl and dataset document back to database after adding permission rules in acl document.
Add code to insert extral rules found in xml_acces table into access document.
Add a method writing info into log file. So the change information can be kept physically.
Add two new methods to update triples in data set file and delete some access rules which doesn't exist in xml_access document. Change the main method, it will read access file form xml_access table rather than getting from argument.
Add code to update tripes in data set file.
Using ! rather than white space to seperate access rules.
Using ! rather than white space to seperate access rule.
Revise some code.
Add a class to handle clean up access table.
Add a class to get access rules from xml_access table directly.
Add a new file to handle get access rules from a xml access document.
Remove the file which we didn't use.
Made a shortcut for % search. It will look like: LIKE '%' rather than: LIKE '%%%'.
In accessQuery, permission=READ or permission=ALL was added for both allow rule and deny rule.
Create a shortcut for the query to get user's onwer doc lists. Create a private method named getOwnerQuery. If the coming query equals the owner query, the access permission checking would NOT append to the comming query. Because the owner has all permission.
Add three private method: createOwnerQuery, createAllowRuleQuery and createDenyRuleQuery. And three public methods: setUserName, setGroup and getAccessQuery.
Add the checking permission query into orignal query.
Add code to make sure that a DBConnection checked out is auto commit.
Add some debug message for displaying search time.
Delete the code for permission checking in execute extened query. It was redundant. Add some debug message for displaying search time.
Add a control for readForRemoteServer is only for data file.
Merge cvs branch replication to cvs head.
Add code to shrink connection pool size. If all connections are free.
Add a new method shrinkConnectionPoolSize .
Add a new method to shrink DBConnection pool size.
Merge DBConnection branch to head.
Merger DBConnect branch to head.
Merge branch to head.
Change back to Connection. DBConnection will store in cvs branch..
Change back to Connection. DBConnection will store in a cvs branch.
Change back to using Connection. The DBConnection will be store in a cvs branch.
Change to using Connection back rather than DBConnection. DBConnection will be store in a cvs branch.