Index: src/edu/ucsb/nceas/metacat/DocInfoHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/DocInfoHandler.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/DocInfoHandler.java	(nonexistent)
@@ -1,170 +0,0 @@
-/**
- *  '$RCSfile$'
- *    Purpose: a class to handle document info request xml strings
- *  Copyright: 2000 Regents of the University of California and the
- *             National Center for Ecological Analysis and Synthesis
- *    Authors: Chad Berkley
- *
- *   '$Author$'
- *     '$Date$'
- * '$Revision$'
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-package edu.ucsb.nceas.metacat;
-
-import java.util.Stack;
-import java.util.Vector;
-import java.util.Hashtable;
-
-import org.xml.sax.Attributes;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlList;
-import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessDAO;
-
-/** 
- * A Class implementing callback methods for the SAX parser to
- * call when processing the XML messages from the replication handler
- */
-public class DocInfoHandler extends DefaultHandler {
-	
-	private Hashtable<String, String> _docinfo = new Hashtable<String, String>();
-	private String _currentTag = null;
-	private XMLAccessDAO _currentAccessDAO = null;
-	private String _accessPermOrder;
-	private String _accessFileId;
-	private String _subTreeId;
-	private String _guid;
-	private boolean _inPrincipal = false;
-	private boolean _inPermission = false;
-	private boolean _inAllow = false;
-	private boolean _inDeny = false;
-  
-	private Vector<XMLAccessDAO> xmlAccessDAOList = new Vector<XMLAccessDAO>();
-	private Stack<XMLAccessDAO> xmlAccessDAOStack = new Stack<XMLAccessDAO>();
-	
-	private String chars = "";
-  
-	public DocInfoHandler() {
-	}
-
-	public DocInfoHandler(String guid) {
-		_guid = guid;
-	}
-  
-   /**
-	 * capture the name of the tag.
-	 */
-	public void startElement(String uri, String localName, String qName,
-			Attributes attributes) throws SAXException {
-	    chars = "";
-		_currentTag = localName;
-		if (_currentTag.equals("access")) {
-			if (_accessPermOrder == null) {
-				_accessPermOrder = attributes.getValue("order");			
-			}
-			if (_accessFileId == null) {
-				_accessFileId = attributes.getValue("accessfileid");			
-			}
-			if (_subTreeId == null) {
-				_subTreeId = attributes.getValue("subtreeid");			
-			}
-		} else if (_currentTag.equals(AccessControlInterface.ALLOW)) {
-			_inAllow = true;
-		} else if (_currentTag.equals(AccessControlInterface.DENY)) {
-			_inDeny = true;
-		} else if (_currentTag.equals(AccessControlInterface.PERMISSION)) {
-			_inPermission = true;			
-		} else if (_currentTag.equals(AccessControlInterface.PRINCIPAL)) {
-			// new principal means new DAO for storing it
-			_inPrincipal = true;
-			_currentAccessDAO = new XMLAccessDAO();
-			_currentAccessDAO.setGuid(_guid);
-			_currentAccessDAO.setPermOrder(_accessPermOrder);
-			_currentAccessDAO.setAccessFileId(_accessFileId);
-			_currentAccessDAO.setSubTreeId(_subTreeId);
-			if (_inAllow) {
-				_currentAccessDAO.setPermType(AccessControlInterface.ALLOW);
-			}
-			if (_inDeny) {
-				_currentAccessDAO.setPermType(AccessControlInterface.DENY);
-			}
-		}
-	}
-
-	public void endElement(String uri, String localName, String qName)
-			throws SAXException {
-			    
-	    _docinfo.put(_currentTag, chars);
-    	
-        if (_currentTag.equals(AccessControlInterface.PRINCIPAL) && _inPrincipal) {
-            if (_currentAccessDAO != null) {
-                _currentAccessDAO.setPrincipalName(chars);
-            }
-        } else if (_currentTag.equals(AccessControlInterface.PERMISSION) && _inPermission) {
-            if (_currentAccessDAO != null) {
-                String permString = chars;
-                Long permLong = Long.valueOf(AccessControlList.intValue(permString));
-                //add this permission for each DAO in the stack
-                for (int i = 0; i < xmlAccessDAOStack.size(); i++) {
-                    xmlAccessDAOStack.get(i).addPermission(permLong);
-                }
-            }
-        }
-		
-		if (localName.equals(AccessControlInterface.ALLOW)) {
-			_inAllow = false;
-		} else if (localName.equals(AccessControlInterface.DENY)) {
-			_inDeny = false;
-		} else if (_currentTag.equals(AccessControlInterface.PRINCIPAL)) {
-			_inPrincipal = false;
-			xmlAccessDAOStack.push(_currentAccessDAO);
-		} else if (_currentTag.equals(AccessControlInterface.PERMISSION)) {
-			_inPermission = false;
-		}
-		//end of a section for allow/deny
-		if (
-			localName.equals(AccessControlInterface.ALLOW)
-			||
-			localName.equals(AccessControlInterface.DENY)
-			) {
-			//get all the DAOs for this section and add them to the overall list
-			xmlAccessDAOList.addAll(xmlAccessDAOStack);
-			xmlAccessDAOStack.clear();
-		}
-	}
-  
-  /**
-	 * put the content and the name of the tag into the hashtable. the name of
-	 * the tag is the key.
-	 */
-  public void characters(char[] ch, int start, int length) throws SAXException
-  {
-    chars += new String(ch, start, length);
-  }
-  
-  public Hashtable<String,String> getDocInfo()
-  {
-    return _docinfo;
-  }
-  
-  public Vector<XMLAccessDAO> getAccessControlList() {
-	  return xmlAccessDAOList;
-  }
-}

