You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by dp...@apache.org on 2008/12/03 16:25:04 UTC

svn commit: r722929 - in /jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis: Capabilities.java FullTextSupport.java JoinSupport.java QuerySupport.java

Author: dpfister
Date: Wed Dec  3 07:25:04 2008
New Revision: 722929

URL: http://svn.apache.org/viewvc?rev=722929&view=rev
Log:
Add capabilities and support enums

Added:
    jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java   (with props)
    jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java   (with props)
    jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java   (with props)
    jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java   (with props)

Added: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java?rev=722929&view=auto
==============================================================================
--- jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java (added)
+++ jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java Wed Dec  3 07:25:04 2008
@@ -0,0 +1,91 @@
+/*
+ * 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.jackrabbit.cmis;
+
+/**
+ * Describes the capabilities of a repository.
+ */
+public interface Capabilities {
+
+    /**
+     * Ability to file a document (or other fileable object that is not a
+     * folder) in more than a folder.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean hasMultifiling();
+
+    /**
+     * Ability to leave a document (or other fileable object that is not a
+     * folder) not filed in a any folder.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean hasUnfiling();
+
+    /**
+     * Ability to file a particular version (i.e., not all versions) of a
+     * document in a folder.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean hasVersionSpecificFiling();
+
+    /**
+     * Ability to update the "Private Working Copy" of a checked-out document.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean isPWCUpdatable();
+
+    /**
+     * Ability to include non-latest versions of document in query search
+     * scope; otherwise only the latest version of each document is searchable.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean areAllVersionsSearchable();
+
+    /**
+     * Ability to include the "Private Working Copy" of checked-out documents
+     * in query search scope; otherwise PWC's are not searchable.
+     *
+     * @return <code>true</code> or <code>false</code>
+     */
+    public boolean isPWCSearchable();
+
+    /**
+     * Ability to provide query.
+     *
+     * @return query support enum
+     */
+    public QuerySupport getQuerySupport();
+
+    /**
+     * Join support level in query.
+     *
+     * @return join support enum
+     */
+    public JoinSupport getJoinSupport();
+
+    /**
+     * Full-text search support level in query.
+     *
+     * @return full text support enum
+     */
+    public FullTextSupport getFullTextSupport();
+}

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/Capabilities.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision Rev Url

Added: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java?rev=722929&view=auto
==============================================================================
--- jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java (added)
+++ jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java Wed Dec  3 07:25:04 2008
@@ -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.jackrabbit.cmis;
+
+/**
+ * Full text support enumeration.
+ */
+public enum FullTextSupport {
+
+    /**
+     * No full-text support (i.e. a text-search-predicate is not allowed in
+     * the WHERE clause of a query).
+     */
+    NONE("none"),
+
+    /**
+     * Full-text only (i.e., only text-search-predicate is allowed in
+     * the WHERE clause of a query).
+     */
+    FULL_TEXT("fulltextonly"),
+
+    /**
+     * Full-text + structured/typed search on Properties (i.e. all search
+     * predicates are supported in the WHERE clause of a query).
+     */
+    FULL_TEXT_AND_STRUCTURED("fulltextandstructured");
+
+    /**
+     * Value.
+     */
+    private final String value;
+
+    /**
+     * Create a new instance of this class.
+     *
+     * @param value value
+     */
+    private FullTextSupport(String value) {
+        this.value = value;
+    }
+
+    @Override
+    public String toString() {
+        return value;
+    }
+}

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/FullTextSupport.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision Rev Url

Added: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java?rev=722929&view=auto
==============================================================================
--- jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java (added)
+++ jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java Wed Dec  3 07:25:04 2008
@@ -0,0 +1,57 @@
+/*
+ * 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.jackrabbit.cmis;
+
+/**
+ * Join support enumeration.
+ */
+public enum JoinSupport {
+
+    /**
+     * No join support.
+     */
+    NO("nojoin"),
+
+    /**
+     * Support inner join.
+     */
+    INNER("inneronly"),
+
+    /**
+     * Support inner and outer join.
+     */
+    INNER_AND_OUTER("innerandouter");
+
+    /**
+     * Value.
+     */
+    private final String value;
+
+    /**
+     * Create a new instance of this class.
+     *
+     * @param value value
+     */
+    private JoinSupport(String value) {
+        this.value = value;
+    }
+
+    @Override
+    public String toString() {
+        return value;
+    }
+}

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/JoinSupport.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision Rev Url

Added: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java?rev=722929&view=auto
==============================================================================
--- jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java (added)
+++ jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java Wed Dec  3 07:25:04 2008
@@ -0,0 +1,62 @@
+/*
+ * 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.jackrabbit.cmis;
+
+/**
+ * Query support enumeration.
+ */
+public enum QuerySupport {
+
+    /**
+     * No query support.
+     */
+    NONE("none"),
+
+    /**
+     * Only metadata.
+     */
+    METADATA_ONLY("metadataonly"),
+
+    /**
+     * Only full text query.
+     */
+    FULL_TEXT_ONLY("fulltextonly"),
+
+    /**
+     * Both full text and metadata capabilites provided.
+     */
+    BOTH("both");
+
+    /**
+     * Value.
+     */
+    private final String value;
+
+    /**
+     * Create a new instance of this class.
+     *
+     * @param value value
+     */
+    private QuerySupport(String value) {
+        this.value = value;
+    }
+
+    @Override
+    public String toString() {
+        return value;
+    }
+}

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: jackrabbit/sandbox/jcr-cmis/server/atompub/src/main/java/org/apache/jackrabbit/cmis/QuerySupport.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision Rev Url