You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@manifoldcf.apache.org by kw...@apache.org on 2013/06/26 19:57:28 UTC
svn commit: r1497027 -
/manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java
Author: kwright
Date: Wed Jun 26 17:57:28 2013
New Revision: 1497027
URL: http://svn.apache.org/r1497027
Log:
Add additional check for deletion of mapping.
Modified:
manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java
Modified: manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java
URL: http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java?rev=1497027&r1=1497026&r2=1497027&view=diff
==============================================================================
--- manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java (original)
+++ manifoldcf/branches/CONNECTORS-703/framework/pull-agent/src/main/java/org/apache/manifoldcf/authorities/mapping/MappingConnectionManager.java Wed Jun 26 17:57:28 2013
@@ -398,6 +398,9 @@ public class MappingConnectionManager ex
throws ManifoldCFException
{
+ // Grab authority connection manager handle, to check on legality of deletion.
+ IAuthorityConnectionManager authManager = AuthorityConnectionManagerFactory.make(threadContext);
+
StringSetBuffer ssb = new StringSetBuffer();
ssb.add(getMappingConnectionsKey());
ssb.add(getMappingConnectionKey(name));
@@ -412,6 +415,8 @@ public class MappingConnectionManager ex
// MHL - need to check about authority references!!!
if (isReferenced(name))
throw new ManifoldCFException("Can't delete mapping connection '"+name+"': existing mapping connections refer to it");
+ if (authManager.isMappingReferenced(name))
+ throw new ManifoldCFException("Can't delete mapping connection '"+name+"': existing authority connections refer to it");
ManifoldCF.noteConfigurationChange();
mappingPrereqManager.deleteRows(name);
ArrayList params = new ArrayList();