Property changes on: src/edu/ucsb/nceas/metacat/DocInfoHandler.java
___________________________________________________________________
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:executable
## -1 +0,0 ##
-*
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Author Date Id Revision
\ No newline at end of property
Index: src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessDAO.java
===================================================================
--- src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessDAO.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessDAO.java	(nonexistent)
@@ -1,194 +0,0 @@
-/**
- *  '$RCSfile$'
- *    Purpose: A Class that represents an XML Text node and its contents,
- *             and can build itself from a database connection
- *  Copyright: 2000 Regents of the University of California and the
- *             National Center for Ecological Analysis and Synthesis
- *    Authors: Matt Jones
- *
- *   '$Author: daigle $'
- *     '$Date: 2008-10-21 15:20:52 -0700 (Tue, 21 Oct 2008) $'
- * '$Revision: 4468 $'
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-package edu.ucsb.nceas.metacat.accesscontrol;
-
-import java.sql.Date;
-
-import org.apache.log4j.Logger;
-
-import edu.ucsb.nceas.metacat.shared.BaseDAO;
-
-/**
- * A Class that represents an XML access rule. It include principal and 
- * permission
- */
-public class XMLAccessDAO extends BaseDAO {
-
-	private String _guid = null;
-	private String _accessFileId = null;
-	private String _principalName = null;
-	private Long _permission = null;
-	private String _permType = null;
-	private String _permOrder = null;
-	private Date _beginTime = null;
-	private Date _endTime = null;
-	private Long _ticketCount = null;
-	private String _subTreeId = null;
-	private String _startNodeId = null;
-	private String _endNodeId = null;
-	
-	public String getGuid() {
-		return _guid;
-	}
-	
-	public void setGuid(String guid) {
-		if (guid != null && guid.equals("")) {
-			guid = null;
-		} else {
-			_guid = guid;
-		}
-	}
-
-	public String getAccessFileId() {
-		return _accessFileId;
-	}
-	
-	public void setAccessFileId(String accessFileId) {
-		if(accessFileId != null && accessFileId.equals("")) {
-			_accessFileId = null;
-		} else {
-			_accessFileId = accessFileId;
-		}
-	}
-	
-	public String getPrincipalName() {
-		return _principalName;
-	}
-	
-	public void setPrincipalName(String principalName) {
-		if (principalName != null && principalName.equals("")) {
-			_principalName = null;
-		} else {
-			_principalName = principalName;
-		}
-	}
-	
-	public Long getPermission() {
-		return _permission;
-	}
-	
-	public void setPermission(Long permission) {
-		if (_permission == null) {
-			_permission = new Long(0);
-		}
-		_permission = permission;
-	}
-	
-	public void addPermission(Long permission) {
-		if (_permission != null) {
-			_permission |= permission;
-		} else {
-			_permission = permission;
-		}
-	}
-	
-	public String getPermType() {
-		return _permType;
-	}
-	
-	public void setPermType(String permType) {
-		if (permType != null && permType.equals("")) {
-			_permType = null;
-		} else {
-			_permType = permType;
-		}
-	}
-	
-	public String getPermOrder() {
-		return _permOrder;
-	}
-	
-	public void setPermOrder(String permOrder) {
-		if (permOrder != null && permOrder.equals("")) {
-			_permOrder = null;
-		} else {
-			_permOrder = permOrder;
-		}
-	}
-	
-	public Date getBeginTime() {
-		return _beginTime;
-	}
-	
-	public void setBeginTime(Date beginTime) {
-		_beginTime = beginTime;
-	}
-	
-	public Date getEndTime() {
-		return _endTime;
-	}
-	
-	public void setEndTime(Date endTime) {
-		_endTime = endTime;
-	}
-	
-	public Long getTicketCount() {
-		return _ticketCount;
-	}
-	
-	public void setTicketCount(Long ticketCount) {
-		_ticketCount = ticketCount;
-	}
-	
-	public String getSubTreeId() {
-		return _subTreeId;
-	}
-	
-	public void setSubTreeId(String subTreeId) {
-		if (subTreeId != null && subTreeId.equals("")) {
-			_subTreeId = null;
-		} else {
-			_subTreeId = subTreeId;
-		}
-	}
-	
-	public String getStartNodeId() {
-		return _startNodeId;
-	}
-	
-	public void setStartNodeId(String startNodeId) {
-		if (startNodeId != null && startNodeId.equals("")) {
-			_startNodeId = null;
-		} else {
-			_startNodeId = startNodeId;
-		}
-	}
-	
-	public String getEndNodeId() {
-		return _endNodeId;
-	}
-	
-	public void setEndNodeId(String endNodeId) {
-		if (endNodeId != null && endNodeId.equals("")) {
-			endNodeId = null;
-		} else {
-			_endNodeId = endNodeId;
-		}
-	}
-
-}

