Author: kwright
Date: Tue Feb 18 07:58:52 2014
New Revision: 1569226

URL: http://svn.apache.org/r1569226
Log:
Missing API operation for clearing history.

Modified:
    
manifoldcf/trunk/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/ManifoldCF.java
    
manifoldcf/trunk/site/src/documentation/content/xdocs/en_US/programmatic-operation.xml
    
manifoldcf/trunk/site/src/documentation/content/xdocs/ja_JP/programmatic-operation.xml

Modified: 
manifoldcf/trunk/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/ManifoldCF.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/trunk/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/ManifoldCF.java?rev=1569226&r1=1569225&r2=1569226&view=diff
==============================================================================
--- 
manifoldcf/trunk/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/ManifoldCF.java
 (original)
+++ 
manifoldcf/trunk/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/ManifoldCF.java
 Tue Feb 18 07:58:52 2014
@@ -3215,6 +3215,24 @@ public class ManifoldCF extends org.apac
     return WRITERESULT_FOUND;
   }
 
+  /** Clear repository connection history.
+  */
+  protected static int apiWriteClearHistoryRepositoryConnection(IThreadContext 
tc, Configuration output, String connectionName)
+    throws ManifoldCFException
+  {
+    try
+    {
+      IRepositoryConnectionManager connectionManager = 
RepositoryConnectionManagerFactory.make(tc);
+      connectionManager.cleanUpHistoryData(connectionName);
+      return WRITERESULT_CREATED;
+    }
+    catch (ManifoldCFException e)
+    {
+      createErrorNode(output,e);
+    }
+    return WRITERESULT_FOUND;
+  }
+
   /** Reset output connection (reset version of all recorded documents).
   */
   protected static int apiWriteResetOutputConnection(IThreadContext tc, 
Configuration output, String connectionName)
@@ -3329,6 +3347,29 @@ public class ManifoldCF extends org.apac
       String connectionName = 
decodeAPIPathElement(path.substring("repositoryconnections/".length()));
       return apiWriteRepositoryConnection(tc,output,input,connectionName);
     }
+    else if (path.startsWith("clearhistory/"))
+    {
+      int firstSeparator = "clearhistory/".length();
+      int secondSeparator = path.indexOf("/",firstSeparator);
+      if (secondSeparator == -1)
+      {
+        createErrorNode(output,"Need connection name.");
+        return WRITERESULT_NOTFOUND;
+      }
+      
+      String connectionType = path.substring(firstSeparator,secondSeparator);
+      String connectionName = 
decodeAPIPathElement(path.substring(secondSeparator+1));
+
+      if (connectionType.equals("repositoryconnections"))
+      {
+        return 
apiWriteClearHistoryRepositoryConnection(tc,output,connectionName);
+      }
+      else
+      {
+        createErrorNode(output,"Unknown connection type 
'"+connectionType+"'.");
+        return WRITERESULT_NOTFOUND;
+      }
+    }
     else if (path.startsWith("reset/"))
     {
       int firstSeparator = "reset/".length();

Modified: 
manifoldcf/trunk/site/src/documentation/content/xdocs/en_US/programmatic-operation.xml
URL: 
http://svn.apache.org/viewvc/manifoldcf/trunk/site/src/documentation/content/xdocs/en_US/programmatic-operation.xml?rev=1569226&r1=1569225&r2=1569226&view=diff
==============================================================================
--- 
manifoldcf/trunk/site/src/documentation/content/xdocs/en_US/programmatic-operation.xml
 (original)
+++ 
manifoldcf/trunk/site/src/documentation/content/xdocs/en_US/programmatic-operation.xml
 Tue Feb 18 07:58:52 2014
@@ -112,6 +112,7 @@
             
<tr><td>repositoryconnections/<em>&lt;encoded_connection_name&gt;</em></td><td>DELETE</td><td>Delete
 a repository connection</td><td>N/A</td><td>{ } <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>}</td></tr>
             
<tr><td>status/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em></td><td>GET</td><td>Check
 the status of a repository 
connection</td><td>N/A</td><td>{"check_result":<em>&lt;message&gt;</em>} 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             
<tr><td>info/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em>/<em>&lt;connector_specific_resource&gt;</em></td><td>GET</td><td>Retrieve
 arbitrary connector-specific 
resource</td><td>N/A</td><td><em>&lt;response_data&gt;</em> <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>} <strong>OR</strong> 
{"service_interruption":<em>&lt;error_text&gt;</em>}</td></tr>
+            
<tr><td>clearhistory/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em>/<em>&lt;connector_specific_resource&gt;</em></td><td>PUT</td><td>Clear
 history linked with repository 
