Author: kwright
Date: Tue Feb 18 08:42:07 2014
New Revision: 1569229
URL: http://svn.apache.org/r1569229
Log:
Fix for CONNECTORS-895.
Modified:
manifoldcf/trunk/CHANGES.txt
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/CHANGES.txt
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1569229&r1=1569228&r2=1569229&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Tue Feb 18 08:42:07 2014
@@ -3,6 +3,11 @@ $Id$
======================= 1.6-dev =====================
+CONNECTORS-895: Add missing REST API methods for connection and
+job control, and revamp API for operations that are specific to only one
+kind of connection.
+(Karl Wright)
+
CONNECTORS-894: Cosmetic display problem with SharePoint specification
view.
(Ahmet Arlsan, Karl Wright)
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=1569229&r1=1569228&r2=1569229&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 08:42:07 2014
@@ -3235,7 +3235,7 @@ public class ManifoldCF extends org.apac
/** Reset output connection (reset version of all recorded documents).
*/
- protected static int apiWriteResetOutputConnection(IThreadContext tc,
Configuration output, String connectionName)
+ protected static int apiWriteClearVersionsOutputConnection(IThreadContext
tc, Configuration output, String connectionName)
throws ManifoldCFException
{
try
@@ -3350,28 +3350,12 @@ public class ManifoldCF extends org.apac
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;
- }
+ String connectionName =
decodeAPIPathElement(path.substring(firstSeparator));
+ return
apiWriteClearHistoryRepositoryConnection(tc,output,connectionName);
}
else if (path.startsWith("reset/"))
{
+ // This form is deprecated
int firstSeparator = "reset/".length();
int secondSeparator = path.indexOf("/",firstSeparator);
if (secondSeparator == -1)
@@ -3385,7 +3369,7 @@ public class ManifoldCF extends org.apac
if (connectionType.equals("outputconnections"))
{
- return apiWriteResetOutputConnection(tc,output,connectionName);
+ return apiWriteClearVersionsOutputConnection(tc,output,connectionName);
}
else
{
@@ -3393,28 +3377,17 @@ public class ManifoldCF extends org.apac
return WRITERESULT_NOTFOUND;
}
}
- else if (path.startsWith("clear/"))
+ else if (path.startsWith("clearversions/"))
{
- int firstSeparator = "clear/".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("outputconnections"))
- {
- return apiWriteClearOutputConnection(tc,output,connectionName);
- }
- else
- {
- createErrorNode(output,"Unknown connection type
'"+connectionType+"'.");
- return WRITERESULT_NOTFOUND;
- }
+ int firstSeparator = "clearversions/".length();
+ String connectionName =
decodeAPIPathElement(path.substring(firstSeparator));
+ return apiWriteClearVersionsOutputConnection(tc,output,connectionName);
+ }
+ else if (path.startsWith("clearrecords/"))
+ {
+ int firstSeparator = "clearrecords/".length();
+ String connectionName =
decodeAPIPathElement(path.substring(firstSeparator));
+ return apiWriteClearOutputConnection(tc,output,connectionName);
}
else
{
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=1569229&r1=1569228&r2=1569229&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 08:42:07 2014
@@ -94,8 +94,8 @@
<tr><td>outputconnections/<em><encoded_connection_name></em></td><td>DELETE</td><td>Delete
an output connection</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>status/outputconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Check
the status of an output
connection</td><td>N/A</td><td>{"check_result":<em><message></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>info/outputconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>GET</td><td>Retrieve
arbitrary connector-specific
resource</td><td>N/A</td><td><em><response_data></em> <strong>OR</strong>
{"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
-
<tr><td>reset/outputconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Forget
previous indexed document versions</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
-
<tr><td>clear/outputconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Remove
all previous indexing records</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
+
<tr><td>clearversions/<em><encoded_output_connection_name></em></td><td>PUT</td><td>Forget
previous indexed document versions</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
+
<tr><td>clearrecords/<em><encoded_output_connection_name></em></td><td>PUT</td><td>Remove
all previous indexing records</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections</td><td>GET</td><td>List all mapping
connections</td><td>N/A</td><td>{"mappingconnection":[<em><list_of_mapping_connection_objects></em>]}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Get
a specific mapping
connection</td><td>N/A</td><td>{"mappingconnection":<em><mapping_connection_object></em>}
<strong>OR</strong> { } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Save
or create a mapping
connection</td><td>{"mappingconnection":<em><mapping_connection_object></em>}</td><td>{
} <strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
@@ -112,7 +112,7 @@
<tr><td>repositoryconnections/<em><encoded_connection_name></em></td><td>DELETE</td><td>Delete
a repository connection</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>status/repositoryconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Check
the status of a repository
connection</td><td>N/A</td><td>{"check_result":<em><message></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>info/repositoryconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>GET</td><td>Retrieve
arbitrary connector-specific
resource</td><td>N/A</td><td><em><response_data></em> <strong>OR</strong>
{"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
-
<tr><td>clearhistory/repositoryconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>PUT</td><td>Clear
history linked with repository
connection</td><td>N/A</td><td><em><response_data></em>
<strong>OR</strong> {"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
+
<tr><td>clearhistory/<em><encoded_repository_connection_name></em></td><td>PUT</td><td>Clear
history linked with repository
connection</td><td>N/A</td><td><em><response_data></em>
<strong>OR</strong> {"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
<tr><td>jobs</td><td>GET</td><td>List all job
definitions</td><td>N/A</td><td>{"job":[<em><list_of_job_objects></em>]}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>jobs</td><td>POST</td><td>Create a
job</td><td>{"job":<em><job_object></em>}</td><td>{"job_id":<em><job_identifier></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>jobs/<em><job_id></em></td><td>GET</td><td>Get a
specific job
definition</td><td>N/A</td><td>{"job":<em><job_object_></em>}
<strong>OR</strong> { } <strong>OR</strong>
{"error":<em><error_text></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=1569229&r1=1569228&r2=1569229&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 08:42:07 2014
@@ -94,8 +94,8 @@
<tr><td>outputconnections/<em><encoded_connection_name></em></td><td>DELETE</td><td>Delete
an output connection</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>status/outputconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Check
the status of an output
connection</td><td>N/A</td><td>{"check_result":<em><message></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>info/outputconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>GET</td><td>Retrieve
arbitrary connector-specific
resource</td><td>N/A</td><td><em><response_data></em> <strong>OR</strong>
{"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
-
<tr><td>reset/outputconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Forget
previous indexed document versions</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
-
<tr><td>clear/outputconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Remove
all previous indexing records</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
+
<tr><td>clearversions/<em><encoded_output_connection_name></em></td><td>PUT</td><td>Forget
previous indexed document versions</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
+
<tr><td>clearrecords/<em><encoded_output_connection_name></em></td><td>PUT</td><td>Remove
all previous indexing records</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections</td><td>GET</td><td>List all mapping
connections</td><td>N/A</td><td>{"mappingconnection":[<em><list_of_mapping_connection_objects></em>]}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Get
a specific mapping
connection</td><td>N/A</td><td>{"mappingconnection":<em><mapping_connection_object></em>}
<strong>OR</strong> { } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>mappingconnections/<em><encoded_connection_name></em></td><td>PUT</td><td>Save
or create a mapping
connection</td><td>{"mappingconnection":<em><mapping_connection_object></em>}</td><td>{
} <strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
@@ -112,7 +112,7 @@
<tr><td>repositoryconnections/<em><encoded_connection_name></em></td><td>DELETE</td><td>Delete
a repository connection</td><td>N/A</td><td>{ } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>
<tr><td>status/repositoryconnections/<em><encoded_connection_name></em></td><td>GET</td><td>Check
the status of a repository
connection</td><td>N/A</td><td>{"check_result":<em><message></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>info/repositoryconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>GET</td><td>Retrieve
arbitrary connector-specific
resource</td><td>N/A</td><td><em><response_data></em> <strong>OR</strong>
{"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
-
<tr><td>clearhistory/repositoryconnections/<em><encoded_connection_name></em>/<em><connector_specific_resource></em></td><td>PUT</td><td>Clear
history linked with repository
connection</td><td>N/A</td><td><em><response_data></em>
<strong>OR</strong> {"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
+
<tr><td>clearhistory/<em><encoded_repository_connection_name></em></td><td>PUT</td><td>Clear
history linked with repository
connection</td><td>N/A</td><td><em><response_data></em>
<strong>OR</strong> {"error":<em><error_text></em>} <strong>OR</strong>
{"service_interruption":<em><error_text></em>}</td></tr>
<tr><td>jobs</td><td>GET</td><td>List all job
definitions</td><td>N/A</td><td>{"job":[<em><list_of_job_objects></em>]}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>jobs</td><td>POST</td><td>Create a
job</td><td>{"job":<em><job_object></em>}</td><td>{"job_id":<em><job_identifier></em>}
<strong>OR</strong> {"error":<em><error_text></em>}</td></tr>
<tr><td>jobs/<em><job_id></em></td><td>GET</td><td>Get a
specific job
definition</td><td>N/A</td><td>{"job":<em><job_object_></em>}
<strong>OR</strong> { } <strong>OR</strong>
{"error":<em><error_text></em>}</td></tr>