Property changes on: src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessDAO.java
___________________________________________________________________
Deleted: svn:executable
## -1 +0,0 ##
-*
\ No newline at end of property
Index: src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlInterface.java
===================================================================
--- src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlInterface.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlInterface.java	(nonexistent)
@@ -1,55 +0,0 @@
-/**
- *  '$RCSfile$'
- *    Purpose: A Class that loads eml-access.xml file containing ACL 
- *             for a metadata document into relational DB
- *  Copyright: 2000 Regents of the University of California and the
- *             National Center for Ecological Analysis and Synthesis
- *    Authors: Jivka Bojilova
- *
- *   '$Author$'
- *     '$Date$'
- * '$Revision$'
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-package edu.ucsb.nceas.metacat.accesscontrol;
-
-/**
- * This interface will handle the access control for different documents:
- * the package-orented, single eml2 document and other single file
- */
-public interface AccessControlInterface
-{
-  public static final String CHMODSTRING = "CHANGEPERMISSION";
-  public static final String WRITESTRING = "WRITE";
-  public static final String READSTRING  = "READ";
-  public static final String ALLSTRING   = "ALL";
-  public static final int CHMOD = 1;
-  public static final int WRITE = 2;
-  public static final int READ = 4;
-  public static final int ALL = 7;
-  public static final String ALLOWFIRST="allowFirst";
-  public static final String DENYFIRST="denyFirst";
-  public static final String ALLOW="allow";
-  public static final String DENY="deny";
-  public static final String PUBLIC="public";
-  public static final String ACLID="acl";
-  public static final String ACCESS="access";
-  public static final String PERMISSION="permission";
-  public static final String PRINCIPAL="principal";
-  
- 
-}

