Return-Path: X-Original-To: apmail-incubator-connectors-commits-archive@minotaur.apache.org Delivered-To: apmail-incubator-connectors-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A6D5E7A1D for ; Fri, 5 Aug 2011 18:02:51 +0000 (UTC) Received: (qmail 77226 invoked by uid 500); 5 Aug 2011 18:02:51 -0000 Delivered-To: apmail-incubator-connectors-commits-archive@incubator.apache.org Received: (qmail 77190 invoked by uid 500); 5 Aug 2011 18:02:51 -0000 Mailing-List: contact connectors-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: connectors-dev@incubator.apache.org Delivered-To: mailing list connectors-commits@incubator.apache.org Received: (qmail 77176 invoked by uid 99); 5 Aug 2011 18:02:50 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 05 Aug 2011 18:02:50 +0000 X-ASF-Spam-Status: No, hits=-1999.6 required=5.0 tests=ALL_TRUSTED,FILL_THIS_FORM_FRAUD_PHISH,T_FILL_THIS_FORM_SHORT X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 05 Aug 2011 18:02:46 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 7A76C2388897; Fri, 5 Aug 2011 18:02:25 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1154329 - in /incubator/lcf/trunk: CHANGES.txt connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java tests/cmis/src/test/java/org/apache/manifoldcf/cmis_tests/APISanityTest.java Date: Fri, 05 Aug 2011 18:02:25 -0000 To: connectors-commits@incubator.apache.org From: kwright@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110805180225.7A76C2388897@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: kwright Date: Fri Aug 5 18:02:24 2011 New Revision: 1154329 URL: http://svn.apache.org/viewvc?rev=1154329&view=rev Log: Fix for CONNECTORS-234. Add protocol support to the CMIS connector. Modified: incubator/lcf/trunk/CHANGES.txt incubator/lcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java incubator/lcf/trunk/tests/cmis/src/test/java/org/apache/manifoldcf/cmis_tests/APISanityTest.java Modified: incubator/lcf/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/CHANGES.txt?rev=1154329&r1=1154328&r2=1154329&view=diff ============================================================================== --- incubator/lcf/trunk/CHANGES.txt (original) +++ incubator/lcf/trunk/CHANGES.txt Fri Aug 5 18:02:24 2011 @@ -3,6 +3,9 @@ $Id$ ======================= 0.3-dev ========================= +CONNECTORS-234: Add support for CMIS binding protocol. +(Piergiorgio Lucidi, Karl Wright) + CONNECTORS-235: Fix broken Derby and HSQLDB file-based carrydown data, and added the ability to handle RSS feed description values outside of dechromed content. Modified: incubator/lcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java URL: http://svn.apache.org/viewvc/incubator/lcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java?rev=1154329&r1=1154328&r2=1154329&view=diff ============================================================================== --- incubator/lcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java (original) +++ incubator/lcf/trunk/connectors/cmis/connector/src/main/java/org/apache/manifoldcf/crawler/connectors/cmis/CmisRepositoryConnector.java Fri Aug 5 18:02:24 2011 @@ -73,6 +73,10 @@ public class CmisRepositoryConnector ext public static final String CONFIG_PARAM_ENDPOINT = "endpoint"; public static final String CONFIG_PARAM_REPOSITORY_ID = "repositoryId"; public static final String CONFIG_PARAM_CMIS_QUERY = "cmisQuery"; + public static final String CONFIG_PARAM_BINDING = "binding"; + + private static final String BINDING_ATOM_VALUE = "atom"; + private static final String BINDING_WS_VALUE = "ws"; private static final String JOB_STARTPOINT_NODE_TYPE = "startpoint"; private static final String TAB_LABEL_CMIS_QUERY = "CMIS Query"; @@ -94,6 +98,7 @@ public class CmisRepositoryConnector ext protected String password = null; protected String endpoint = null; protected String repositoryId = null; + protected String binding = null; protected SessionFactory factory = SessionFactoryImpl.newInstance(); protected Map parameters = new HashMap(); @@ -135,9 +140,23 @@ public class CmisRepositoryConnector ext parameters.put(SessionParameter.PASSWORD, password); // connection settings - parameters.put(SessionParameter.ATOMPUB_URL, endpoint); - parameters.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value()); - + if(BINDING_ATOM_VALUE.equals(binding)){ + //AtomPub protocol + parameters.put(SessionParameter.ATOMPUB_URL, endpoint); + parameters.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value()); + } else if(BINDING_WS_VALUE.equals(binding)){ + //Web Services - SOAP - protocol + parameters.put(SessionParameter.BINDING_TYPE, BindingType.WEBSERVICES.value()); + parameters.put(SessionParameter.WEBSERVICES_ACL_SERVICE, endpoint+"/ACLService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE, endpoint+"/DiscoveryService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE, endpoint+"/MultiFilingService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE, endpoint+"/NavigationService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE, endpoint+"/ObjectService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_POLICY_SERVICE, endpoint+"/PolicyService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE, endpoint+"/RelationshipService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE, endpoint+"/RepositoryService?wsdl"); + parameters.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE, endpoint+"/VersioningService?wsdl"); + } // create session if (StringUtils.isEmpty(repositoryId)) { @@ -277,6 +296,7 @@ public class CmisRepositoryConnector ext username = params.getParameter(CONFIG_PARAM_USERNAME); password = params.getParameter(CONFIG_PARAM_PASSWORD); endpoint = params.getParameter(CONFIG_PARAM_ENDPOINT); + binding = params.getParameter(CONFIG_PARAM_BINDING); if (StringUtils.isNotEmpty(params.getParameter(CONFIG_PARAM_REPOSITORY_ID))) repositoryId = params.getParameter(CONFIG_PARAM_REPOSITORY_ID); } @@ -296,6 +316,11 @@ public class CmisRepositoryConnector ext protected void getSession() throws ManifoldCFException, ServiceInterruption { if (session == null) { // Check for parameter validity + + if (StringUtils.isEmpty(binding)) + throw new ManifoldCFException("Parameter " + CONFIG_PARAM_BINDING + + " required but not set"); + if (StringUtils.isEmpty(username)) throw new ManifoldCFException("Parameter " + CONFIG_PARAM_USERNAME + " required but not set"); @@ -613,6 +638,9 @@ public class CmisRepositoryConnector ext + " }\n" + " if (editconnection.endpoint.value == \"\")\n" + " {\n" + " alert(\"The endpoint must be not null\");\n" + " editconnection.endpoint.focus();\n" + " return false;\n" + + " }\n" + " if (editconnection.binding.value == \"\")\n" + " {\n" + + " alert(\"The binding must be not null\");\n" + + " editconnection.binding.focus();\n" + " return false;\n" + " }\n" + "\n" + " return true;\n" + "}\n" + " \n" + "function checkConfigForSave()\n" + "{\n" + " if (editconnection.username.value == \"\")\n" + " {\n" @@ -621,6 +649,9 @@ public class CmisRepositoryConnector ext + " }\n" + " if (editconnection.password.value == \"\")\n" + " {\n" + " alert(\"The password must be not null\");\n" + " editconnection.password.focus();\n" + " return false;\n" + + " }\n" + " if (editconnection.binding.value == \"\")\n" + " {\n" + + " alert(\"The binding must be not null\");\n" + + " editconnection.binding.focus();\n" + " return false;\n" + " }\n" + " if (editconnection.endpoint.value == \"\")\n" + " {\n" + " alert(\"The endpoint must be not null\");\n" + " editconnection.endpoint.focus();\n" + " return false;\n" @@ -637,6 +668,7 @@ public class CmisRepositoryConnector ext String password = parameters.getParameter(CONFIG_PARAM_PASSWORD); String endpoint = parameters.getParameter(CONFIG_PARAM_ENDPOINT); String repositoryId = parameters.getParameter(CONFIG_PARAM_REPOSITORY_ID); + String binding = parameters.getParameter(CONFIG_PARAM_BINDING); if(StringUtils.isEmpty(username)) username = StringUtils.EMPTY; @@ -646,12 +678,28 @@ public class CmisRepositoryConnector ext endpoint = StringUtils.EMPTY; if(StringUtils.isEmpty(repositoryId)) repositoryId = StringUtils.EMPTY; + if(StringUtils.isEmpty(binding)) + binding = BINDING_ATOM_VALUE; out.print("\n" + " \n"); out.print( - "\n" - +"\n" + +""); + + } else if(BINDING_WS_VALUE.equals(binding)) { + out.print("" + +"" + +""); + } + + out.print("\n" + +"\n"); out.print("" + "

Username:Binding:
Username:
Password: