You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by dc...@apache.org on 2010/02/16 17:04:07 UTC
svn commit: r910572 [16/36] - in /incubator/chemistry/trunk/opencmis: ./
_dev/ opencmis-client/ opencmis-client/opencmis-client-api/
opencmis-client/opencmis-client-api/src/
opencmis-client/opencmis-client-api/src/main/
opencmis-client/opencmis-client-...
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/Converter.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/JaxBHelper.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/JaxBHelper.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/JaxBHelper.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/JaxBHelper.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,138 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl;
+
+import java.io.OutputStream;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.Unmarshaller;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamWriter;
+
+import org.apache.opencmis.commons.impl.jaxb.CmisObjectType;
+import org.apache.opencmis.commons.impl.jaxb.CmisRepositoryInfoType;
+import org.apache.opencmis.commons.impl.jaxb.CmisTypeDefinitionType;
+import org.apache.opencmis.commons.impl.jaxb.ObjectFactory;
+
+/**
+ * JAXB helper class.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public final class JaxBHelper {
+
+ private static final QName CMIS_OBJECT = new QName(Constants.NAMESPACE_RESTATOM, "object");
+ private static final QName CMIS_TYPE_DEFINITION = new QName(Constants.NAMESPACE_RESTATOM, "type");
+ private static final QName CMIS_REPOSITORY_INFO = new QName(Constants.NAMESPACE_RESTATOM,
+ "repositoryInfo");
+
+ public static final ObjectFactory CMIS_OBJECT_FACTORY = new ObjectFactory();
+ public static final CMISExtraObjectFactory CMIS_EXTRA_OBJECT_FACTORY = new CMISExtraObjectFactory();
+ public static final JAXBContext CONTEXT;
+ static {
+ JAXBContext jc = null;
+ try {
+ jc = JAXBContext.newInstance(ObjectFactory.class, CMISExtraObjectFactory.class);
+ }
+ catch (JAXBException e) {
+ e.printStackTrace();
+ }
+ CONTEXT = jc;
+ }
+
+ @XmlRegistry
+ public static class CMISExtraObjectFactory {
+ @XmlElementDecl(namespace = Constants.NAMESPACE_RESTATOM, name = "object")
+ public JAXBElement<CmisObjectType> createObject(CmisObjectType value) {
+ return new JAXBElement<CmisObjectType>(CMIS_OBJECT, CmisObjectType.class, value);
+ }
+
+ @XmlElementDecl(namespace = Constants.NAMESPACE_RESTATOM, name = "type")
+ public JAXBElement<CmisTypeDefinitionType> createTypeDefinition(CmisTypeDefinitionType value) {
+ return new JAXBElement<CmisTypeDefinitionType>(CMIS_TYPE_DEFINITION,
+ CmisTypeDefinitionType.class, value);
+ }
+
+ @XmlElementDecl(namespace = Constants.NAMESPACE_RESTATOM, name = "repositoryInfo")
+ public JAXBElement<CmisRepositoryInfoType> createRepositoryInfo(CmisRepositoryInfoType value) {
+ return new JAXBElement<CmisRepositoryInfoType>(CMIS_REPOSITORY_INFO,
+ CmisRepositoryInfoType.class, value);
+ }
+ }
+
+ /**
+ * Private constructor.
+ */
+ private JaxBHelper() {
+ }
+
+ /**
+ * Creates an Unmarshaller.
+ */
+ public static Unmarshaller createUnmarshaller() throws JAXBException {
+ return CONTEXT.createUnmarshaller();
+ }
+
+ /**
+ * Creates an Marshaller.
+ */
+ public static Marshaller createMarshaller() throws JAXBException {
+ return CONTEXT.createMarshaller();
+ }
+
+ /**
+ * Marshals an object to a stream.
+ */
+ public static <T> void marshal(JAXBElement<T> object, OutputStream out, boolean fragment)
+ throws JAXBException {
+ if (object == null) {
+ return;
+ }
+
+ Marshaller m = CONTEXT.createMarshaller();
+ if (fragment) {
+ m.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);
+ }
+
+ m.marshal(object, out);
+ }
+
+ /**
+ * Marshals an object to a XMLStreamWriter.
+ */
+ public static void marshal(Object object, XMLStreamWriter out, boolean fragment)
+ throws JAXBException {
+ if (object == null) {
+ return;
+ }
+
+ Marshaller m = CONTEXT.createMarshaller();
+ if (fragment) {
+ m.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);
+ }
+
+ m.marshal(object, out);
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/JaxBHelper.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/ReturnVersion.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/ReturnVersion.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/ReturnVersion.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/ReturnVersion.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl;
+
+/**
+ * Return Version Enum.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public enum ReturnVersion {
+
+ THIS("this"), LATEST("latest"), LASTESTMAJOR("latestmajor");
+ private final String value;
+
+ ReturnVersion(String v) {
+ value = v;
+ }
+
+ public String value() {
+ return value;
+ }
+
+ public static ReturnVersion fromValue(String v) {
+ for (ReturnVersion c : ReturnVersion.values()) {
+ if (c.value.equals(v)) {
+ return c;
+ }
+ }
+ throw new IllegalArgumentException(v);
+ }
+
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/ReturnVersion.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/UrlBuilder.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/UrlBuilder.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/UrlBuilder.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/UrlBuilder.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,192 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+
+import org.apache.opencmis.commons.enums.IncludeRelationships;
+import org.apache.opencmis.commons.enums.RelationshipDirection;
+import org.apache.opencmis.commons.enums.UnfileObjects;
+import org.apache.opencmis.commons.enums.VersioningState;
+
+/**
+ * Utility class that helps building URLs.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class UrlBuilder {
+
+ private StringBuilder fUrl;
+ private StringBuilder fQuery;
+
+ /**
+ * Constructor.
+ *
+ * @param url
+ * initial URL
+ */
+ public UrlBuilder(String url) {
+ if (url == null) {
+ throw new IllegalArgumentException("URL must be set");
+ }
+
+ fUrl = new StringBuilder();
+ fQuery = new StringBuilder();
+
+ int qm = url.indexOf('?');
+ if (qm == -1) {
+ fUrl.append(url);
+ }
+ else {
+ fUrl.append(url.substring(0, qm));
+ if (qm < url.length()) {
+ fQuery.append(url.substring(qm + 1));
+ }
+ }
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param scheme
+ * scheme
+ * @param host
+ * host
+ * @param port
+ * port
+ * @param path
+ * path
+ */
+ public UrlBuilder(String scheme, String host, int port, String path) {
+
+ if ("http".equalsIgnoreCase(scheme) && (port == 80)) {
+ port = -1;
+ }
+ if ("https".equalsIgnoreCase(scheme) && (port == 443)) {
+ port = -1;
+ }
+
+ fUrl = new StringBuilder();
+ fQuery = new StringBuilder();
+
+ fUrl.append(scheme);
+ fUrl.append("://");
+ fUrl.append(host);
+ if (port > 0) {
+ fUrl.append(":" + port);
+ }
+ if (path != null) {
+ fUrl.append(path);
+ }
+ }
+
+ /**
+ * Copy constructor.
+ */
+ public UrlBuilder(UrlBuilder urlBuilder) {
+ fUrl = new StringBuilder(urlBuilder.fUrl);
+ fQuery = new StringBuilder(urlBuilder.fQuery);
+ }
+
+ /**
+ * Adds a parameter to the URL.
+ *
+ * @param name
+ * parameter name
+ * @param value
+ * parameter value
+ */
+ public void addParameter(String name, Object value) {
+ if ((name == null) || (value == null)) {
+ return;
+ }
+
+ String valueStr = normalizeParameter(value);
+
+ if (fQuery.length() > 0) {
+ fQuery.append('&');
+ }
+ fQuery.append(name);
+ fQuery.append("=");
+ try {
+ fQuery.append(URLEncoder.encode(valueStr, "UTF-8"));
+ }
+ catch (UnsupportedEncodingException e) {
+ }
+ }
+
+ /**
+ * Adds a path segment to the URL.
+ *
+ * @param pathSegment
+ * the path segment.
+ */
+ public void addPath(String pathSegment) {
+ if ((pathSegment == null) || (pathSegment.length() == 0)) {
+ return;
+ }
+
+ if (fUrl.charAt(fUrl.length() - 1) != '/') {
+ fUrl.append('/');
+ }
+
+ if (pathSegment.charAt(0) == '/') {
+ pathSegment = pathSegment.substring(1);
+ }
+
+ try {
+ fUrl.append(URLEncoder.encode(pathSegment, "UTF-8"));
+ }
+ catch (UnsupportedEncodingException e) {
+ }
+ }
+
+ /**
+ * Converts an object to a String that can be used as a parameter value.
+ */
+ public static String normalizeParameter(Object value) {
+ if (value == null) {
+ return null;
+ }
+ else if (value instanceof IncludeRelationships) {
+ return ((IncludeRelationships) value).value();
+ }
+ else if (value instanceof VersioningState) {
+ return ((VersioningState) value).value();
+ }
+ else if (value instanceof UnfileObjects) {
+ return ((UnfileObjects) value).value();
+ }
+ else if (value instanceof RelationshipDirection) {
+ return ((RelationshipDirection) value).value();
+ }
+ else if (value instanceof ReturnVersion) {
+ return ((ReturnVersion) value).value();
+ }
+
+ return value.toString();
+ }
+
+ @Override
+ public String toString() {
+ return fUrl.toString() + (fQuery.length() == 0 ? "" : "?" + fQuery.toString());
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/UrlBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractExtensionData.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractExtensionData.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractExtensionData.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractExtensionData.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.api.ExtensionsData;
+
+/**
+ * Abstract extension data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public abstract class AbstractExtensionData implements ExtensionsData {
+
+ private List<Object> fExtensions;
+
+ /* (non-Javadoc)
+ * @see org.apache.opencmis.client.provider.ExtensionsData#getExtensions()
+ */
+ public List<Object> getExtensions() {
+ return fExtensions;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.opencmis.client.provider.ExtensionsData#setExtensions(java.util.List)
+ */
+ public void setExtensions(List<Object> extensions) {
+ fExtensions = extensions;
+ }
+
+ @Override
+ public String toString() {
+ return "[extensions=" + fExtensions + "]";
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractExtensionData.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyData.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyData.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyData.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyData.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,130 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.opencmis.commons.provider.PropertyData;
+
+/**
+ * Abstract property data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public abstract class AbstractPropertyData<T> extends AbstractExtensionData implements
+ PropertyData<T> {
+
+ private String fId;
+ private String fDisplayName;
+ private String fLocalName;
+ private String fQueryName;
+
+ private List<T> fValues;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getId()
+ */
+ public String getId() {
+ return fId;
+ }
+
+ public void setId(String id) {
+ fId = id;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getDisplayName()
+ */
+ public String getDisplayName() {
+ return fDisplayName;
+ }
+
+ public void setDisplayName(String displayName) {
+ fDisplayName = displayName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getLocalName()
+ */
+ public String getLocalName() {
+ return fLocalName;
+ }
+
+ public void setLocalName(String localName) {
+ fLocalName = localName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getQueryName()
+ */
+ public String getQueryName() {
+ return fQueryName;
+ }
+
+ public void setQueryName(String queryName) {
+ fQueryName = queryName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getValues()
+ */
+ public List<T> getValues() {
+ return fValues;
+ }
+
+ public void setValues(List<T> values) {
+ fValues = values;
+ }
+
+ public void setValue(T value) {
+ fValues = new ArrayList<T>(1);
+ fValues.add(value);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyData#getFirstValue()
+ */
+ public T getFirstValue() {
+ if ((fValues != null) && (!fValues.isEmpty())) {
+ return fValues.get(0);
+ }
+
+ return null;
+ }
+
+ @Override
+ public String toString() {
+ return "Property [id=" + fId + ", display Name=" + fDisplayName + ", local name=" + fLocalName
+ + ", query name=" + fQueryName + ", values=" + fValues + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyData.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyDefinition.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyDefinition.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyDefinition.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyDefinition.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,280 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.api.Choice;
+import org.apache.opencmis.commons.api.PropertyDefinition;
+import org.apache.opencmis.commons.enums.Cardinality;
+import org.apache.opencmis.commons.enums.PropertyType;
+import org.apache.opencmis.commons.enums.Updatability;
+
+/**
+ * Abstract property definition data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public abstract class AbstractPropertyDefinition<T> extends AbstractExtensionData implements
+ PropertyDefinition<T> {
+
+ private static final long serialVersionUID = 1L;
+
+ private String fId;
+ private String fLocalName;
+ private String fLocalNamespace;
+ private String fQueryName;
+ private String fDisplayName;
+ private String fDescription;
+ private PropertyType fPropertyType;
+ private Cardinality fCardinality;
+ private List<Choice<T>> fChoiceList;
+ private List<T> fDefaultValue;
+ private Updatability fUpdatability;
+ private Boolean fIsInherited;
+ private Boolean fIsQueryable;
+ private Boolean fIsOrderable;
+ private Boolean fIsRequired;
+ private Boolean fIsOpenChoice;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getId()
+ */
+ public String getId() {
+ return fId;
+ }
+
+ public void setId(String id) {
+ fId = id;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getLocalName()
+ */
+ public String getLocalName() {
+ return fLocalName;
+ }
+
+ public void setLocalName(String localName) {
+ fLocalName = localName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getLocalNamespace()
+ */
+ public String getLocalNamespace() {
+ return fLocalNamespace;
+ }
+
+ public void setLocalNamespace(String localNamespace) {
+ fLocalNamespace = localNamespace;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getQueryName()
+ */
+ public String getQueryName() {
+ return fQueryName;
+ }
+
+ public void setQueryName(String queryName) {
+ fQueryName = queryName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getDisplayName()
+ */
+ public String getDisplayName() {
+ return fDisplayName;
+ }
+
+ public void setDisplayName(String displayName) {
+ fDisplayName = displayName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getDescription()
+ */
+ public String getDescription() {
+ return fDescription;
+ }
+
+ public void setDescription(String description) {
+ fDescription = description;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getPropertyType()
+ */
+ public PropertyType getPropertyType() {
+ return fPropertyType;
+ }
+
+ public void setPropertyType(PropertyType propertyType) {
+ fPropertyType = propertyType;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getCardinality()
+ */
+ public Cardinality getCardinality() {
+ return fCardinality;
+ }
+
+ public void setCardinality(Cardinality cardinality) {
+ fCardinality = cardinality;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getChoices()
+ */
+ public List<Choice<T>> getChoices() {
+ return fChoiceList;
+ }
+
+ public void setChoices(List<Choice<T>> choiceList) {
+ fChoiceList = choiceList;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getDefaultValue()
+ */
+ public List<T> getDefaultValue() {
+ return fDefaultValue;
+ }
+
+ public void setDefaultValue(List<T> defaultValue) {
+ fDefaultValue = defaultValue;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#getUpdatability()
+ */
+ public Updatability getUpdatability() {
+ return fUpdatability;
+ }
+
+ public void setUpdatability(Updatability updatability) {
+ fUpdatability = updatability;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#isInherited()
+ */
+ public Boolean isInherited() {
+ return fIsInherited;
+ }
+
+ public void setIsInherited(Boolean isInherited) {
+ fIsInherited = isInherited;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#isQueryable()
+ */
+ public Boolean isQueryable() {
+ return fIsQueryable;
+ }
+
+ public void setIsQueryable(Boolean isQueryable) {
+ fIsQueryable = isQueryable;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#isOrderable()
+ */
+ public Boolean isOrderable() {
+ return fIsOrderable;
+ }
+
+ public void setIsOrderable(Boolean isOrderable) {
+ fIsOrderable = isOrderable;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#isRequired()
+ */
+ public Boolean isRequired() {
+ return fIsRequired;
+ }
+
+ public void setIsRequired(Boolean isRequired) {
+ fIsRequired = isRequired;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.PropertyDefinitionData#isOpenChoice()
+ */
+ public Boolean isOpenChoice() {
+ return fIsOpenChoice;
+ }
+
+ public void setIsOpenChoice(Boolean isOpenChoice) {
+ fIsOpenChoice = isOpenChoice;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Property Definition [id=" + fId + ", display name=" + fDisplayName + ", description="
+ + fDescription + ", local name=" + fLocalName + ", local namespace=" + fLocalNamespace
+ + ", query name=" + fQueryName + ", property type=" + fPropertyType + ", cardinality="
+ + fCardinality + ", choice list=" + fChoiceList + ", default value=" + fDefaultValue
+ + ", is inherited=" + fIsInherited + ", is open choice=" + fIsOpenChoice
+ + ", is queryable=" + fIsQueryable + ", is required=" + fIsRequired + ", updatability="
+ + fUpdatability + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractPropertyDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractTypeDefinition.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractTypeDefinition.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractTypeDefinition.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractTypeDefinition.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,309 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import org.apache.opencmis.commons.api.PropertyDefinition;
+import org.apache.opencmis.commons.api.TypeDefinition;
+import org.apache.opencmis.commons.enums.BaseObjectTypeIds;
+
+/**
+ * Abstract type definition data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public abstract class AbstractTypeDefinition extends AbstractExtensionData implements
+ TypeDefinition, Cloneable {
+
+ private static final long serialVersionUID = 1L;
+
+ private String fId;
+ private String fLocalName;
+ private String fLocalNamespace;
+ private String fQueryName;
+ private String fDisplayName;
+ private String fDescription;
+ private BaseObjectTypeIds fBaseId;
+ private String fParentId;
+ private Boolean fIsCreatable;
+ private Boolean fIsFileable;
+ private Boolean fIsQueryable;
+ private Boolean fIsIncludedInSupertypeQuery;
+ private Boolean fIsFulltextIndexed;
+ private Boolean fIsControllableACL;
+ private Boolean fIsControllablePolicy;
+ private Map<String, PropertyDefinition<?>> fPropertyDefinitions;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getId()
+ */
+ public String getId() {
+ return fId;
+ }
+
+ public void setId(String id) {
+ fId = id;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getLocalName()
+ */
+ public String getLocalName() {
+ return fLocalName;
+ }
+
+ public void setLocalName(String localName) {
+ fLocalName = localName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getLocalNamespace()
+ */
+ public String getLocalNamespace() {
+ return fLocalNamespace;
+ }
+
+ public void setLocalNamespace(String localNamespace) {
+ fLocalNamespace = localNamespace;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getQueryName()
+ */
+ public String getQueryName() {
+ return fQueryName;
+ }
+
+ public void setQueryName(String queryName) {
+ fQueryName = queryName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getDisplayName()
+ */
+ public String getDisplayName() {
+ return fDisplayName;
+ }
+
+ public void setDisplayName(String displayName) {
+ fDisplayName = displayName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getDescription()
+ */
+ public String getDescription() {
+ return fDescription;
+ }
+
+ public void setDescription(String description) {
+ fDescription = description;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getBaseId()
+ */
+ public BaseObjectTypeIds getBaseId() {
+ return fBaseId;
+ }
+
+ public void setBaseId(BaseObjectTypeIds baseId) {
+ fBaseId = baseId;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getParentId()
+ */
+ public String getParentId() {
+ return fParentId;
+ }
+
+ public void setParentId(String parentId) {
+ fParentId = parentId;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isCreatable()
+ */
+ public Boolean isCreatable() {
+ return fIsCreatable;
+ }
+
+ public void setIsCreatable(Boolean isCreatable) {
+ fIsCreatable = isCreatable;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isFileable()
+ */
+ public Boolean isFileable() {
+ return fIsFileable;
+ }
+
+ public void setIsFileable(Boolean isFileable) {
+ fIsFileable = isFileable;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isQueryable()
+ */
+ public Boolean isQueryable() {
+ return fIsQueryable;
+ }
+
+ public void setIsQueryable(Boolean isQueryable) {
+ fIsQueryable = isQueryable;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isIncludedInSupertypeQuery()
+ */
+ public Boolean isIncludedInSupertypeQuery() {
+ return fIsIncludedInSupertypeQuery;
+ }
+
+ public void setIsIncludedInSupertypeQuery(Boolean isIncludedInSupertypeQuery) {
+ fIsIncludedInSupertypeQuery = isIncludedInSupertypeQuery;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isFulltextIndexed()
+ */
+ public Boolean isFulltextIndexed() {
+ return fIsFulltextIndexed;
+ }
+
+ public void setIsFulltextIndexed(Boolean isFulltextIndexed) {
+ fIsFulltextIndexed = isFulltextIndexed;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isControllableACL()
+ */
+ public Boolean isControllableAcl() {
+ return fIsControllableACL;
+ }
+
+ public void setIsControllableAcl(Boolean isControllableACL) {
+ fIsControllableACL = isControllableACL;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#isControllablePolicy()
+ */
+ public Boolean isControllablePolicy() {
+ return fIsControllablePolicy;
+ }
+
+ public void setIsControllablePolicy(Boolean isControllablePolicy) {
+ fIsControllablePolicy = isControllablePolicy;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ *
+ * @see org.apache.opencmis.client.provider.TypeDefinitionData#getPropertyDefintions()
+ */
+ public Map<String, PropertyDefinition<?>> getPropertyDefinitions() {
+ return fPropertyDefinitions;
+ }
+
+ public void setPropertyDefinitions(Map<String, PropertyDefinition<?>> propertyDefinitions) {
+ fPropertyDefinitions = propertyDefinitions;
+ }
+
+ /**
+ * Adds a property definition.
+ *
+ * @param propertyDefinition
+ * the property definition
+ */
+ public void addPropertyDefinition(PropertyDefinition<?> propertyDefinition) {
+ if (propertyDefinition == null) {
+ return;
+ }
+
+ if (fPropertyDefinitions == null) {
+ fPropertyDefinitions = new LinkedHashMap<String, PropertyDefinition<?>>();
+ }
+
+ fPropertyDefinitions.put(propertyDefinition.getId(), propertyDefinition);
+ }
+
+ public AbstractTypeDefinition clone() {
+ try {
+ return (AbstractTypeDefinition) super.clone();
+ }
+ catch (CloneNotSupportedException e) {
+ e.printStackTrace();
+ throw new RuntimeException("Clone not supported", e);
+ }
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Type Definition [base id=" + fBaseId + ", id=" + fId + ", display Name=" + fDisplayName
+ + ", description=" + fDescription + ", local name=" + fLocalName + ", local namespace="
+ + fLocalNamespace + ", query name=" + fQueryName + ", parent id=" + fParentId
+ + ", is controllable ACL=" + fIsControllableACL + ", is controllable policy="
+ + fIsControllablePolicy + ", is creatable=" + fIsCreatable + ", is fileable=" + fIsFileable
+ + ", is fulltext indexed=" + fIsFulltextIndexed + ", is included in supertype query="
+ + fIsIncludedInSupertypeQuery + ", is queryable=" + fIsQueryable
+ + ", property definitions=" + fPropertyDefinitions + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AbstractTypeDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlEntryImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlEntryImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlEntryImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlEntryImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,101 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.provider.AccessControlEntry;
+import org.apache.opencmis.commons.provider.AccessControlPrincipalData;
+
+/**
+ * Access Control Entry data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class AccessControlEntryImpl extends AbstractExtensionData implements AccessControlEntry {
+
+ private List<String> fPermissions;
+ private AccessControlPrincipalData fPrincipal;
+ private boolean fIsDirect = true;
+
+ /**
+ * Constructor.
+ */
+ public AccessControlEntryImpl() {
+ }
+
+ /**
+ * Constructor.
+ */
+ public AccessControlEntryImpl(AccessControlPrincipalData principal, List<String> permissions) {
+ setPrincipal(principal);
+ setPermissions(permissions);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlEntry#getPrincipal()
+ */
+ public AccessControlPrincipalData getPrincipal() {
+ return fPrincipal;
+ }
+
+ public void setPrincipal(AccessControlPrincipalData principal) {
+ fPrincipal = principal;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlEntry#getPermissions()
+ */
+ public List<String> getPermissions() {
+ return fPermissions;
+ }
+
+ public void setPermissions(List<String> permissions) {
+ fPermissions = permissions;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlEntry#isDirect()
+ */
+ public boolean isDirect() {
+ return fIsDirect;
+ }
+
+ public void setDirect(boolean direct) {
+ fIsDirect = direct;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Access Control Entry [principal=" + fPrincipal + ", permissions=" + fPermissions
+ + ", is direct=" + fIsDirect + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlEntryImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlListImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlListImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlListImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlListImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.provider.AccessControlEntry;
+import org.apache.opencmis.commons.provider.AccessControlList;
+
+/**
+ * Access control list data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class AccessControlListImpl extends AbstractExtensionData implements AccessControlList {
+
+ private List<AccessControlEntry> fAces;
+ private Boolean fIsExact;
+
+ /**
+ * Constructor.
+ */
+ public AccessControlListImpl() {
+ }
+
+ /**
+ * Constructor.
+ */
+ public AccessControlListImpl(List<AccessControlEntry> aces) {
+ setAces(aces);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlList#getACEs()
+ */
+ public List<AccessControlEntry> getAces() {
+ return fAces;
+ }
+
+ public void setAces(List<AccessControlEntry> aces) {
+ fAces = aces;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlList#isExact()
+ */
+ public Boolean isExact() {
+ return fIsExact;
+ }
+
+ public void setExact(Boolean isExact) {
+ fIsExact = isExact;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Access Control List [ACEs=" + fAces + ", is exact=" + fIsExact + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlListImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlPrincipalDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlPrincipalDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlPrincipalDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlPrincipalDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import org.apache.opencmis.commons.provider.AccessControlPrincipalData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class AccessControlPrincipalDataImpl extends AbstractExtensionData implements
+ AccessControlPrincipalData {
+
+ private String fPrincipalId;
+
+ /**
+ * Constructor.
+ */
+ public AccessControlPrincipalDataImpl() {
+ }
+
+ /**
+ * Constructor with principal id.
+ */
+ public AccessControlPrincipalDataImpl(String principalId) {
+ setPrincipalId(principalId);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AccessControlPrincipalData#getPrincipalId()
+ */
+ public String getPrincipalId() {
+ return fPrincipalId;
+ }
+
+ public void setPrincipalId(String principalId) {
+ fPrincipalId = principalId;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Access Control Principal [principalId=" + fPrincipalId + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AccessControlPrincipalDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AclCapabilitiesDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AclCapabilitiesDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AclCapabilitiesDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AclCapabilitiesDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,105 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.enums.AclPropagation;
+import org.apache.opencmis.commons.enums.SupportedPermissions;
+import org.apache.opencmis.commons.provider.AclCapabilitiesData;
+import org.apache.opencmis.commons.provider.PermissionDefinitionData;
+import org.apache.opencmis.commons.provider.PermissionMappingData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class AclCapabilitiesDataImpl extends AbstractExtensionData implements AclCapabilitiesData {
+
+ private static final long serialVersionUID = 1L;
+
+ private SupportedPermissions fSupportedPermissions;
+ private AclPropagation fACLPropagation;
+ private List<PermissionMappingData> fPermissionMappingList;
+ private List<PermissionDefinitionData> fPermissionDefinitionList;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ACLCapabilitiesData#getACLPropagation()
+ */
+ public SupportedPermissions getSupportedPermissions() {
+ return fSupportedPermissions;
+ }
+
+ public void setSupportedPermissions(SupportedPermissions supportedPermissions) {
+ fSupportedPermissions = supportedPermissions;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ACLCapabilitiesData#getACLPropagation()
+ */
+ public AclPropagation getAclPropagation() {
+ return fACLPropagation;
+ }
+
+ public void setAclPropagation(AclPropagation aclPropagation) {
+ fACLPropagation = aclPropagation;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ACLCapabilitiesData#getPermissionMappingData()
+ */
+ public List<PermissionMappingData> getPermissionMappingData() {
+ return fPermissionMappingList;
+ }
+
+ public void setPermissionMappingData(List<PermissionMappingData> permissionMappingList) {
+ fPermissionMappingList = permissionMappingList;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ACLCapabilitiesData#getPermissionDefinitionData()
+ */
+ public List<PermissionDefinitionData> getPermissionDefinitionData() {
+ return fPermissionDefinitionList;
+ }
+
+ public void setPermissionDefinitionData(List<PermissionDefinitionData> permissionDefinitionList) {
+ fPermissionDefinitionList = permissionDefinitionList;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "ACL Capabilities [ACL propagation=" + fACLPropagation + ", permission definition list="
+ + fPermissionDefinitionList + ", permission mappings=" + fPermissionMappingList + "]"
+ + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AclCapabilitiesDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AllowableActionsDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AllowableActionsDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AllowableActionsDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AllowableActionsDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.Map;
+
+import org.apache.opencmis.commons.provider.AllowableActionsData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class AllowableActionsDataImpl extends AbstractExtensionData implements AllowableActionsData {
+
+ private Map<String, Boolean> fAllowableActions;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.AllowableActionsData#getAllowableActions()
+ */
+ public Map<String, Boolean> getAllowableActions() {
+ return fAllowableActions;
+ }
+
+ public void setAllowableActions(Map<String, Boolean> allowableActions) {
+ fAllowableActions = allowableActions;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Allowable Actions [allowable actions=" + fAllowableActions + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/AllowableActionsDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChangeEventInfoDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChangeEventInfoDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChangeEventInfoDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChangeEventInfoDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,60 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.GregorianCalendar;
+
+import org.apache.opencmis.commons.enums.TypeOfChanges;
+import org.apache.opencmis.commons.provider.ChangeEventInfoData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ChangeEventInfoDataImpl extends AbstractExtensionData implements ChangeEventInfoData {
+
+ private GregorianCalendar fChangeTime;
+ private TypeOfChanges fTypeOfChanges;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ChangeEventInfoData#getChangeTime()
+ */
+ public GregorianCalendar getChangeTime() {
+ return fChangeTime;
+ }
+
+ public void setChangeTime(GregorianCalendar changeTime) {
+ fChangeTime = changeTime;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ChangeEventInfoData#getChangeType()
+ */
+ public TypeOfChanges getChangeType() {
+ return fTypeOfChanges;
+ }
+
+ public void setTypeOfChanges(TypeOfChanges typeOfChanges) {
+ fTypeOfChanges = typeOfChanges;
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChangeEventInfoDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChoiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChoiceImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChoiceImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChoiceImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,73 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.api.Choice;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ChoiceImpl<T> extends AbstractExtensionData implements Choice<T> {
+
+ private String fDisplayName;
+ private List<T> fValue;
+ private List<Choice<T>> fChoice;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.Choice#getDisplayName()
+ */
+ public String getDisplayName() {
+ return fDisplayName;
+ }
+
+ public void setDisplayName(String displayName) {
+ fDisplayName = displayName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.Choice#getValue()
+ */
+ public List<T> getValue() {
+ return fValue;
+ }
+
+ public void setValue(List<T> value) {
+ fValue = value;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.Choice#getChoice()
+ */
+ public List<Choice<T>> getChoice() {
+ return fChoice;
+ }
+
+ public void setChoice(List<Choice<T>> choice) {
+ fChoice = choice;
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ChoiceImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ContentStreamDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ContentStreamDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ContentStreamDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ContentStreamDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,113 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.io.InputStream;
+import java.math.BigInteger;
+
+import org.apache.opencmis.commons.provider.ContentStreamData;
+
+/**
+ * Content stream data implementation.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ContentStreamDataImpl extends AbstractExtensionData implements ContentStreamData {
+
+ private String fFilename;
+ private BigInteger fLength;
+ private String fMimeType;
+ private InputStream fStream;
+
+ /**
+ * Constructor.
+ */
+ public ContentStreamDataImpl() {
+ }
+
+ /**
+ * Constructor.
+ */
+ public ContentStreamDataImpl(BigInteger length, String mimetype, String filename,
+ InputStream stream) {
+ setLength(length);
+ setMimeType(mimetype);
+ setFilename(filename);
+ setStream(stream);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ContentStreamData#getFilename()
+ */
+ public String getFilename() {
+ return fFilename;
+ }
+
+ public void setFilename(String filename) {
+ fFilename = filename;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ContentStreamData#getLength()
+ */
+ public BigInteger getLength() {
+ return fLength;
+ }
+
+ public void setLength(BigInteger length) {
+ fLength = length;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ContentStreamData#getMimeType()
+ */
+ public String getMimeType() {
+ return fMimeType;
+ }
+
+ public void setMimeType(String mimetype) {
+ fMimeType = mimetype;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ContentStreamData#getStream()
+ */
+ public InputStream getStream() {
+ return fStream;
+ }
+
+ public void setStream(InputStream stream) {
+ fStream = stream;
+ }
+
+ @Override
+ public String toString() {
+ return "ContentStream [filename=" + fFilename + ", length=" + fLength + ", MIME type="
+ + fMimeType + ", has stream=" + (fStream != null) + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ContentStreamDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/DocumentTypeDefinitionImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/DocumentTypeDefinitionImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/DocumentTypeDefinitionImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/DocumentTypeDefinitionImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import org.apache.opencmis.commons.api.DocumentTypeDefinition;
+import org.apache.opencmis.commons.enums.ContentStreamAllowed;
+
+/**
+ * Document type definition.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class DocumentTypeDefinitionImpl extends AbstractTypeDefinition implements
+ DocumentTypeDefinition {
+
+ private static final long serialVersionUID = 1L;
+
+ private ContentStreamAllowed fContentStreamAllowed;
+ private Boolean fIsVersionable;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.DocumentTypeDefinitionData#getContentStreamAllowed()
+ */
+ public ContentStreamAllowed getContentStreamAllowed() {
+ return fContentStreamAllowed;
+ }
+
+ public void setContentStreamAllowed(ContentStreamAllowed contentStreamAllowed) {
+ fContentStreamAllowed = contentStreamAllowed;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.DocumentTypeDefinitionData#isVersionable()
+ */
+ public Boolean isVersionable() {
+ return fIsVersionable;
+ }
+
+ public void setIsVersionable(Boolean isVersionable) {
+ fIsVersionable = isVersionable;
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/DocumentTypeDefinitionImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ExtensionDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ExtensionDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ExtensionDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ExtensionDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import org.apache.opencmis.commons.api.ExtensionsData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ExtensionDataImpl extends AbstractExtensionData implements ExtensionsData {
+
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ExtensionDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FailedToDeleteDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FailedToDeleteDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FailedToDeleteDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FailedToDeleteDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.provider.FailedToDeleteData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class FailedToDeleteDataImpl extends AbstractExtensionData implements FailedToDeleteData {
+
+ private List<String> fIds;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.FailedToDeleteData#getIds()
+ */
+ public List<String> getIds() {
+ return fIds;
+ }
+
+ public void setIds(List<String> ids) {
+ fIds = ids;
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FailedToDeleteDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FolderTypeDefinitionImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FolderTypeDefinitionImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FolderTypeDefinitionImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FolderTypeDefinitionImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import org.apache.opencmis.commons.api.FolderTypeDefinition;
+
+/**
+ * Folder type definition.
+ *
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class FolderTypeDefinitionImpl extends AbstractTypeDefinition implements
+ FolderTypeDefinition {
+
+ private static final long serialVersionUID = 1L;
+
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/FolderTypeDefinitionImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectDataImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectDataImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectDataImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectDataImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,215 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.PropertyIds;
+import org.apache.opencmis.commons.enums.BaseObjectTypeIds;
+import org.apache.opencmis.commons.provider.AccessControlList;
+import org.apache.opencmis.commons.provider.AllowableActionsData;
+import org.apache.opencmis.commons.provider.ChangeEventInfoData;
+import org.apache.opencmis.commons.provider.ObjectData;
+import org.apache.opencmis.commons.provider.PolicyIdListData;
+import org.apache.opencmis.commons.provider.PropertiesData;
+import org.apache.opencmis.commons.provider.PropertyData;
+import org.apache.opencmis.commons.provider.RenditionData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ObjectDataImpl extends AbstractExtensionData implements ObjectData {
+
+ private PropertiesData fProperties;
+ private ChangeEventInfoData fChangeEventInfo;
+ private List<ObjectData> fRelationships;
+ private List<RenditionData> fRenditions;
+ private PolicyIdListData fPolicyIds;
+ private AllowableActionsData fAllowableActions;
+ private AccessControlList fAcl;
+ private Boolean fIsExactAcl;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getId()
+ */
+ public String getId() {
+ Object value = getFirstValue(PropertyIds.CMIS_OBJECT_ID);
+ if (value instanceof String) {
+ return (String) value;
+ }
+
+ return null;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getBaseTypeId()
+ */
+ public BaseObjectTypeIds getBaseTypeId() {
+ Object value = getFirstValue(PropertyIds.CMIS_BASE_TYPE_ID);
+ if (value instanceof String) {
+ try {
+ return BaseObjectTypeIds.fromValue((String) value);
+ }
+ catch (Exception e) {
+ }
+ }
+
+ return null;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getProperties()
+ */
+ public PropertiesData getProperties() {
+ return fProperties;
+ }
+
+ public void setProperties(PropertiesData properties) {
+ fProperties = properties;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getChangeEventInfo()
+ */
+ public ChangeEventInfoData getChangeEventInfo() {
+ return fChangeEventInfo;
+ }
+
+ public void setChangeEventInfo(ChangeEventInfoData changeEventInfo) {
+ fChangeEventInfo = changeEventInfo;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getRelationships()
+ */
+ public List<ObjectData> getRelationships() {
+ return fRelationships;
+ }
+
+ public void setRelationships(List<ObjectData> relationships) {
+ fRelationships = relationships;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getRenditions()
+ */
+ public List<RenditionData> getRenditions() {
+ return fRenditions;
+ }
+
+ public void setRenditions(List<RenditionData> renditions) {
+ fRenditions = renditions;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getPolicyIds()
+ */
+ public PolicyIdListData getPolicyIds() {
+ return fPolicyIds;
+ }
+
+ public void setPolicyIds(PolicyIdListData policyIds) {
+ fPolicyIds = policyIds;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getAllowableActions()
+ */
+ public AllowableActionsData getAllowableActions() {
+ return fAllowableActions;
+ }
+
+ public void setAllowableActions(AllowableActionsData allowableActions) {
+ fAllowableActions = allowableActions;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#getACL()
+ */
+ public AccessControlList getAcl() {
+ return fAcl;
+ }
+
+ public void setAcl(AccessControlList acl) {
+ fAcl = acl;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectData#isExactACL()
+ */
+ public Boolean isExactAcl() {
+ return fIsExactAcl;
+ }
+
+ public void setIsExactAcl(Boolean isExactACL) {
+ fIsExactAcl = isExactACL;
+ }
+
+ // ---- internal ----
+
+ /**
+ * Returns the first value of a property or <code>null</code> if the property is not set.
+ */
+ private Object getFirstValue(String id) {
+ if ((fProperties == null) || (fProperties.getProperties() == null)) {
+ return null;
+ }
+
+ PropertyData<?> property = fProperties.getProperties().get(id);
+ if (property == null) {
+ return null;
+ }
+
+ return property.getFirstValue();
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "Object Data [properties=" + fProperties + ", allowable actions=" + fAllowableActions
+ + ", change event info=" + fChangeEventInfo + ", ACL=" + fAcl + ", is exact ACL="
+ + fIsExactAcl + ", policy ids=" + fPolicyIds + ", relationships=" + fRelationships
+ + ", renditions=" + fRenditions + "]" + super.toString();
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectDataImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectInFolderContainerImpl.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectInFolderContainerImpl.java?rev=910572&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectInFolderContainerImpl.java (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectInFolderContainerImpl.java Tue Feb 16 16:03:38 2010
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.opencmis.commons.impl.dataobjects;
+
+import java.util.List;
+
+import org.apache.opencmis.commons.provider.ObjectInFolderContainer;
+import org.apache.opencmis.commons.provider.ObjectInFolderData;
+
+/**
+ * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
+ *
+ */
+public class ObjectInFolderContainerImpl extends AbstractExtensionData implements
+ ObjectInFolderContainer {
+
+ private ObjectInFolderData fObject;
+ private List<ObjectInFolderContainer> fChildren;
+
+ /**
+ * Constructor.
+ */
+ public ObjectInFolderContainerImpl() {
+
+ }
+
+ /**
+ * Constructor.
+ */
+ public ObjectInFolderContainerImpl(ObjectInFolderData object) {
+ setObject(object);
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectInFolderContainer#getObject()
+ */
+ public ObjectInFolderData getObject() {
+ return fObject;
+ }
+
+ public void setObject(ObjectInFolderData object) {
+ fObject = object;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.apache.opencmis.client.provider.ObjectInFolderContainer#getChildren()
+ */
+ public List<ObjectInFolderContainer> getChildren() {
+ return fChildren;
+ }
+
+ public void setChildren(List<ObjectInFolderContainer> children) {
+ fChildren = children;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "ObjectInFolder Container [object=" + fObject + ", children=" + fChildren + "]";
+ }
+}
Propchange: incubator/chemistry/trunk/opencmis/opencmis-commons/opencmis-commons-impl/src/main/java/org/apache/opencmis/commons/impl/dataobjects/ObjectInFolderContainerImpl.java
------------------------------------------------------------------------------
svn:eol-style = native