Property changes on: src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlInterface.java
___________________________________________________________________
Deleted: svn:eol-style
## -1 +0,0 ##
-native
\ No newline at end of property
Deleted: svn:executable
## -1 +0,0 ##
-*
\ No newline at end of property
Deleted: svn:keywords
## -1 +0,0 ##
-Author Date Id Revision
\ No newline at end of property
Index: src/edu/ucsb/nceas/metacat/shared/BaseDAO.java
===================================================================
--- src/edu/ucsb/nceas/metacat/shared/BaseDAO.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/shared/BaseDAO.java	(nonexistent)
@@ -1,70 +0,0 @@
-/**
- *  '$RCSfile$'
- *    Purpose: A Class that holds the data from the scheduled_task 
- *             table in the database. 
- *  Copyright: 2009 Regents of the University of California and the
- *             National Center for Ecological Analysis and Synthesis
- *    Authors: Michael Daigle
- * 
- *   '$Author: daigle $'
- *     '$Date: 2009-03-23 13:56:56 -0800 (Mon, 23 Mar 2009) $'
- * '$Revision: 4854 $'
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-package edu.ucsb.nceas.metacat.shared;
-
-import java.sql.Timestamp;
-
-public class BaseDAO {
-	
-	private Long _id;
-	private Timestamp _createTime;
-	private Timestamp _modTime;
-	private String _status;
-	
-	public Long getId() {
-		return _id;
-	}
-	
-	public void setId(Long id) {
-		_id = id;
-	}
-	
-	public Timestamp getCreateTime() {
-		return _createTime;
-	}
-	
-	public void setCreateTime(Timestamp createTime) {
-		_createTime = createTime;
-	}
-	
-	public Timestamp getModTime() {
-		return _modTime;
-	}
-	
-	public void setModTime(Timestamp modTime) {
-		_modTime = modTime;
-	}
-	
-	public String getStatus() {
-		return _status;
-	}
-	
-	public void setStatus(String status) {
-		_status = status;
-	}
-	
-}
\ No newline at end of file
Index: src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessAccess.java
===================================================================
--- src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessAccess.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/accesscontrol/XMLAccessAccess.java	(revision 7475)
@@ -39,6 +39,8 @@
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
 import edu.ucsb.nceas.metacat.shared.AccessException;
 import edu.ucsb.nceas.metacat.shared.BaseAccess;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
 
 public class XMLAccessAccess extends BaseAccess {
 	
Index: src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlForSingleFile.java
===================================================================
--- src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlForSingleFile.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlForSingleFile.java	(revision 7475)
@@ -43,7 +43,6 @@
 import org.xml.sax.helpers.XMLReaderFactory;
 
 import edu.ucsb.nceas.metacat.DBUtil;
-import edu.ucsb.nceas.metacat.DocInfoHandler;
 import edu.ucsb.nceas.metacat.IdentifierManager;
 import edu.ucsb.nceas.metacat.McdbDocNotFoundException;
 import edu.ucsb.nceas.metacat.McdbException;
@@ -54,6 +53,9 @@
 import edu.ucsb.nceas.metacat.shared.AccessException;
 import edu.ucsb.nceas.metacat.util.DocumentUtil;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.DocInfoHandler;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
 
 
 /** 
Index: src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlList.java
===================================================================
--- src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlList.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/accesscontrol/AccessControlList.java	(revision 7475)
@@ -55,6 +55,7 @@
 import edu.ucsb.nceas.metacat.properties.PropertyService;
 import edu.ucsb.nceas.metacat.util.SystemUtil;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 
 /** 
  * A Class that loads eml-access.xml file containing ACL for a metadata
Index: src/edu/ucsb/nceas/metacat/clientview/ClientViewHelper.java
===================================================================
--- src/edu/ucsb/nceas/metacat/clientview/ClientViewHelper.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/clientview/ClientViewHelper.java	(revision 7475)
@@ -14,15 +14,12 @@
 import com.oreilly.servlet.multipart.ParamPart;
 import com.oreilly.servlet.multipart.Part;
 
-import edu.ucsb.nceas.metacat.DocInfoHandler;
 import edu.ucsb.nceas.metacat.IdentifierManager;
 import edu.ucsb.nceas.metacat.McdbDocNotFoundException;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlException;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlList;
 import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessAccess;
-import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessDAO;
 import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
 import edu.ucsb.nceas.metacat.client.MetacatClient;
 import edu.ucsb.nceas.metacat.client.MetacatException;
@@ -35,6 +32,10 @@
 import edu.ucsb.nceas.metacat.util.SessionData;
 import edu.ucsb.nceas.utilities.XMLUtilities;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.DocInfoHandler;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
+
 import java.io.BufferedReader;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
Index: src/edu/ucsb/nceas/metacat/PermissionController.java
===================================================================
--- src/edu/ucsb/nceas/metacat/PermissionController.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/PermissionController.java	(revision 7475)
@@ -27,29 +27,27 @@
  */
 package edu.ucsb.nceas.metacat;
 
-import java.sql.*;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
 import java.util.Enumeration;
 import java.util.Hashtable;
-import java.util.Stack;
 import java.util.Vector;