connection</td><td>N/A</td><td><em>&lt;response_data&gt;</em> 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>} <strong>OR</strong> 
{"service_interruption":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs</td><td>GET</td><td>List all job 
definitions</td><td>N/A</td><td>{"job":[<em>&lt;list_of_job_objects&gt;</em>]} 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs</td><td>POST</td><td>Create a 
job</td><td>{"job":<em>&lt;job_object&gt;</em>}</td><td>{"job_id":<em>&lt;job_identifier&gt;</em>}
 <strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs/<em>&lt;job_id&gt;</em></td><td>GET</td><td>Get a 
specific job 
definition</td><td>N/A</td><td>{"job":<em>&lt;job_object_&gt;</em>} 
<strong>OR</strong> { } <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>}</td></tr>

Modified: 
manifoldcf/trunk/site/src/documentation/content/xdocs/ja_JP/programmatic-operation.xml
URL: 
http://svn.apache.org/viewvc/manifoldcf/trunk/site/src/documentation/content/xdocs/ja_JP/programmatic-operation.xml?rev=1569226&r1=1569225&r2=1569226&view=diff
==============================================================================
--- 
manifoldcf/trunk/site/src/documentation/content/xdocs/ja_JP/programmatic-operation.xml
 (original)
+++ 
manifoldcf/trunk/site/src/documentation/content/xdocs/ja_JP/programmatic-operation.xml
 Tue Feb 18 07:58:52 2014
@@ -112,6 +112,7 @@
             
<tr><td>repositoryconnections/<em>&lt;encoded_connection_name&gt;</em></td><td>DELETE</td><td>Delete
 a repository connection</td><td>N/A</td><td>{ } <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>}</td></tr>
             
<tr><td>status/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em></td><td>GET</td><td>Check
 the status of a repository 
connection</td><td>N/A</td><td>{"check_result":<em>&lt;message&gt;</em>} 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             
<tr><td>info/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em>/<em>&lt;connector_specific_resource&gt;</em></td><td>GET</td><td>Retrieve
 arbitrary connector-specific 
resource</td><td>N/A</td><td><em>&lt;response_data&gt;</em> <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>} <strong>OR</strong> 
{"service_interruption":<em>&lt;error_text&gt;</em>}</td></tr>
+            
<tr><td>clearhistory/repositoryconnections/<em>&lt;encoded_connection_name&gt;</em>/<em>&lt;connector_specific_resource&gt;</em></td><td>PUT</td><td>Clear
 history linked with repository 
connection</td><td>N/A</td><td><em>&lt;response_data&gt;</em> 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>} <strong>OR</strong> 
{"service_interruption":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs</td><td>GET</td><td>List all job 
definitions</td><td>N/A</td><td>{"job":[<em>&lt;list_of_job_objects&gt;</em>]} 
<strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs</td><td>POST</td><td>Create a 
job</td><td>{"job":<em>&lt;job_object&gt;</em>}</td><td>{"job_id":<em>&lt;job_identifier&gt;</em>}
 <strong>OR</strong> {"error":<em>&lt;error_text&gt;</em>}</td></tr>
             <tr><td>jobs/<em>&lt;job_id&gt;</em></td><td>GET</td><td>Get a 
specific job 
definition</td><td>N/A</td><td>{"job":<em>&lt;job_object_&gt;</em>} 
<strong>OR</strong> { } <strong>OR</strong> 
{"error":<em>&lt;error_text&gt;</em>}</td></tr>


Reply via email to