diff --git a/source/sample/JavaCmisTest/.classpath b/source/sample/JavaCmisTest/.classpath new file mode 100755 index 0000000000..35ac4753e0 --- /dev/null +++ b/source/sample/JavaCmisTest/.classpath @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/sample/JavaCmisTest/.project b/source/sample/JavaCmisTest/.project new file mode 100755 index 0000000000..9f9be4b993 --- /dev/null +++ b/source/sample/JavaCmisTest/.project @@ -0,0 +1,19 @@ + + + SimpleAlfrescoCmisServicesUsing + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.jdt.core.javanature + org.eclipse.jem.beaninfo.BeanInfoNature + + diff --git a/source/sample/JavaCmisTest/build.xml b/source/sample/JavaCmisTest/build.xml new file mode 100755 index 0000000000..14dfc6af86 --- /dev/null +++ b/source/sample/JavaCmisTest/build.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/sample/JavaCmisTest/cmis-test.bat b/source/sample/JavaCmisTest/cmis-test.bat new file mode 100755 index 0000000000..2d985cf560 --- /dev/null +++ b/source/sample/JavaCmisTest/cmis-test.bat @@ -0,0 +1,6 @@ +@echo off + +set CLASSPATH=cmis-test.jar +for %%i in (./lib/*.jar) do call set CLASSPATH=./lib/%%~i;%%CLASSPATH%% + +java org.alfresco.cmis.ws.example.SimpleExecutableCmisServicesUtilizer %1 %2 %3 diff --git a/source/sample/JavaCmisTest/cmis-test.sh b/source/sample/JavaCmisTest/cmis-test.sh new file mode 100755 index 0000000000..684015984a --- /dev/null +++ b/source/sample/JavaCmisTest/cmis-test.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +export CLASSPATH=./cmis-test-client.jar +for jar in ./lib/*.jar; do export CLASSPATH=$CLASSPATH:$jar; done + +java org.alfresco.cmis.ws.example.SimpleExecutableCmisServicesUtilizer $1 $2 $3 diff --git a/source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar b/source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar new file mode 100755 index 0000000000..8f5e3fbf37 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/FastInfoset-1.2.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar b/source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar new file mode 100755 index 0000000000..8798353f80 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/XmlSchema-1.4.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/cmis-types.jar b/source/sample/JavaCmisTest/lib/cmis-types.jar new file mode 100755 index 0000000000..4a454022d3 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/cmis-types.jar differ diff --git a/source/sample/JavaCmisTest/lib/commons-logging-1.1.1.jar b/source/sample/JavaCmisTest/lib/commons-logging-1.1.1.jar new file mode 100755 index 0000000000..1deef144cb Binary files /dev/null and b/source/sample/JavaCmisTest/lib/commons-logging-1.1.1.jar differ diff --git a/source/sample/JavaCmisTest/lib/cxf-2.1.2.jar b/source/sample/JavaCmisTest/lib/cxf-2.1.2.jar new file mode 100755 index 0000000000..a4403ea0bd Binary files /dev/null and b/source/sample/JavaCmisTest/lib/cxf-2.1.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-activation_1.1_spec-1.0.2.jar b/source/sample/JavaCmisTest/lib/geronimo-activation_1.1_spec-1.0.2.jar new file mode 100755 index 0000000000..3e75446e47 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-activation_1.1_spec-1.0.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-annotation_1.0_spec-1.1.1.jar b/source/sample/JavaCmisTest/lib/geronimo-annotation_1.0_spec-1.1.1.jar new file mode 100755 index 0000000000..2cdc01be7a Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-annotation_1.0_spec-1.1.1.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-javamail_1.4_spec-1.3.jar b/source/sample/JavaCmisTest/lib/geronimo-javamail_1.4_spec-1.3.jar new file mode 100755 index 0000000000..fc5bef477a Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-javamail_1.4_spec-1.3.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-jaxws_2.1_spec-1.0.jar b/source/sample/JavaCmisTest/lib/geronimo-jaxws_2.1_spec-1.0.jar new file mode 100755 index 0000000000..a7d6b956fd Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-jaxws_2.1_spec-1.0.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-servlet_2.5_spec-1.2.jar b/source/sample/JavaCmisTest/lib/geronimo-servlet_2.5_spec-1.2.jar new file mode 100755 index 0000000000..00a2010036 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-servlet_2.5_spec-1.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-stax-api_1.0_spec-1.0.1.jar b/source/sample/JavaCmisTest/lib/geronimo-stax-api_1.0_spec-1.0.1.jar new file mode 100755 index 0000000000..ab1ee3ba60 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-stax-api_1.0_spec-1.0.1.jar differ diff --git a/source/sample/JavaCmisTest/lib/geronimo-ws-metadata_2.0_spec-1.1.2.jar b/source/sample/JavaCmisTest/lib/geronimo-ws-metadata_2.0_spec-1.1.2.jar new file mode 100755 index 0000000000..c8a795a103 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/geronimo-ws-metadata_2.0_spec-1.1.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/jaxb-api-2.1.jar b/source/sample/JavaCmisTest/lib/jaxb-api-2.1.jar new file mode 100755 index 0000000000..5752f19462 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/jaxb-api-2.1.jar differ diff --git a/source/sample/JavaCmisTest/lib/jaxb-impl-2.1.7.jar b/source/sample/JavaCmisTest/lib/jaxb-impl-2.1.7.jar new file mode 100755 index 0000000000..034c158670 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/jaxb-impl-2.1.7.jar differ diff --git a/source/sample/JavaCmisTest/lib/jaxb-xjc-2.1.7.jar b/source/sample/JavaCmisTest/lib/jaxb-xjc-2.1.7.jar new file mode 100755 index 0000000000..ba2ec468ed Binary files /dev/null and b/source/sample/JavaCmisTest/lib/jaxb-xjc-2.1.7.jar differ diff --git a/source/sample/JavaCmisTest/lib/jetty-6.1.9.jar b/source/sample/JavaCmisTest/lib/jetty-6.1.9.jar new file mode 100755 index 0000000000..59c11213f6 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/jetty-6.1.9.jar differ diff --git a/source/sample/JavaCmisTest/lib/jetty-util-6.1.9.jar b/source/sample/JavaCmisTest/lib/jetty-util-6.1.9.jar new file mode 100755 index 0000000000..aeca351143 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/jetty-util-6.1.9.jar differ diff --git a/source/sample/JavaCmisTest/lib/neethi-2.0.4.jar b/source/sample/JavaCmisTest/lib/neethi-2.0.4.jar new file mode 100755 index 0000000000..87da3f0740 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/neethi-2.0.4.jar differ diff --git a/source/sample/JavaCmisTest/lib/saaj-api-1.3.jar b/source/sample/JavaCmisTest/lib/saaj-api-1.3.jar new file mode 100755 index 0000000000..a75a492616 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/saaj-api-1.3.jar differ diff --git a/source/sample/JavaCmisTest/lib/saaj-impl-1.3.jar b/source/sample/JavaCmisTest/lib/saaj-impl-1.3.jar new file mode 100755 index 0000000000..e1fb59bb0a Binary files /dev/null and b/source/sample/JavaCmisTest/lib/saaj-impl-1.3.jar differ diff --git a/source/sample/JavaCmisTest/lib/spring-beans-2.0.8.jar b/source/sample/JavaCmisTest/lib/spring-beans-2.0.8.jar new file mode 100755 index 0000000000..c82f5e6164 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/spring-beans-2.0.8.jar differ diff --git a/source/sample/JavaCmisTest/lib/spring-context-2.0.8.jar b/source/sample/JavaCmisTest/lib/spring-context-2.0.8.jar new file mode 100755 index 0000000000..9a1ca559a3 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/spring-context-2.0.8.jar differ diff --git a/source/sample/JavaCmisTest/lib/spring-core-2.0.8.jar b/source/sample/JavaCmisTest/lib/spring-core-2.0.8.jar new file mode 100755 index 0000000000..1e939cc469 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/spring-core-2.0.8.jar differ diff --git a/source/sample/JavaCmisTest/lib/spring-web-2.0.8.jar b/source/sample/JavaCmisTest/lib/spring-web-2.0.8.jar new file mode 100755 index 0000000000..7cb2e43b98 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/spring-web-2.0.8.jar differ diff --git a/source/sample/JavaCmisTest/lib/stax-utils-20060502.jar b/source/sample/JavaCmisTest/lib/stax-utils-20060502.jar new file mode 100755 index 0000000000..b7da0ae009 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/stax-utils-20060502.jar differ diff --git a/source/sample/JavaCmisTest/lib/velocity-1.4.jar b/source/sample/JavaCmisTest/lib/velocity-1.4.jar new file mode 100755 index 0000000000..04ec9d2f85 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/velocity-1.4.jar differ diff --git a/source/sample/JavaCmisTest/lib/velocity-dep-1.4.jar b/source/sample/JavaCmisTest/lib/velocity-dep-1.4.jar new file mode 100755 index 0000000000..375712b0e8 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/velocity-dep-1.4.jar differ diff --git a/source/sample/JavaCmisTest/lib/wsdl4j-1.6.2.jar b/source/sample/JavaCmisTest/lib/wsdl4j-1.6.2.jar new file mode 100755 index 0000000000..b9ffc36b9f Binary files /dev/null and b/source/sample/JavaCmisTest/lib/wsdl4j-1.6.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/wss4j-1.5.4.jar b/source/sample/JavaCmisTest/lib/wss4j-1.5.4.jar new file mode 100755 index 0000000000..d269862487 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/wss4j-1.5.4.jar differ diff --git a/source/sample/JavaCmisTest/lib/wstx-asl-3.2.4.jar b/source/sample/JavaCmisTest/lib/wstx-asl-3.2.4.jar new file mode 100755 index 0000000000..700ccf643e Binary files /dev/null and b/source/sample/JavaCmisTest/lib/wstx-asl-3.2.4.jar differ diff --git a/source/sample/JavaCmisTest/lib/xml-resolver-1.2.jar b/source/sample/JavaCmisTest/lib/xml-resolver-1.2.jar new file mode 100755 index 0000000000..e535bdc073 Binary files /dev/null and b/source/sample/JavaCmisTest/lib/xml-resolver-1.2.jar differ diff --git a/source/sample/JavaCmisTest/lib/xmlsec-1.3.0.jar b/source/sample/JavaCmisTest/lib/xmlsec-1.3.0.jar new file mode 100755 index 0000000000..6b69b807ef Binary files /dev/null and b/source/sample/JavaCmisTest/lib/xmlsec-1.3.0.jar differ diff --git a/source/sample/JavaCmisTest/readme.txt b/source/sample/JavaCmisTest/readme.txt new file mode 100755 index 0000000000..04d055f672 --- /dev/null +++ b/source/sample/JavaCmisTest/readme.txt @@ -0,0 +1,22 @@ +This simple example connects to the Alfresco CMIS Server and displays the names +of the folders within the Alfresco root folder called "Company Home". + +The example utilizes the Alfresco CMIS Web Services interfaces. + +The example is stand-alone and includes all of its dependencies. + +Steps to execute the example... + +Pre-requisites: +a) The Alfresco Server must be running for the test client to succeed. +b) ant is required to build the test client + +1) Unpack JavaCmisTest.zip to +2) Run /ant +3) Run cmis-test.bat http://: + +Note: A cmis-test.sh also exists. + +Upon successful completion, a list of folder names is presented. + +The source code for the example is also included. \ No newline at end of file diff --git a/source/test/java/org/alfresco/repo/cmis/ws/example/ExecutableServicesHelper.java b/source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/ExecutableServicesHelper.java old mode 100644 new mode 100755 similarity index 97% rename from source/test/java/org/alfresco/repo/cmis/ws/example/ExecutableServicesHelper.java rename to source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/ExecutableServicesHelper.java index bacf513851..59bca4cda2 --- a/source/test/java/org/alfresco/repo/cmis/ws/example/ExecutableServicesHelper.java +++ b/source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/ExecutableServicesHelper.java @@ -1,229 +1,229 @@ -/* - * Copyright (C) 2005-2008 Alfresco Software Limited. - * - * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - * As a special exception to the terms and conditions of version 2.0 of - * the GPL, you may redistribute this Program in connection with Free/Libre - * and Open Source Software ("FLOSS") applications as described in Alfresco's - * FLOSS exception. You should have recieved a copy of the text describing - * the FLOSS exception, and it is also available here: - * http://www.alfresco.com/legal/licensing" - */ -package org.alfresco.cmis.ws.example; - -import java.io.IOException; -import java.math.BigInteger; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; -import javax.security.auth.callback.UnsupportedCallbackException; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; - -import org.alfresco.repo.cmis.ws.CmisObjectType; -import org.alfresco.repo.cmis.ws.CmisQueryType; -import org.alfresco.repo.cmis.ws.CmisRepositoryEntryType; -import org.alfresco.repo.cmis.ws.EnumTypesOfFileableObjects; -import org.alfresco.repo.cmis.ws.GetChildren; -import org.alfresco.repo.cmis.ws.GetChildrenResponse; -import org.alfresco.repo.cmis.ws.GetFolderParent; -import org.alfresco.repo.cmis.ws.GetRepositories; -import org.alfresco.repo.cmis.ws.GetRepositoryInfo; -import org.alfresco.repo.cmis.ws.GetTypes; -import org.alfresco.repo.cmis.ws.NavigationServicePort; -import org.alfresco.repo.cmis.ws.ObjectFactory; -import org.alfresco.repo.cmis.ws.RepositoryServicePort; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor; -import org.apache.cxf.endpoint.Client; -import org.apache.cxf.frontend.ClientProxy; -import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor; -import org.apache.ws.security.WSConstants; -import org.apache.ws.security.WSPasswordCallback; -import org.apache.ws.security.handler.WSHandlerConstants; - -/** - * This helper-class contain all necessary for SimpleCmisWsTest correct working service-methods - * - * @author Dmitry Velichkevich - */ -public class ExecutableServicesHelper -{ - private static final QName NAVIGATION_SERVICE_NAME = new QName("http://www.cmis.org/ns/1.0", "NavigationService"); - private static final QName REPOSITORY_SERVICE_NAME = new QName("http://www.cmis.org/ns/1.0", "RepositoryService"); - - private static final String NAVIGATION_SERVER_URL_POSTFIX = "/alfresco/cmis/NavigationService?wsdl"; - private static final String REPOSITORY_SERVER_URL_POSTFIX = "/alfresco/cmis/RepositoryService?wsdl"; - - private static final Log LOGGER = LogFactory.getLog(ExecutableServicesHelper.class); - - private String username; - private String password; - private Service navigationServicesFactory; - private Service repositoryServicesFactory; - - /** - * @param username - an existent authentication user name - * @param password - appropriate password for specified user name - * @param serverAddress - IP address (or domain name) and port for the server to connect - * @throws Exception - an caught MalformedURLException in time of server connect URL creation - */ - public ExecutableServicesHelper(String username, String password, String serverAddress) throws Exception - { - this.username = username; - this.password = password; - - try - { - navigationServicesFactory = Service.create(new URL(serverAddress + NAVIGATION_SERVER_URL_POSTFIX), NAVIGATION_SERVICE_NAME); - repositoryServicesFactory = Service.create(new URL(serverAddress + REPOSITORY_SERVER_URL_POSTFIX), REPOSITORY_SERVICE_NAME); - } - catch (MalformedURLException e) - { - throw new Exception("Field to connect to specified URL. Exception Message: " + e.getMessage()); - } - } - - /** - * This method simplify RepositoryServicePort instance creation - * - * @return an instance of RepositoryServicePort - */ - public RepositoryServicePort receiveAuthorizedRepositoryServicePort() - { - RepositoryServicePort result = repositoryServicesFactory.getPort(RepositoryServicePort.class); - - createAuthorizationClient(result); - - return result; - } - - /** - * This method simplify NavigationServicePort instance creation - * - * @return an instance of NavigationServicePort - */ - public NavigationServicePort receiveAuthorizedNavigationServicePort() - { - NavigationServicePort result = navigationServicesFactory.getPort(NavigationServicePort.class); - - createAuthorizationClient(result); - - return result; - } - - /** - * This method simplify configuring of GetChildren CMIS Service query with "ANY" filter, Company Home Object Identificator and FOLDERS_AND_DOCUMENTS - * entity types. - * - * @param servicesPort - NavigationServicePort configured with WSS4J Client instance - * @return List< DocumentOrFolderObjectType> - list of all children elements of Company Home folder - * @throws Exception This exception throws when any CMIS Services operations was failed - */ - public List receiveSpaceContent(NavigationServicePort servicesPort) throws Exception - { - GetChildrenResponse response; - - response = servicesPort.getChildren(configureGetChildrenServiceQuery()); - - if ((response != null) && (response.getObject() != null)) - { - return response.getObject(); - } - else - { - return null; - } - } - - /** - * This method simplify receiving of Object Identificator for Company Home Root Folder - * - * @param servicesPort - RepositoryServicePort instance that configured with WSS4J Client - * @return String representation of Object Identificator - * @throws Exception This exception throws when any CMIS Services operations was failed - */ - public String receiveCompanyHomeObjectId(RepositoryServicePort servicesPort) throws Exception - { - GetRepositoryInfo parameteers = new GetRepositoryInfo(); - parameteers.setRepositoryId(servicesPort.getRepositories().get(0).getRepositoryID()); - - return servicesPort.getRepositoryInfo(parameteers).getRootFolderId(); - } - - /** - * This method simplify creation of authorized Client instance with specified user name and appropriate password - * - * @return - an instance of authorized CMIS Client - */ - protected Client createAuthorizationClient(Object servicePortInstance) - { - Map outInterceptorProperties = configureWss4jProperties(); - - WSS4JOutInterceptor outInterceptor = new WSS4JOutInterceptor(outInterceptorProperties); - - return createAndConfigureClientInstance(servicePortInstance, outInterceptor); - } - - private GetChildren configureGetChildrenServiceQuery() throws Exception - { - ObjectFactory objectFactory = new ObjectFactory(); - - RepositoryServicePort authorizedRepositoryServicePort = receiveAuthorizedRepositoryServicePort(); - - GetChildren requestParameters = objectFactory.createGetChildren(); - requestParameters.setRepositoryId(authorizedRepositoryServicePort.getRepositories().get(0).getRepositoryID()); - requestParameters.setFilter(objectFactory.createGetChildrenFilter("*")); - requestParameters.setMaxItems(objectFactory.createGetChildrenMaxItems(BigInteger.valueOf(Long.MAX_VALUE))); - requestParameters.setFolderId(receiveCompanyHomeObjectId(authorizedRepositoryServicePort)); - requestParameters.setType(objectFactory.createGetChildrenType(EnumTypesOfFileableObjects.ANY)); - - return requestParameters; - } - - private Client createAndConfigureClientInstance(Object servicePortInstance, WSS4JOutInterceptor outInterceptor) - { - Client client = ClientProxy.getClient(servicePortInstance); - client.getEndpoint().getOutInterceptors().add(new SAAJOutInterceptor()); - client.getEndpoint().getOutInterceptors().add(outInterceptor); - - return client; - } - - private Map configureWss4jProperties() - { - Map outInterceptorProperties = new HashMap(); - outInterceptorProperties.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN + " " + WSHandlerConstants.TIMESTAMP); - outInterceptorProperties.put(WSHandlerConstants.USER, username); - outInterceptorProperties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST); - - outInterceptorProperties.put(WSHandlerConstants.PW_CALLBACK_REF, new CallbackHandler() - { - public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException - { - ((WSPasswordCallback) callbacks[0]).setPassword(password); - } - }); - - return outInterceptorProperties; - } -} +/* + * Copyright (C) 2005-2008 Alfresco Software Limited. + * + * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + * As a special exception to the terms and conditions of version 2.0 of + * the GPL, you may redistribute this Program in connection with Free/Libre + * and Open Source Software ("FLOSS") applications as described in Alfresco's + * FLOSS exception. You should have recieved a copy of the text describing + * the FLOSS exception, and it is also available here: + * http://www.alfresco.com/legal/licensing" + */ +package org.alfresco.cmis.ws.example; + +import java.io.IOException; +import java.math.BigInteger; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.security.auth.callback.Callback; +import javax.security.auth.callback.CallbackHandler; +import javax.security.auth.callback.UnsupportedCallbackException; +import javax.xml.namespace.QName; +import javax.xml.ws.Service; + +import org.alfresco.repo.cmis.ws.CmisObjectType; +import org.alfresco.repo.cmis.ws.CmisQueryType; +import org.alfresco.repo.cmis.ws.CmisRepositoryEntryType; +import org.alfresco.repo.cmis.ws.EnumTypesOfFileableObjects; +import org.alfresco.repo.cmis.ws.GetChildren; +import org.alfresco.repo.cmis.ws.GetChildrenResponse; +import org.alfresco.repo.cmis.ws.GetFolderParent; +import org.alfresco.repo.cmis.ws.GetRepositories; +import org.alfresco.repo.cmis.ws.GetRepositoryInfo; +import org.alfresco.repo.cmis.ws.GetTypes; +import org.alfresco.repo.cmis.ws.NavigationServicePort; +import org.alfresco.repo.cmis.ws.ObjectFactory; +import org.alfresco.repo.cmis.ws.RepositoryServicePort; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor; +import org.apache.cxf.endpoint.Client; +import org.apache.cxf.frontend.ClientProxy; +import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor; +import org.apache.ws.security.WSConstants; +import org.apache.ws.security.WSPasswordCallback; +import org.apache.ws.security.handler.WSHandlerConstants; + +/** + * This helper-class contain all necessary for SimpleCmisWsTest correct working service-methods + * + * @author Dmitry Velichkevich + */ +public class ExecutableServicesHelper +{ + private static final QName NAVIGATION_SERVICE_NAME = new QName("http://www.cmis.org/ns/1.0", "NavigationService"); + private static final QName REPOSITORY_SERVICE_NAME = new QName("http://www.cmis.org/ns/1.0", "RepositoryService"); + + private static final String NAVIGATION_SERVER_URL_POSTFIX = "/alfresco/cmis/NavigationService?wsdl"; + private static final String REPOSITORY_SERVER_URL_POSTFIX = "/alfresco/cmis/RepositoryService?wsdl"; + + private static final Log LOGGER = LogFactory.getLog(ExecutableServicesHelper.class); + + private String username; + private String password; + private Service navigationServicesFactory; + private Service repositoryServicesFactory; + + /** + * @param username - an existent authentication user name + * @param password - appropriate password for specified user name + * @param serverAddress - IP address (or domain name) and port for the server to connect + * @throws Exception - an caught MalformedURLException in time of server connect URL creation + */ + public ExecutableServicesHelper(String username, String password, String serverAddress) throws Exception + { + this.username = username; + this.password = password; + + try + { + navigationServicesFactory = Service.create(new URL(serverAddress + NAVIGATION_SERVER_URL_POSTFIX), NAVIGATION_SERVICE_NAME); + repositoryServicesFactory = Service.create(new URL(serverAddress + REPOSITORY_SERVER_URL_POSTFIX), REPOSITORY_SERVICE_NAME); + } + catch (MalformedURLException e) + { + throw new Exception("Field to connect to specified URL. Exception Message: " + e.getMessage()); + } + } + + /** + * This method simplify RepositoryServicePort instance creation + * + * @return an instance of RepositoryServicePort + */ + public RepositoryServicePort receiveAuthorizedRepositoryServicePort() + { + RepositoryServicePort result = repositoryServicesFactory.getPort(RepositoryServicePort.class); + + createAuthorizationClient(result); + + return result; + } + + /** + * This method simplify NavigationServicePort instance creation + * + * @return an instance of NavigationServicePort + */ + public NavigationServicePort receiveAuthorizedNavigationServicePort() + { + NavigationServicePort result = navigationServicesFactory.getPort(NavigationServicePort.class); + + createAuthorizationClient(result); + + return result; + } + + /** + * This method simplify configuring of GetChildren CMIS Service query with "ANY" filter, Company Home Object Identificator and FOLDERS_AND_DOCUMENTS + * entity types. + * + * @param servicesPort - NavigationServicePort configured with WSS4J Client instance + * @return List< DocumentOrFolderObjectType> - list of all children elements of Company Home folder + * @throws Exception This exception throws when any CMIS Services operations was failed + */ + public List receiveSpaceContent(NavigationServicePort servicesPort) throws Exception + { + GetChildrenResponse response; + + response = servicesPort.getChildren(configureGetChildrenServiceQuery()); + + if ((response != null) && (response.getObject() != null)) + { + return response.getObject(); + } + else + { + return null; + } + } + + /** + * This method simplify receiving of Object Identificator for Company Home Root Folder + * + * @param servicesPort - RepositoryServicePort instance that configured with WSS4J Client + * @return String representation of Object Identificator + * @throws Exception This exception throws when any CMIS Services operations was failed + */ + public String receiveCompanyHomeObjectId(RepositoryServicePort servicesPort) throws Exception + { + GetRepositoryInfo parameteers = new GetRepositoryInfo(); + parameteers.setRepositoryId(servicesPort.getRepositories().get(0).getRepositoryID()); + + return servicesPort.getRepositoryInfo(parameteers).getRootFolderId(); + } + + /** + * This method simplify creation of authorized Client instance with specified user name and appropriate password + * + * @return - an instance of authorized CMIS Client + */ + protected Client createAuthorizationClient(Object servicePortInstance) + { + Map outInterceptorProperties = configureWss4jProperties(); + + WSS4JOutInterceptor outInterceptor = new WSS4JOutInterceptor(outInterceptorProperties); + + return createAndConfigureClientInstance(servicePortInstance, outInterceptor); + } + + private GetChildren configureGetChildrenServiceQuery() throws Exception + { + ObjectFactory objectFactory = new ObjectFactory(); + + RepositoryServicePort authorizedRepositoryServicePort = receiveAuthorizedRepositoryServicePort(); + + GetChildren requestParameters = objectFactory.createGetChildren(); + requestParameters.setRepositoryId(authorizedRepositoryServicePort.getRepositories().get(0).getRepositoryID()); + requestParameters.setFilter(objectFactory.createGetChildrenFilter("*")); + requestParameters.setMaxItems(objectFactory.createGetChildrenMaxItems(BigInteger.valueOf(Long.MAX_VALUE))); + requestParameters.setFolderId(receiveCompanyHomeObjectId(authorizedRepositoryServicePort)); + requestParameters.setType(objectFactory.createGetChildrenType(EnumTypesOfFileableObjects.ANY)); + + return requestParameters; + } + + private Client createAndConfigureClientInstance(Object servicePortInstance, WSS4JOutInterceptor outInterceptor) + { + Client client = ClientProxy.getClient(servicePortInstance); + client.getEndpoint().getOutInterceptors().add(new SAAJOutInterceptor()); + client.getEndpoint().getOutInterceptors().add(outInterceptor); + + return client; + } + + private Map configureWss4jProperties() + { + Map outInterceptorProperties = new HashMap(); + outInterceptorProperties.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN + " " + WSHandlerConstants.TIMESTAMP); + outInterceptorProperties.put(WSHandlerConstants.USER, username); + outInterceptorProperties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST); + + outInterceptorProperties.put(WSHandlerConstants.PW_CALLBACK_REF, new CallbackHandler() + { + public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException + { + ((WSPasswordCallback) callbacks[0]).setPassword(password); + } + }); + + return outInterceptorProperties; + } +} diff --git a/source/test/java/org/alfresco/repo/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java b/source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java old mode 100644 new mode 100755 similarity index 97% rename from source/test/java/org/alfresco/repo/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java rename to source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java index bacc9a9f32..247ae59bda --- a/source/test/java/org/alfresco/repo/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java +++ b/source/sample/JavaCmisTest/src/org/alfresco/cmis/ws/example/SimpleExecutableCmisServicesUtilizer.java @@ -1,123 +1,123 @@ -/* - * Copyright (C) 2005-2008 Alfresco Software Limited. - * - * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - * As a special exception to the terms and conditions of version 2.0 of - * the GPL, you may redistribute this Program in connection with Free/Libre - * and Open Source Software ("FLOSS") applications as described in Alfresco's - * FLOSS exception. You should have recieved a copy of the text describing - * the FLOSS exception, and it is also available here: - * http://www.alfresco.com/legal/licensing" - */ -package org.alfresco.cmis.ws.example; - -import java.util.List; - -import org.alfresco.repo.cmis.ws.CmisObjectType; -import org.alfresco.repo.cmis.ws.CmisPropertiesType; -import org.alfresco.repo.cmis.ws.CmisProperty; -import org.alfresco.repo.cmis.ws.CmisPropertyString; - -/** - * This class executes simple processing for prompting server address and user name and password for authentication this user on specified server. After successful connection this - * class print contents of Company Home.
- *
- * This class expects next command-line parameters: - *
    - *
  • Server Address - with form: (IP_ADDRESS|DOMAIN_NAME):PORT;
  • - *
  • Username - login name of the existent user;
  • - *
  • Password - appropriate password for specified user.
  • - *
- * Example: 192.168.0.1:8080 admin admin - authenticate an user as admin on http://192.168.0.1:8080/alfresco/ - * server - * - * @author Dmitry Velichkevich - */ -public class SimpleExecutableCmisServicesUtilizer -{ - /** - * Executable entry point - represents main life cycle - * - * @param args - not used - * @see SimpleCmisWsTest description - */ - public static void main(String[] args) - { - String username = null; - String password = null; - String serverUrl = null; - - if (args.length != 3) - { - System.out.println("Usage: cmis-test.bat server_url username password"); - System.out.println("Example : cmis-test.bat http://localhost:8080 admin admin"); - return; - } - else - { - serverUrl = args[0]; - username = args[1]; - password = args[2]; - } - - ExecutableServicesHelper servicesHelper; - - try - { - servicesHelper = new ExecutableServicesHelper(username, password, serverUrl); - } - catch (Exception e) - { - System.out.println("Can't connect to specified server. Message: " + e.getMessage()); - return; - } - - List response; - - try - { - response = servicesHelper.receiveSpaceContent(servicesHelper.receiveAuthorizedNavigationServicePort()); - } - catch (Exception e) - { - System.out.println("Can't receive content of Company Home caused: " + e.getMessage()); - e.printStackTrace(); - return; - } - - System.out.println("Outing Company Home contents:"); - for (CmisObjectType item : response) - { - boolean thisIsFolder = ((CmisPropertyString) getCmisProperty(item.getProperties(), "BaseType")).getValue().contains("folder"); - String itemName = ((CmisPropertyString) getCmisProperty(item.getProperties(), "Name")).getValue(); - - System.out.println(((thisIsFolder) ? ("[") : ("")) + itemName + ((thisIsFolder) ? ("]") : (""))); - } - } - - private static CmisProperty getCmisProperty(CmisPropertiesType properties, String cmisPropertyName) - { - for (CmisProperty cmisProperty : properties.getProperty()) - { - if (cmisProperty.getName().equalsIgnoreCase(cmisPropertyName)) - { - return cmisProperty; - } - } - - return null; - } -} +/* + * Copyright (C) 2005-2008 Alfresco Software Limited. + * + * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + * As a special exception to the terms and conditions of version 2.0 of + * the GPL, you may redistribute this Program in connection with Free/Libre + * and Open Source Software ("FLOSS") applications as described in Alfresco's + * FLOSS exception. You should have recieved a copy of the text describing + * the FLOSS exception, and it is also available here: + * http://www.alfresco.com/legal/licensing" + */ +package org.alfresco.cmis.ws.example; + +import java.util.List; + +import org.alfresco.repo.cmis.ws.CmisObjectType; +import org.alfresco.repo.cmis.ws.CmisPropertiesType; +import org.alfresco.repo.cmis.ws.CmisProperty; +import org.alfresco.repo.cmis.ws.CmisPropertyString; + +/** + * This class executes simple processing for prompting server address and user name and password for authentication this user on specified server. After successful connection this + * class print contents of Company Home.
+ *
+ * This class expects next command-line parameters:
+ *
    + *
  • Server Address - with form: (IP_ADDRESS|DOMAIN_NAME):PORT;
  • + *
  • Username - login name of the existent user;
  • + *
  • Password - appropriate password for specified user.
  • + *
+ * Example: 192.168.0.1:8080 admin admin - authenticate an user as admin on http://192.168.0.1:8080/alfresco/ + * server + * + * @author Dmitry Velichkevich + */ +public class SimpleExecutableCmisServicesUtilizer +{ + /** + * Executable entry point - represents main life cycle + * + * @param args - not used + * @see SimpleCmisWsTest description + */ + public static void main(String[] args) + { + String username = null; + String password = null; + String serverUrl = null; + + if (args.length != 3) + { + System.out.println("Usage: cmis-test.bat server_url username password"); + System.out.println("Example : cmis-test.bat http://localhost:8080 admin admin"); + return; + } + else + { + serverUrl = args[0]; + username = args[1]; + password = args[2]; + } + + ExecutableServicesHelper servicesHelper; + + try + { + servicesHelper = new ExecutableServicesHelper(username, password, serverUrl); + } + catch (Exception e) + { + System.out.println("Can't connect to specified server. Message: " + e.getMessage()); + return; + } + + List response; + + try + { + response = servicesHelper.receiveSpaceContent(servicesHelper.receiveAuthorizedNavigationServicePort()); + } + catch (Exception e) + { + System.out.println("Can't receive content of Company Home caused: " + e.getMessage()); + e.printStackTrace(); + return; + } + + System.out.println("Outing Company Home contents:"); + for (CmisObjectType item : response) + { + boolean thisIsFolder = ((CmisPropertyString) getCmisProperty(item.getProperties(), "BaseType")).getValue().contains("folder"); + String itemName = ((CmisPropertyString) getCmisProperty(item.getProperties(), "Name")).getValue(); + + System.out.println(((thisIsFolder) ? ("[") : ("")) + itemName + ((thisIsFolder) ? ("]") : (""))); + } + } + + private static CmisProperty getCmisProperty(CmisPropertiesType properties, String cmisPropertyName) + { + for (CmisProperty cmisProperty : properties.getProperty()) + { + if (cmisProperty.getName().equalsIgnoreCase(cmisPropertyName)) + { + return cmisProperty; + } + } + + return null; + } +} diff --git a/source/sample/WcfCmisTest/CmisTest.exe b/source/sample/WcfCmisTest/CmisTest.exe new file mode 100755 index 0000000000..c3a7cdfae7 Binary files /dev/null and b/source/sample/WcfCmisTest/CmisTest.exe differ diff --git a/source/sample/WcfCmisTest/CmisTest.exe.config b/source/sample/WcfCmisTest/CmisTest.exe.config new file mode 100755 index 0000000000..37fb6a4f9b --- /dev/null +++ b/source/sample/WcfCmisTest/CmisTest.exe.config @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/sample/WcfCmisTest/src/CmisTest.csproj b/source/sample/WcfCmisTest/src/CmisTest.csproj new file mode 100755 index 0000000000..f09df85176 --- /dev/null +++ b/source/sample/WcfCmisTest/src/CmisTest.csproj @@ -0,0 +1,117 @@ + + + + Debug + AnyCPU + 9.0.21022 + 2.0 + {AA3B7140-D34D-430B-BAF8-29E8220263CA} + Exe + Properties + CmisTest + CmisTest + v3.5 + 512 + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + 3.5 + + + 3.0 + + + 3.0 + + + + 3.5 + + + + 3.5 + + + 3.5 + + + + + + + + + + + + + + + + + + + + False + .NET Framework 2.0 %28x86%29 + false + + + False + .NET Framework 3.0 %28x86%29 + false + + + False + .NET Framework 3.5 + true + + + False + Windows Installer 3.1 + true + + + + + \ No newline at end of file diff --git a/source/sample/WcfCmisTest/src/NavigationService.cs b/source/sample/WcfCmisTest/src/NavigationService.cs new file mode 100755 index 0000000000..e9e386dfa0 --- /dev/null +++ b/source/sample/WcfCmisTest/src/NavigationService.cs @@ -0,0 +1,581 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:2.0.50727.1433 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +[assembly: System.Runtime.Serialization.ContractNamespaceAttribute("http://www.cmis.org/ns/1.0", ClrNamespace="www.cmis.org.ns._1._01")] + + + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.ServiceContractAttribute(Namespace="http://www.cmis.org/ns/1.0", ConfigurationName="NavigationServicePort")] +public interface NavigationServicePort +{ + + // CODEGEN: Parameter 'documentAndFolderCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="documentAndFolderCollection")] + getDescendantsResponse getDescendants(getDescendants request); + + // CODEGEN: Parameter 'documentCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="documentCollection")] + getCheckedoutDocsResponse getCheckedoutDocs(getCheckedoutDocs request); + + // CODEGEN: Parameter 'folderCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="folderCollection")] + getDocumentParentsResponse getDocumentParents(getDocumentParents request); + + // CODEGEN: Parameter 'documentAndFolderCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="documentAndFolderCollection")] + getChildrenResponse getChildren(getChildren request); + + // CODEGEN: Parameter 'folderCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="folderCollection")] + getFolderParentResponse getFolderParent(getFolderParent request); + + // CODEGEN: Parameter 'documentCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(repositoryInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeDefinitionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="documentCollection")] + getUnfiledDocsResponse getUnfiledDocs(getUnfiledDocs request); +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum typesOfObjectsEnum +{ + + /// + FoldersAndDocumets, + + /// + Folders, + + /// + Documents, +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getDescendants", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getDescendants +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string folderId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public typesOfObjectsEnum type; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + public object depth; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=3)] + public string filter; + + public getDescendants() + { + } + + public getDescendants(string folderId, typesOfObjectsEnum type, object depth, string filter) + { + this.folderId = folderId; + this.type = type; + this.depth = depth; + this.filter = filter; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getDescendantsResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getDescendantsResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentOrFolderObjectType[] documentAndFolderCollection; + + public getDescendantsResponse() + { + } + + public getDescendantsResponse(documentOrFolderObjectType[] documentAndFolderCollection) + { + this.documentAndFolderCollection = documentAndFolderCollection; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getCheckedoutDocs", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getCheckedoutDocs +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string filter; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string maxItems; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string skipCount; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=3)] + public string folderID; + + public getCheckedoutDocs() + { + } + + public getCheckedoutDocs(string filter, string maxItems, string skipCount, string folderID) + { + this.filter = filter; + this.maxItems = maxItems; + this.skipCount = skipCount; + this.folderID = folderID; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getCheckedoutDocsResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getCheckedoutDocsResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentObjectType[] documentCollection; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public bool hasMoreItems; + + public getCheckedoutDocsResponse() + { + } + + public getCheckedoutDocsResponse(documentObjectType[] documentCollection, bool hasMoreItems) + { + this.documentCollection = documentCollection; + this.hasMoreItems = hasMoreItems; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getDocumentParents", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getDocumentParents +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string documentId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public string filter; + + public getDocumentParents() + { + } + + public getDocumentParents(string documentId, string filter) + { + this.documentId = documentId; + this.filter = filter; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getDocumentParentsResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getDocumentParentsResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public folderObjectType[] folderCollection; + + public getDocumentParentsResponse() + { + } + + public getDocumentParentsResponse(folderObjectType[] folderCollection) + { + this.folderCollection = folderCollection; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getChildren", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getChildren +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string folderId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public typesOfObjectsEnum type; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + public string filter; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=3)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string maxItems; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=4)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string skipCount; + + public getChildren() + { + } + + public getChildren(string folderId, typesOfObjectsEnum type, string filter, string maxItems, string skipCount) + { + this.folderId = folderId; + this.type = type; + this.filter = filter; + this.maxItems = maxItems; + this.skipCount = skipCount; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getChildrenResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getChildrenResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentOrFolderObjectType[] documentAndFolderCollection; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public bool hasMoreItems; + + public getChildrenResponse() + { + } + + public getChildrenResponse(documentOrFolderObjectType[] documentAndFolderCollection, bool hasMoreItems) + { + this.documentAndFolderCollection = documentAndFolderCollection; + this.hasMoreItems = hasMoreItems; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getFolderParent", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getFolderParent +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string folderId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public string filter; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + public bool returnToRoot; + + public getFolderParent() + { + } + + public getFolderParent(string folderId, string filter, bool returnToRoot) + { + this.folderId = folderId; + this.filter = filter; + this.returnToRoot = returnToRoot; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getFolderParentResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getFolderParentResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public folderObjectType[] folderCollection; + + public getFolderParentResponse() + { + } + + public getFolderParentResponse(folderObjectType[] folderCollection) + { + this.folderCollection = folderCollection; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getUnfiledDocs", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getUnfiledDocs +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string filter; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string maxDocuments; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string skipCount; + + public getUnfiledDocs() + { + } + + public getUnfiledDocs(string filter, string maxDocuments, string skipCount) + { + this.filter = filter; + this.maxDocuments = maxDocuments; + this.skipCount = skipCount; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getUnfiledDocsResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getUnfiledDocsResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentObjectType[] documentCollection; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public bool hasMoreItems; + + public getUnfiledDocsResponse() + { + } + + public getUnfiledDocsResponse(documentObjectType[] documentCollection, bool hasMoreItems) + { + this.documentCollection = documentCollection; + this.hasMoreItems = hasMoreItems; + } +} + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public interface NavigationServicePortChannel : NavigationServicePort, System.ServiceModel.IClientChannel +{ +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public partial class NavigationServicePortClient : System.ServiceModel.ClientBase, NavigationServicePort +{ + + public NavigationServicePortClient() + { + } + + public NavigationServicePortClient(string endpointConfigurationName) : + base(endpointConfigurationName) + { + } + + public NavigationServicePortClient(string endpointConfigurationName, string remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public NavigationServicePortClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public NavigationServicePortClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getDescendantsResponse NavigationServicePort.getDescendants(getDescendants request) + { + return base.Channel.getDescendants(request); + } + + public documentOrFolderObjectType[] getDescendants(string folderId, typesOfObjectsEnum type, object depth, string filter) + { + getDescendants inValue = new getDescendants(); + inValue.folderId = folderId; + inValue.type = type; + inValue.depth = depth; + inValue.filter = filter; + getDescendantsResponse retVal = ((NavigationServicePort)(this)).getDescendants(inValue); + return retVal.documentAndFolderCollection; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getCheckedoutDocsResponse NavigationServicePort.getCheckedoutDocs(getCheckedoutDocs request) + { + return base.Channel.getCheckedoutDocs(request); + } + + public documentObjectType[] getCheckedoutDocs(string filter, string maxItems, string skipCount, string folderID, out bool hasMoreItems) + { + getCheckedoutDocs inValue = new getCheckedoutDocs(); + inValue.filter = filter; + inValue.maxItems = maxItems; + inValue.skipCount = skipCount; + inValue.folderID = folderID; + getCheckedoutDocsResponse retVal = ((NavigationServicePort)(this)).getCheckedoutDocs(inValue); + hasMoreItems = retVal.hasMoreItems; + return retVal.documentCollection; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getDocumentParentsResponse NavigationServicePort.getDocumentParents(getDocumentParents request) + { + return base.Channel.getDocumentParents(request); + } + + public folderObjectType[] getDocumentParents(string documentId, string filter) + { + getDocumentParents inValue = new getDocumentParents(); + inValue.documentId = documentId; + inValue.filter = filter; + getDocumentParentsResponse retVal = ((NavigationServicePort)(this)).getDocumentParents(inValue); + return retVal.folderCollection; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getChildrenResponse NavigationServicePort.getChildren(getChildren request) + { + return base.Channel.getChildren(request); + } + + public documentOrFolderObjectType[] getChildren(string folderId, typesOfObjectsEnum type, string filter, string maxItems, string skipCount, out bool hasMoreItems) + { + getChildren inValue = new getChildren(); + inValue.folderId = folderId; + inValue.type = type; + inValue.filter = filter; + inValue.maxItems = maxItems; + inValue.skipCount = skipCount; + getChildrenResponse retVal = ((NavigationServicePort)(this)).getChildren(inValue); + hasMoreItems = retVal.hasMoreItems; + return retVal.documentAndFolderCollection; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getFolderParentResponse NavigationServicePort.getFolderParent(getFolderParent request) + { + return base.Channel.getFolderParent(request); + } + + public folderObjectType[] getFolderParent(string folderId, string filter, bool returnToRoot) + { + getFolderParent inValue = new getFolderParent(); + inValue.folderId = folderId; + inValue.filter = filter; + inValue.returnToRoot = returnToRoot; + getFolderParentResponse retVal = ((NavigationServicePort)(this)).getFolderParent(inValue); + return retVal.folderCollection; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getUnfiledDocsResponse NavigationServicePort.getUnfiledDocs(getUnfiledDocs request) + { + return base.Channel.getUnfiledDocs(request); + } + + public documentObjectType[] getUnfiledDocs(string filter, string maxDocuments, string skipCount, out bool hasMoreItems) + { + getUnfiledDocs inValue = new getUnfiledDocs(); + inValue.filter = filter; + inValue.maxDocuments = maxDocuments; + inValue.skipCount = skipCount; + getUnfiledDocsResponse retVal = ((NavigationServicePort)(this)).getUnfiledDocs(inValue); + hasMoreItems = retVal.hasMoreItems; + return retVal.documentCollection; + } +} + diff --git a/source/sample/WcfCmisTest/src/ObjectService.cs b/source/sample/WcfCmisTest/src/ObjectService.cs new file mode 100755 index 0000000000..0c528c8866 --- /dev/null +++ b/source/sample/WcfCmisTest/src/ObjectService.cs @@ -0,0 +1,643 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:2.0.50727.1433 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +[assembly: System.Runtime.Serialization.ContractNamespaceAttribute("http://www.cmis.org/ns/1.0", ClrNamespace="www.cmis.org.ns._1._01")] + + + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.ServiceContractAttribute(Namespace="http://www.cmis.org/ns/1.0", ConfigurationName="ObjectServicePort")] +public interface ObjectServicePort +{ + + // CODEGEN: Parameter 'failedToDelete' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [return: System.ServiceModel.MessageParameterAttribute(Name="failedToDelete")] + deleteTreeResponse deleteTree(deleteTree request); + + // CODEGEN: Parameter 'allowableActionCollection' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [return: System.ServiceModel.MessageParameterAttribute(Name="allowableActionCollection")] + getAllowableActionsResponse getAllowableActions(getAllowableActions request); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="NotInFolderException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + void moveObject(string objectId, string folderId, string sourceFolderId); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StorageException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StreamNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + void deleteContentStream(string documentId); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="TypeNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="objectId")] + string createFolder(string typeId, folderObjectType propertyCollection, string folderId); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + void updateProperties(string objectId, string changeToken, documentFolderOrRelationshipObjectType @object); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StorageException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StreamNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="TypeNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FolderNotValidException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="objectId")] + string createDocument(string typeId, documentObjectType propertyCollection, string folderId, contentStream contentStream, versioningStateEnum versioningState); + + // CODEGEN: Parameter 'stream' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StorageException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StreamNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OffsetException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="stream")] + getContentStreamResponse getContentStream(getContentStream request); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="TypeNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="objectId")] + string createRelationship(string typeId, relationshipObjectType propertyCollection, string sourceObjectId, string targetObjectId); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StorageException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="StreamNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="AlreadyExistsException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + void setContentStream(string documentId, bool overwriteFlag, contentStream contentStream); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConstraintViolationException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + void deleteObject(string objectId); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="InvalidArgumentException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="FilterNotValidException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="RuntimeException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ObjectNotFoundException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="PermissionDeniedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="OperationNotSupportedException")] + [System.ServiceModel.FaultContractAttribute(typeof(object), Action="", Name="ConcurrencyException")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="object")] + documentFolderOrRelationshipObjectType getProperties(string objectId, versionEnum returnVersion, string filter); +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum deleteWithMultiFilingEnum +{ + + /// + unfile, + + /// + deleteSingleFiledDocs, + + /// + delete, +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="deleteTree", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class deleteTree +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string folderId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public deleteWithMultiFilingEnum unfileMultiFiledDocuments; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + public bool continueOnFailure; + + public deleteTree() + { + } + + public deleteTree(string folderId, deleteWithMultiFilingEnum unfileMultiFiledDocuments, bool continueOnFailure) + { + this.folderId = folderId; + this.unfileMultiFiledDocuments = unfileMultiFiledDocuments; + this.continueOnFailure = continueOnFailure; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="deleteTreeResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class deleteTreeResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("objectId", IsNullable=false)] + public string[] failedToDelete; + + public deleteTreeResponse() + { + } + + public deleteTreeResponse(string[] failedToDelete) + { + this.failedToDelete = failedToDelete; + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum allowableActionsEnum +{ + + /// + viewContent, + + /// + updateProperties, + + /// + setContent, + + /// + removeFromFolder, + + /// + move, + + /// + getRelationships, + + /// + getProperties, + + /// + getParents, + + /// + getChilderen, + + /// + getAllVersions, + + /// + deleteVersion, + + /// + deleteContent, + + /// + delete, + + /// + checkOut, + + /// + checkIn, + + /// + cancelCheckOut, + + /// + addToFolder, +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getAllowableActions", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getAllowableActions +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string objectId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public string asUser; + + public getAllowableActions() + { + } + + public getAllowableActions(string objectId, string asUser) + { + this.objectId = objectId; + this.asUser = asUser; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getAllowableActionsResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getAllowableActionsResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("action", IsNullable=false)] + public allowableActionsEnum[] allowableActionCollection; + + public getAllowableActionsResponse() + { + } + + public getAllowableActionsResponse(allowableActionsEnum[] allowableActionCollection) + { + this.allowableActionCollection = allowableActionCollection; + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://www.cmis.org/ns/1.0")] +public partial class contentStream +{ + + private string mimeTypeField; + + private string nameField; + + private string uriField; + + private byte[] streamField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string mimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string uri + { + get + { + return this.uriField; + } + set + { + this.uriField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] stream + { + get + { + return this.streamField; + } + set + { + this.streamField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum versioningStateEnum +{ + + /// + checkedOut, + + /// + checkedInMinor, + + /// + checkedInMajor, +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getContentStream", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getContentStream +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public string documentId; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string offset; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string length; + + public getContentStream() + { + } + + public getContentStream(string documentId, string offset, string length) + { + this.documentId = documentId; + this.offset = offset; + this.length = length; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getContentStreamResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getContentStreamResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")] + public byte[] stream; + + public getContentStreamResponse() + { + } + + public getContentStreamResponse(byte[] stream) + { + this.stream = stream; + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum versionEnum +{ + + /// + @this, + + /// + latestMajor, + + /// + latest, +} + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public interface ObjectServicePortChannel : ObjectServicePort, System.ServiceModel.IClientChannel +{ +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public partial class ObjectServicePortClient : System.ServiceModel.ClientBase, ObjectServicePort +{ + + public ObjectServicePortClient() + { + } + + public ObjectServicePortClient(string endpointConfigurationName) : + base(endpointConfigurationName) + { + } + + public ObjectServicePortClient(string endpointConfigurationName, string remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public ObjectServicePortClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public ObjectServicePortClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + deleteTreeResponse ObjectServicePort.deleteTree(deleteTree request) + { + return base.Channel.deleteTree(request); + } + + public string[] deleteTree(string folderId, deleteWithMultiFilingEnum unfileMultiFiledDocuments, bool continueOnFailure) + { + deleteTree inValue = new deleteTree(); + inValue.folderId = folderId; + inValue.unfileMultiFiledDocuments = unfileMultiFiledDocuments; + inValue.continueOnFailure = continueOnFailure; + deleteTreeResponse retVal = ((ObjectServicePort)(this)).deleteTree(inValue); + return retVal.failedToDelete; + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getAllowableActionsResponse ObjectServicePort.getAllowableActions(getAllowableActions request) + { + return base.Channel.getAllowableActions(request); + } + + public allowableActionsEnum[] getAllowableActions(string objectId, string asUser) + { + getAllowableActions inValue = new getAllowableActions(); + inValue.objectId = objectId; + inValue.asUser = asUser; + getAllowableActionsResponse retVal = ((ObjectServicePort)(this)).getAllowableActions(inValue); + return retVal.allowableActionCollection; + } + + public void moveObject(string objectId, string folderId, string sourceFolderId) + { + base.Channel.moveObject(objectId, folderId, sourceFolderId); + } + + public void deleteContentStream(string documentId) + { + base.Channel.deleteContentStream(documentId); + } + + public string createFolder(string typeId, folderObjectType propertyCollection, string folderId) + { + return base.Channel.createFolder(typeId, propertyCollection, folderId); + } + + public void updateProperties(string objectId, string changeToken, documentFolderOrRelationshipObjectType @object) + { + base.Channel.updateProperties(objectId, changeToken, @object); + } + + public string createDocument(string typeId, documentObjectType propertyCollection, string folderId, contentStream contentStream, versioningStateEnum versioningState) + { + return base.Channel.createDocument(typeId, propertyCollection, folderId, contentStream, versioningState); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getContentStreamResponse ObjectServicePort.getContentStream(getContentStream request) + { + return base.Channel.getContentStream(request); + } + + public byte[] getContentStream(string documentId, string offset, string length) + { + getContentStream inValue = new getContentStream(); + inValue.documentId = documentId; + inValue.offset = offset; + inValue.length = length; + getContentStreamResponse retVal = ((ObjectServicePort)(this)).getContentStream(inValue); + return retVal.stream; + } + + public string createRelationship(string typeId, relationshipObjectType propertyCollection, string sourceObjectId, string targetObjectId) + { + return base.Channel.createRelationship(typeId, propertyCollection, sourceObjectId, targetObjectId); + } + + public void setContentStream(string documentId, bool overwriteFlag, contentStream contentStream) + { + base.Channel.setContentStream(documentId, overwriteFlag, contentStream); + } + + public void deleteObject(string objectId) + { + base.Channel.deleteObject(objectId); + } + + public documentFolderOrRelationshipObjectType getProperties(string objectId, versionEnum returnVersion, string filter) + { + return base.Channel.getProperties(objectId, returnVersion, filter); + } +} +namespace www.cmis.org.ns._1._01 +{ + using System.Runtime.Serialization; + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.CollectionDataContractAttribute(Name="failedToDelete", Namespace="http://www.cmis.org/ns/1.0", ItemName="objectId")] + public class failedToDelete : System.Collections.Generic.List + { + } + + +} diff --git a/source/sample/WcfCmisTest/src/Program.cs b/source/sample/WcfCmisTest/src/Program.cs new file mode 100755 index 0000000000..5effcd2f45 --- /dev/null +++ b/source/sample/WcfCmisTest/src/Program.cs @@ -0,0 +1,118 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Web.Services; +using System.Web.Services.Protocols; +using System.Net; +using System.ServiceModel; +using System.ServiceModel.Security; +using System.ServiceModel.Security.Tokens; +using System.Security.Cryptography.X509Certificates; +using System.Net.Security; +using System.ServiceModel.Channels; +using www.cmis.org.ns._1._01; + +namespace CmisTest +{ + class Program + { + + static void Main(string[] args) + { + ServicePointManager.ServerCertificateValidationCallback = delegate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) + { + return true; + }; + + RepositoryServicePortClient repositoryService = new RepositoryServicePortClient(); + repositoryService.ClientCredentials.UserName.UserName = "admin"; + repositoryService.ClientCredentials.UserName.Password = "admin"; + + NavigationServicePortClient navigationService = new NavigationServicePortClient(); + navigationService.ClientCredentials.UserName.UserName = "admin"; + navigationService.ClientCredentials.UserName.Password = "admin"; + + ObjectServicePortClient objectService = new ObjectServicePortClient(); + objectService.ClientCredentials.UserName.UserName = "admin"; + objectService.ClientCredentials.UserName.Password = "admin"; + + folderObjectType rootFolder = repositoryService.getRootFolder("*"); + Console.WriteLine("Root folder OID = {0}\n", rootFolder.objectID); + + try + { + repositoryService.getRootFolder("a"); + } + catch (FaultException e) + { + Console.WriteLine(e.Message); + } + + + try + { + objectService.getProperties(rootFolder + "1", versionEnum.@this, "*"); + } + catch (FaultException e) + { + Console.WriteLine(e.Message); + } + + bool hasMoreItems; + documentOrFolderObjectType[] rootFolderListing = navigationService.getChildren(rootFolder.objectID, typesOfObjectsEnum.FoldersAndDocumets, "*", null, null, + out hasMoreItems); + + string guestFolderOID = null; + + Console.WriteLine("Root folder listing: "); + foreach (documentOrFolderObjectType docFolder in rootFolderListing) + { + if (docFolder.name == "Guest Home") + { + guestFolderOID = docFolder.objectID; + } + + Console.WriteLine(docFolder.name); + } + + if (guestFolderOID != null) + { + Console.Write("\nGet children for bad OID, error : "); + try + { + navigationService.getChildren(guestFolderOID + 1, typesOfObjectsEnum.FoldersAndDocumets, "*", null, null, + out hasMoreItems); + } + catch (FaultException e) + { + Console.WriteLine(e.Message); + } + + documentOrFolderObjectType[] guestFolderListing = + navigationService.getChildren(guestFolderOID, typesOfObjectsEnum.FoldersAndDocumets, "*", null, null, + out hasMoreItems); + + string alfrescoTutOID = null; + + Console.WriteLine("\nGuest folder listing: "); + foreach (documentOrFolderObjectType docFolder in guestFolderListing) + { + if (docFolder.name == "Alfresco-Tutorial.pdf") + { + alfrescoTutOID = docFolder.objectID; + } + + Console.WriteLine(docFolder.name); + } + + if (alfrescoTutOID != null) + { + byte[] bytes = objectService.getContentStream(alfrescoTutOID, null, "100"); + Console.WriteLine("\nAlfresco-Tutorial.pdf retrieved"); + } + } + + } + } +} diff --git a/source/sample/WcfCmisTest/src/Properties/AssemblyInfo.cs b/source/sample/WcfCmisTest/src/Properties/AssemblyInfo.cs new file mode 100755 index 0000000000..1bdce80863 --- /dev/null +++ b/source/sample/WcfCmisTest/src/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("CmisTest")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("UTL")] +[assembly: AssemblyProduct("CmisTest")] +[assembly: AssemblyCopyright("Copyright © UTL 2008")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("43cb4231-e775-417e-bc2c-4fd2d6ed15ea")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/source/sample/WcfCmisTest/src/RepositoryService.cs b/source/sample/WcfCmisTest/src/RepositoryService.cs new file mode 100755 index 0000000000..dbc4128537 --- /dev/null +++ b/source/sample/WcfCmisTest/src/RepositoryService.cs @@ -0,0 +1,1996 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:2.0.50727.1433 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +[assembly: System.Runtime.Serialization.ContractNamespaceAttribute("http://www.cmis.org/ns/1.0", ClrNamespace="www.cmis.org.ns._1._01")] + + + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.ServiceContractAttribute(Namespace="http://www.cmis.org/ns/1.0", ConfigurationName="RepositoryServicePort")] +public interface RepositoryServicePort +{ + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="InvalidArgumentFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="PermissionDeniedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="OperationNotSupportedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="ConcurrencyFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="RuntimeFault")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="repositoryInfo")] + repositoryInfoType getRepositoryInfo(); + + // CODEGEN: Parameter 'types' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlArrayItemAttribute'. + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="InvalidArgumentFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="PermissionDeniedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="OperationNotSupportedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="ConcurrencyFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="RuntimeFault")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="types")] + getTypesResponse getTypes(getTypesRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="InvalidArgumentFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="PermissionDeniedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="OperationNotSupportedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="ConcurrencyFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="RuntimeFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="TypeNotFoundFault")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="type")] + objectTypeDefinitionType getTypeDefinition(out bool canCreateInstances, string typeId, bool includeInheritedProperties); + + [System.ServiceModel.OperationContractAttribute(Action="", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="InvalidArgumentFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="PermissionDeniedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="OperationNotSupportedFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="ConcurrencyFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="RuntimeFault")] + [System.ServiceModel.FaultContractAttribute(typeof(www.cmis.org.ns._1._01.basicFault), Action="", Name="FilterNotValidFault")] + [System.ServiceModel.XmlSerializerFormatAttribute()] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(objectTypeBase))] + [return: System.ServiceModel.MessageParameterAttribute(Name="rootFolder")] + folderObjectType getRootFolder(string filter); +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class repositoryInfoType +{ + + private string repositoryIdField; + + private string repositoryNameField; + + private string repositoryDescriptionField; + + private string rootFolderIdField; + + private string vendorNameField; + + private string productNameField; + + private string productVersionField; + + private string repositorySpecificInformationField; + + private capabilitiesType capabilitiesField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string repositoryId + { + get + { + return this.repositoryIdField; + } + set + { + this.repositoryIdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string repositoryName + { + get + { + return this.repositoryNameField; + } + set + { + this.repositoryNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string repositoryDescription + { + get + { + return this.repositoryDescriptionField; + } + set + { + this.repositoryDescriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string rootFolderId + { + get + { + return this.rootFolderIdField; + } + set + { + this.rootFolderIdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string vendorName + { + get + { + return this.vendorNameField; + } + set + { + this.vendorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string productName + { + get + { + return this.productNameField; + } + set + { + this.productNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string productVersion + { + get + { + return this.productVersionField; + } + set + { + this.productVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string repositorySpecificInformation + { + get + { + return this.repositorySpecificInformationField; + } + set + { + this.repositorySpecificInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public capabilitiesType capabilities + { + get + { + return this.capabilitiesField; + } + set + { + this.capabilitiesField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class capabilitiesType +{ + + private bool capabilityMultifilingField; + + private bool capabilityUpdatePWCField; + + private bool capabilityAllVersionsSearchableField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool capabilityMultifiling + { + get + { + return this.capabilityMultifilingField; + } + set + { + this.capabilityMultifilingField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool capabilityUpdatePWC + { + get + { + return this.capabilityUpdatePWCField; + } + set + { + this.capabilityUpdatePWCField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool capabilityAllVersionsSearchable + { + get + { + return this.capabilityAllVersionsSearchableField; + } + set + { + this.capabilityAllVersionsSearchableField = value; + } + } +} + +/// +[System.Xml.Serialization.XmlIncludeAttribute(typeof(relationshipObjectType))] +[System.Xml.Serialization.XmlIncludeAttribute(typeof(folderObjectType))] +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentObjectType))] +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentOrFolderObjectType))] +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentFolderOrRelationshipObjectType))] +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public abstract partial class objectTypeBase +{ + + private string objectIDField; + + private string uriField; + + private string objectTypeIDField; + + private string baseObjectTypeField; + + private string createdByField; + + private System.DateTime creationDateField; + + private bool creationDateFieldSpecified; + + private string lastModifiedByField; + + private System.DateTime lastModificationDateField; + + private bool lastModificationDateFieldSpecified; + + private string changeTokenField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string objectID + { + get + { + return this.objectIDField; + } + set + { + this.objectIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="anyURI", Order=1)] + public string uri + { + get + { + return this.uriField; + } + set + { + this.uriField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string objectTypeID + { + get + { + return this.objectTypeIDField; + } + set + { + this.objectTypeIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string baseObjectType + { + get + { + return this.baseObjectTypeField; + } + set + { + this.baseObjectTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string createdBy + { + get + { + return this.createdByField; + } + set + { + this.createdByField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public System.DateTime creationDate + { + get + { + return this.creationDateField; + } + set + { + this.creationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool creationDateSpecified + { + get + { + return this.creationDateFieldSpecified; + } + set + { + this.creationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string lastModifiedBy + { + get + { + return this.lastModifiedByField; + } + set + { + this.lastModifiedByField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public System.DateTime lastModificationDate + { + get + { + return this.lastModificationDateField; + } + set + { + this.lastModificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool lastModificationDateSpecified + { + get + { + return this.lastModificationDateFieldSpecified; + } + set + { + this.lastModificationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string changeToken + { + get + { + return this.changeTokenField; + } + set + { + this.changeTokenField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class relationshipObjectType : objectTypeBase +{ + + private string sourceOIDField; + + private string targetOIDField; + + private property[] propertyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string sourceOID + { + get + { + return this.sourceOIDField; + } + set + { + this.sourceOIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string targetOID + { + get + { + return this.targetOIDField; + } + set + { + this.targetOIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("property", Order=2)] + public property[] property + { + get + { + return this.propertyField; + } + set + { + this.propertyField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://www.cmis.org/ns/1.0")] +public partial class property +{ + + private string nameField; + + private string indexField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string index + { + get + { + return this.indexField; + } + set + { + this.indexField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class folderObjectType : objectTypeBase +{ + + private string nameField; + + private string parentField; + + private documentOrFolderObjectType[] childrenField; + + private property[] propertyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string parent + { + get + { + return this.parentField; + } + set + { + this.parentField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=2)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentOrFolderObjectType[] children + { + get + { + return this.childrenField; + } + set + { + this.childrenField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("property", Order=3)] + public property[] property + { + get + { + return this.propertyField; + } + set + { + this.propertyField = value; + } + } +} + +/// +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentFolderOrRelationshipObjectType))] +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class documentOrFolderObjectType : documentObjectType +{ + + private string parentField; + + private documentOrFolderObjectType[] childrenField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string parent + { + get + { + return this.parentField; + } + set + { + this.parentField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=1)] + [System.Xml.Serialization.XmlArrayItemAttribute("object", IsNullable=false)] + public documentOrFolderObjectType[] children + { + get + { + return this.childrenField; + } + set + { + this.childrenField = value; + } + } +} + +/// +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentOrFolderObjectType))] +[System.Xml.Serialization.XmlIncludeAttribute(typeof(documentFolderOrRelationshipObjectType))] +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class documentObjectType : objectTypeBase +{ + + private string nameField; + + private bool isImmutableField; + + private bool isImmutableFieldSpecified; + + private bool isLatestVersionField; + + private bool isLatestVersionFieldSpecified; + + private bool isMajorVersionField; + + private bool isMajorVersionFieldSpecified; + + private bool isLatestMajorVersionField; + + private bool isLatestMajorVersionFieldSpecified; + + private bool versionSeriesIsCheckedOutField; + + private bool versionSeriesIsCheckedOutFieldSpecified; + + private string versionSeriesCheckedOutByField; + + private string versionSeriesCheckedOutOIDField; + + private string checkinCommentField; + + private string contentStreamLengthField; + + private string contentStreamMimeTypeField; + + private string contentStreamFilenameField; + + private string contentStreamURIField; + + private property[] propertyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool isImmutable + { + get + { + return this.isImmutableField; + } + set + { + this.isImmutableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isImmutableSpecified + { + get + { + return this.isImmutableFieldSpecified; + } + set + { + this.isImmutableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool isLatestVersion + { + get + { + return this.isLatestVersionField; + } + set + { + this.isLatestVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isLatestVersionSpecified + { + get + { + return this.isLatestVersionFieldSpecified; + } + set + { + this.isLatestVersionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool isMajorVersion + { + get + { + return this.isMajorVersionField; + } + set + { + this.isMajorVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isMajorVersionSpecified + { + get + { + return this.isMajorVersionFieldSpecified; + } + set + { + this.isMajorVersionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool isLatestMajorVersion + { + get + { + return this.isLatestMajorVersionField; + } + set + { + this.isLatestMajorVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isLatestMajorVersionSpecified + { + get + { + return this.isLatestMajorVersionFieldSpecified; + } + set + { + this.isLatestMajorVersionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool versionSeriesIsCheckedOut + { + get + { + return this.versionSeriesIsCheckedOutField; + } + set + { + this.versionSeriesIsCheckedOutField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool versionSeriesIsCheckedOutSpecified + { + get + { + return this.versionSeriesIsCheckedOutFieldSpecified; + } + set + { + this.versionSeriesIsCheckedOutFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string versionSeriesCheckedOutBy + { + get + { + return this.versionSeriesCheckedOutByField; + } + set + { + this.versionSeriesCheckedOutByField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string versionSeriesCheckedOutOID + { + get + { + return this.versionSeriesCheckedOutOIDField; + } + set + { + this.versionSeriesCheckedOutOIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string checkinComment + { + get + { + return this.checkinCommentField; + } + set + { + this.checkinCommentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=9)] + public string contentStreamLength + { + get + { + return this.contentStreamLengthField; + } + set + { + this.contentStreamLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string contentStreamMimeType + { + get + { + return this.contentStreamMimeTypeField; + } + set + { + this.contentStreamMimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string contentStreamFilename + { + get + { + return this.contentStreamFilenameField; + } + set + { + this.contentStreamFilenameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="anyURI", Order=12)] + public string contentStreamURI + { + get + { + return this.contentStreamURIField; + } + set + { + this.contentStreamURIField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("property", Order=13)] + public property[] property + { + get + { + return this.propertyField; + } + set + { + this.propertyField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class documentFolderOrRelationshipObjectType : documentOrFolderObjectType +{ + + private string sourceOIDField; + + private string targetOIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string sourceOID + { + get + { + return this.sourceOIDField; + } + set + { + this.sourceOIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string targetOID + { + get + { + return this.targetOIDField; + } + set + { + this.targetOIDField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class choiceType +{ + + private string indexField; + + private string keyField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="integer")] + public string index + { + get + { + return this.indexField; + } + set + { + this.indexField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string key + { + get + { + return this.keyField; + } + set + { + this.keyField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class propertyAttributesType +{ + + private string propertyNameField; + + private string displayNameField; + + private string descriptionField; + + private string propertyTypeField; + + private cardinalityEnum cardinalityField; + + private string maximumLengthField; + + private choiceType[] choiceField; + + private bool requiredField; + + private string defaultValueField; + + private updatabilityEnum updatabilityField; + + private bool queryableField; + + private bool orderableField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string propertyName + { + get + { + return this.propertyNameField; + } + set + { + this.propertyNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string displayName + { + get + { + return this.displayNameField; + } + set + { + this.displayNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string propertyType + { + get + { + return this.propertyTypeField; + } + set + { + this.propertyTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public cardinalityEnum cardinality + { + get + { + return this.cardinalityField; + } + set + { + this.cardinalityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=5)] + public string maximumLength + { + get + { + return this.maximumLengthField; + } + set + { + this.maximumLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("choice", Order=6)] + public choiceType[] choice + { + get + { + return this.choiceField; + } + set + { + this.choiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool required + { + get + { + return this.requiredField; + } + set + { + this.requiredField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string defaultValue + { + get + { + return this.defaultValueField; + } + set + { + this.defaultValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public updatabilityEnum updatability + { + get + { + return this.updatabilityField; + } + set + { + this.updatabilityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool queryable + { + get + { + return this.queryableField; + } + set + { + this.queryableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool orderable + { + get + { + return this.orderableField; + } + set + { + this.orderableField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum cardinalityEnum +{ + + /// + singleValued, + + /// + multiValued, +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum updatabilityEnum +{ + + /// + readOnly, + + /// + readWrite, + + /// + readWriteWhenCheckedOut, +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.ComponentModel.DesignerCategoryAttribute("code")] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public partial class objectTypeDefinitionType +{ + + private string objectTypeIDField; + + private string objectTypeNameField; + + private string displayNameField; + + private string parentTypeNameField; + + private string rootTypeNameField; + + private string descriptionField; + + private bool queryableField; + + private bool queryableFieldSpecified; + + private bool versionableField; + + private bool versionableFieldSpecified; + + private string[] constraintsField; + + private propertyAttributesType[] propertyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string objectTypeID + { + get + { + return this.objectTypeIDField; + } + set + { + this.objectTypeIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string objectTypeName + { + get + { + return this.objectTypeNameField; + } + set + { + this.objectTypeNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string displayName + { + get + { + return this.displayNameField; + } + set + { + this.displayNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string parentTypeName + { + get + { + return this.parentTypeNameField; + } + set + { + this.parentTypeNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string rootTypeName + { + get + { + return this.rootTypeNameField; + } + set + { + this.rootTypeNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool queryable + { + get + { + return this.queryableField; + } + set + { + this.queryableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool queryableSpecified + { + get + { + return this.queryableFieldSpecified; + } + set + { + this.queryableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool versionable + { + get + { + return this.versionableField; + } + set + { + this.versionableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool versionableSpecified + { + get + { + return this.versionableFieldSpecified; + } + set + { + this.versionableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("constraints", Order=8)] + public string[] constraints + { + get + { + return this.constraintsField; + } + set + { + this.constraintsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("property", Order=9)] + public propertyAttributesType[] property + { + get + { + return this.propertyField; + } + set + { + this.propertyField = value; + } + } +} + +/// +[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "3.0.4506.648")] +[System.SerializableAttribute()] +[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.cmis.org/ns/1.0")] +public enum getTypesEnum +{ + + /// + Document, + + /// + Folder, + + /// + Relationship, + + /// + All, +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getTypes", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getTypesRequest +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + public getTypesEnum type; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public bool returnPropertyDefinitions; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=2)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string maxItems; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=3)] + [System.Xml.Serialization.XmlElementAttribute(DataType="integer")] + public string skipCount; + + public getTypesRequest() + { + } + + public getTypesRequest(getTypesEnum type, bool returnPropertyDefinitions, string maxItems, string skipCount) + { + this.type = type; + this.returnPropertyDefinitions = returnPropertyDefinitions; + this.maxItems = maxItems; + this.skipCount = skipCount; + } +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +[System.ServiceModel.MessageContractAttribute(WrapperName="getTypesResponse", WrapperNamespace="http://www.cmis.org/ns/1.0", IsWrapped=true)] +public partial class getTypesResponse +{ + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("type", IsNullable=false)] + public objectTypeDefinitionType[] types; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://www.cmis.org/ns/1.0", Order=1)] + public bool hasMoreItems; + + public getTypesResponse() + { + } + + public getTypesResponse(objectTypeDefinitionType[] types, bool hasMoreItems) + { + this.types = types; + this.hasMoreItems = hasMoreItems; + } +} + +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public interface RepositoryServicePortChannel : RepositoryServicePort, System.ServiceModel.IClientChannel +{ +} + +[System.Diagnostics.DebuggerStepThroughAttribute()] +[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] +public partial class RepositoryServicePortClient : System.ServiceModel.ClientBase, RepositoryServicePort +{ + + public RepositoryServicePortClient() + { + } + + public RepositoryServicePortClient(string endpointConfigurationName) : + base(endpointConfigurationName) + { + } + + public RepositoryServicePortClient(string endpointConfigurationName, string remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public RepositoryServicePortClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : + base(endpointConfigurationName, remoteAddress) + { + } + + public RepositoryServicePortClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + public repositoryInfoType getRepositoryInfo() + { + return base.Channel.getRepositoryInfo(); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + getTypesResponse RepositoryServicePort.getTypes(getTypesRequest request) + { + return base.Channel.getTypes(request); + } + + public objectTypeDefinitionType[] getTypes(getTypesEnum type, bool returnPropertyDefinitions, string maxItems, string skipCount, out bool hasMoreItems) + { + getTypesRequest inValue = new getTypesRequest(); + inValue.type = type; + inValue.returnPropertyDefinitions = returnPropertyDefinitions; + inValue.maxItems = maxItems; + inValue.skipCount = skipCount; + getTypesResponse retVal = ((RepositoryServicePort)(this)).getTypes(inValue); + hasMoreItems = retVal.hasMoreItems; + return retVal.types; + } + + public objectTypeDefinitionType getTypeDefinition(out bool canCreateInstances, string typeId, bool includeInheritedProperties) + { + return base.Channel.getTypeDefinition(out canCreateInstances, typeId, includeInheritedProperties); + } + + public folderObjectType getRootFolder(string filter) + { + return base.Channel.getRootFolder(filter); + } +} +namespace www.cmis.org.ns._1._01 +{ + using System.Runtime.Serialization; + + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="repositoryInfoType", Namespace="http://www.cmis.org/ns/1.0")] + public partial class repositoryInfoType : object, System.Runtime.Serialization.IExtensibleDataObject + { + + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private string repositoryIdField; + + private string repositoryNameField; + + private string repositoryDescriptionField; + + private string rootFolderIdField; + + private string vendorNameField; + + private string productNameField; + + private string productVersionField; + + private string repositorySpecificInformationField; + + private www.cmis.org.ns._1._01.capabilitiesType capabilitiesField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData + { + get + { + return this.extensionDataField; + } + set + { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false)] + public string repositoryId + { + get + { + return this.repositoryIdField; + } + set + { + this.repositoryIdField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false)] + public string repositoryName + { + get + { + return this.repositoryNameField; + } + set + { + this.repositoryNameField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=2)] + public string repositoryDescription + { + get + { + return this.repositoryDescriptionField; + } + set + { + this.repositoryDescriptionField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=3)] + public string rootFolderId + { + get + { + return this.rootFolderIdField; + } + set + { + this.rootFolderIdField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=4)] + public string vendorName + { + get + { + return this.vendorNameField; + } + set + { + this.vendorNameField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=5)] + public string productName + { + get + { + return this.productNameField; + } + set + { + this.productNameField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=6)] + public string productVersion + { + get + { + return this.productVersionField; + } + set + { + this.productVersionField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=7)] + public string repositorySpecificInformation + { + get + { + return this.repositorySpecificInformationField; + } + set + { + this.repositorySpecificInformationField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, EmitDefaultValue=false, Order=8)] + public www.cmis.org.ns._1._01.capabilitiesType capabilities + { + get + { + return this.capabilitiesField; + } + set + { + this.capabilitiesField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="capabilitiesType", Namespace="http://www.cmis.org/ns/1.0")] + public partial class capabilitiesType : object, System.Runtime.Serialization.IExtensibleDataObject + { + + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private bool capabilityMultifilingField; + + private bool capabilityUpdatePWCField; + + private bool capabilityAllVersionsSearchableField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData + { + get + { + return this.extensionDataField; + } + set + { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public bool capabilityMultifiling + { + get + { + return this.capabilityMultifilingField; + } + set + { + this.capabilityMultifilingField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public bool capabilityUpdatePWC + { + get + { + return this.capabilityUpdatePWCField; + } + set + { + this.capabilityUpdatePWCField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true, Order=2)] + public bool capabilityAllVersionsSearchable + { + get + { + return this.capabilityAllVersionsSearchableField; + } + set + { + this.capabilityAllVersionsSearchableField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="getTypesEnum", Namespace="http://www.cmis.org/ns/1.0")] + public enum getTypesEnum : int + { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Document = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Folder = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Relationship = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + All = 3, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="basicFault", Namespace="http://www.cmis.org/ns/1.0")] + public partial class basicFault : object, System.Runtime.Serialization.IExtensibleDataObject + { + + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private long errorCodeField; + + private string errorMessageField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData + { + get + { + return this.extensionDataField; + } + set + { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public long errorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)] + public string errorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + } +} diff --git a/source/sample/WcfCmisTest/src/app.config b/source/sample/WcfCmisTest/src/app.config new file mode 100755 index 0000000000..37fb6a4f9b --- /dev/null +++ b/source/sample/WcfCmisTest/src/app.config @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/test/JavaCmisTest.zip b/source/test/JavaCmisTest.zip deleted file mode 100644 index 3a2d1379b8..0000000000 Binary files a/source/test/JavaCmisTest.zip and /dev/null differ diff --git a/source/test/WcfCmisTest.zip b/source/test/WcfCmisTest.zip deleted file mode 100644 index 4b1be8cc10..0000000000 Binary files a/source/test/WcfCmisTest.zip and /dev/null differ