-import java.util.Iterator;
 
 import org.apache.log4j.Logger;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlList;
 import edu.ucsb.nceas.metacat.database.DBConnection;
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
 import edu.ucsb.nceas.metacat.properties.PropertyService;
 import edu.ucsb.nceas.metacat.service.SessionService;
+import edu.ucsb.nceas.metacat.shared.MetacatUtilException;
 import edu.ucsb.nceas.metacat.util.AuthUtil;
 import edu.ucsb.nceas.metacat.util.DocumentUtil;
 import edu.ucsb.nceas.metacat.util.MetacatUtil;
 import edu.ucsb.nceas.metacat.util.SessionData;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
-import edu.ucsb.nceas.metacat.shared.MetacatUtilException;
-import edu.ucsb.nceas.metacat.shared.ServiceException;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 
 public class PermissionController
 {
Index: src/edu/ucsb/nceas/metacat/DocumentImpl.java
===================================================================
--- src/edu/ucsb/nceas/metacat/DocumentImpl.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/DocumentImpl.java	(revision 7475)
@@ -58,7 +58,7 @@
 
 import javax.xml.bind.DatatypeConverter;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlList;
 import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
 import edu.ucsb.nceas.metacat.database.DBConnection;
Index: src/edu/ucsb/nceas/metacat/MetacatHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/MetacatHandler.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/MetacatHandler.java	(revision 7475)
@@ -80,7 +80,7 @@
 
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlException;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlList;
 import edu.ucsb.nceas.metacat.cart.CartManager;
 import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
Index: src/edu/ucsb/nceas/metacat/DBQuery.java
===================================================================
--- src/edu/ucsb/nceas/metacat/DBQuery.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/DBQuery.java	(revision 7475)
@@ -62,7 +62,6 @@
 
 import org.apache.log4j.Logger;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
 import edu.ucsb.nceas.metacat.database.DBConnection;
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
 import edu.ucsb.nceas.metacat.properties.PropertyService;
@@ -71,6 +70,7 @@
 import edu.ucsb.nceas.metacat.util.MetacatUtil;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
 
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 import edu.ucsb.nceas.utilities.triple.Triple;
 import edu.ucsb.nceas.utilities.triple.TripleCollection;
 
Index: src/edu/ucsb/nceas/metacat/shared/BaseAccess.java
===================================================================
--- src/edu/ucsb/nceas/metacat/shared/BaseAccess.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/shared/BaseAccess.java	(revision 7475)
@@ -35,6 +35,7 @@
 
 import edu.ucsb.nceas.metacat.database.DBConnection;
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
+import edu.ucsb.nceas.utilities.BaseDAO;
 
 public abstract class BaseAccess {
 	
Index: src/edu/ucsb/nceas/metacat/XMLQueryresultAccess.java
===================================================================
--- src/edu/ucsb/nceas/metacat/XMLQueryresultAccess.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/XMLQueryresultAccess.java	(revision 7475)
@@ -37,7 +37,7 @@
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
 import edu.ucsb.nceas.metacat.shared.AccessException;
 import edu.ucsb.nceas.metacat.shared.BaseAccess;
-import edu.ucsb.nceas.metacat.shared.BaseDAO;
+import edu.ucsb.nceas.utilities.BaseDAO;
 
 public class XMLQueryresultAccess extends BaseAccess {
 	
Index: src/edu/ucsb/nceas/metacat/Eml200SAXHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/Eml200SAXHandler.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/Eml200SAXHandler.java	(revision 7475)
@@ -52,7 +52,7 @@
 import org.xml.sax.Attributes;
 import org.xml.sax.SAXException;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessRule;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessSection;
 import edu.ucsb.nceas.metacat.database.DBConnection;
Index: src/edu/ucsb/nceas/metacat/Eml210SAXHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/Eml210SAXHandler.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/Eml210SAXHandler.java	(revision 7475)
@@ -46,7 +46,7 @@
 import org.xml.sax.Attributes;
 import org.xml.sax.SAXException;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessRule;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessSection;
 import edu.ucsb.nceas.metacat.database.DBConnection;
Index: src/edu/ucsb/nceas/metacat/IdentifierManager.java
===================================================================
--- src/edu/ucsb/nceas/metacat/IdentifierManager.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/IdentifierManager.java	(revision 7475)
@@ -54,9 +54,7 @@
 import org.dataone.service.types.v1.Subject;
 import org.dataone.service.types.v1.SystemMetadata;
 
-import edu.ucsb.nceas.metacat.accesscontrol.AccessControlInterface;
 import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessAccess;
-import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessDAO;
 import edu.ucsb.nceas.metacat.database.DBConnection;
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
 import edu.ucsb.nceas.metacat.database.DatabaseService;
@@ -65,6 +63,8 @@
 import edu.ucsb.nceas.metacat.shared.ServiceException;
 import edu.ucsb.nceas.metacat.util.DocumentUtil;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.AccessControlInterface;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
 
 /**
  * Manage the relationship between Metacat local identifiers (LocalIDs) that are
Index: src/edu/ucsb/nceas/metacat/replication/ReplicationHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/replication/ReplicationHandler.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/replication/ReplicationHandler.java	(revision 7475)
@@ -58,7 +58,6 @@
 
 import edu.ucsb.nceas.metacat.CatalogMessageHandler;
 import edu.ucsb.nceas.metacat.DBUtil;
-import edu.ucsb.nceas.metacat.DocInfoHandler;
 import edu.ucsb.nceas.metacat.DocumentImpl;
 import edu.ucsb.nceas.metacat.DocumentImplWrapper;
 import edu.ucsb.nceas.metacat.EventLog;
@@ -66,7 +65,6 @@
 import edu.ucsb.nceas.metacat.McdbDocNotFoundException;
 import edu.ucsb.nceas.metacat.SchemaLocationResolver;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
-import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessDAO;
 import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
 import edu.ucsb.nceas.metacat.database.DBConnection;
 import edu.ucsb.nceas.metacat.database.DBConnectionPool;
@@ -77,6 +75,8 @@
 import edu.ucsb.nceas.metacat.util.MetacatUtil;
 import edu.ucsb.nceas.metacat.util.ReplicationUtil;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.DocInfoHandler;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
 
 
 
Index: src/edu/ucsb/nceas/metacat/replication/ReplicationService.java
===================================================================
--- src/edu/ucsb/nceas/metacat/replication/ReplicationService.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/replication/ReplicationService.java	(revision 7475)
@@ -69,7 +69,6 @@
 import org.xml.sax.SAXException;
 import org.xml.sax.XMLReader;
 
-import edu.ucsb.nceas.metacat.DocInfoHandler;
 import edu.ucsb.nceas.metacat.DocumentImpl;
 import edu.ucsb.nceas.metacat.DocumentImplWrapper;
 import edu.ucsb.nceas.metacat.EventLog;
@@ -79,7 +78,6 @@
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlException;
 import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
 import edu.ucsb.nceas.metacat.accesscontrol.PermOrderException;
-import edu.ucsb.nceas.metacat.accesscontrol.XMLAccessDAO;
 import edu.ucsb.nceas.metacat.admin.upgrade.dataone.GenerateORE;
 import edu.ucsb.nceas.metacat.admin.upgrade.dataone.GenerateSystemMetadata;
 import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
@@ -98,6 +96,8 @@
 import edu.ucsb.nceas.utilities.FileUtil;
 import edu.ucsb.nceas.utilities.GeneralPropertyException;
 import edu.ucsb.nceas.utilities.PropertyNotFoundException;
+import edu.ucsb.nceas.utilities.access.DocInfoHandler;
+import edu.ucsb.nceas.utilities.access.XMLAccessDAO;
 
 public class ReplicationService extends BaseService {
 
Index: src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobDAO.java
===================================================================
--- src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobDAO.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobDAO.java	(revision 7475)
@@ -30,8 +30,9 @@
 import java.sql.Timestamp;
 import java.util.HashMap;
 
-import edu.ucsb.nceas.metacat.shared.BaseDAO;
+import edu.ucsb.nceas.utilities.BaseDAO;
 
+
 public class ScheduledJobDAO extends BaseDAO {
 	
 	public static String SECONDLY = "s";
Index: src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobParamDAO.java
===================================================================
--- src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobParamDAO.java	(revision 7474)
+++ src/edu/ucsb/nceas/metacat/scheduler/ScheduledJobParamDAO.java	(revision 7475)
@@ -27,7 +27,7 @@
 
 package edu.ucsb.nceas.metacat.scheduler;
 
-import edu.ucsb.nceas.metacat.shared.BaseDAO;
+import edu.ucsb.nceas.utilities.BaseDAO;
 
 public class ScheduledJobParamDAO extends BaseDAO {
 
