You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by fm...@apache.org on 2016/06/24 10:03:34 UTC
svn commit: r1750066 [11/13] - in /chemistry/site/trunk: content/docs/
content/docs/cmis-samples/ content/docs/cmis-samples/about/
content/docs/cmis-samples/css/ content/docs/cmis-samples/fonts/
content/docs/cmis-samples/img/ content/docs/cmis-samples/...
Added: chemistry/site/trunk/content/docs/cmis-samples/samples/create-objects/index.html
URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/docs/cmis-samples/samples/create-objects/index.html?rev=1750066&view=auto
==============================================================================
--- chemistry/site/trunk/content/docs/cmis-samples/samples/create-objects/index.html (added)
+++ chemistry/site/trunk/content/docs/cmis-samples/samples/create-objects/index.html Fri Jun 24 10:03:33 2016
@@ -0,0 +1,563 @@
+<!DOCTYPE html>
+<!--
+
+ 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.
+
+-->
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="author" content="Apache Chemistry">
+ <link rel="shortcut icon" href="../../img/favicon.ico">
+
+ <title>Creating Objects - Apache Chemistry Samples</title>
+
+ <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+ <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
+ <link href="../../css/base.css" rel="stylesheet">
+ <link href="../../css/cinder.css" rel="stylesheet">
+ <link rel="stylesheet" href="../../css/highlight.css">
+
+
+ <link href="../../css/chemistry.css" rel="stylesheet">
+
+ <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+ <![endif]-->
+
+
+</head>
+
+<body>
+
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+
+ <!-- Collapsed navigation -->
+ <div class="navbar-header">
+
+ <!-- Expander button -->
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+
+
+ <!-- Main title -->
+ <a class="navbar-brand" href="../../index.html">Apache Chemistry Samples</a>
+ </div>
+
+ <!-- Expanded navigation -->
+ <div class="navbar-collapse collapse">
+
+ <!-- Main navigation -->
+ <ul class="nav navbar-nav">
+
+
+ <li >
+ <a href="../../index.html">Home</a>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Repository <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../create-session/index.html">Creating a Session</a>
+</li>
+
+
+
+<li >
+ <a href="../capabilities/index.html">Getting Repository Capabilities</a>
+</li>
+
+
+
+<li >
+ <a href="../types/index.html">Working with Types</a>
+</li>
+
+
+
+<li >
+ <a href="../exceptions/index.html">CMIS Exceptions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown active">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">CRUD <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../retrieve-objects/index.html">Retrieving Objects</a>
+</li>
+
+
+
+<li class="active">
+ <a href="index.html">Creating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../update-objects/index.html">Updating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../move-objects/index.html">Moving Object</a>
+</li>
+
+
+
+<li >
+ <a href="../delete-objects/index.html">Deleting Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../content/index.html">Working with Content</a>
+</li>
+
+
+
+<li >
+ <a href="../versions/index.html">Working with Versions</a>
+</li>
+
+
+
+<li >
+ <a href="../properties/index.html">Working with Properties and Secondary Types</a>
+</li>
+
+
+
+<li >
+ <a href="../operation-context/index.html">Understanding the Operation Context</a>
+</li>
+
+
+
+<li >
+ <a href="../lists/index.html">Working with Lists, Paging and Skipping</a>
+</li>
+
+
+
+<li >
+ <a href="../extensions/index.html">Getting Extensions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Query <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../queries/index.html">Executing Queries</a>
+</li>
+
+
+
+<li >
+ <a href="../changelog/index.html">Retrieving the Change Log</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Access Control <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../allowable-actions/index.html">Checking Allowable Actions</a>
+</li>
+
+
+
+<li >
+ <a href="../access-control/index.html">Managing Access Control</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li >
+ <a href="../../about/index.html">About</a>
+ </li>
+
+
+ </ul>
+
+
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+ <i class="fa fa-search" aria-hidden="true"></i> Search
+ </a>
+ </li>
+
+ <li >
+ <a rel="next" href="../retrieve-objects/index.html">
+ <i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
+ </a>
+ </li>
+ <li >
+ <a rel="prev" href="../update-objects/index.html">
+ Next <i class="fa fa-arrow-right" aria-hidden="true"></i>
+ </a>
+ </li>
+
+ <li>
+ <a href="https://www.apache.org" style="padding: 2px;">
+ <img src="../../img/feather.png">
+ </a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+ <div class="container">
+
+ <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+ <ul class="nav bs-sidenav">
+
+ <li class="first-level active"><a href="#creating-objects">Creating Objects</a></li>
+
+ <li class="second-level"><a href="#creating-a-folder">Creating a Folder</a></li>
+
+
+ <li class="second-level"><a href="#creating-a-document">Creating a Document</a></li>
+
+ <li class="third-level"><a href="#creating-a-documet-from-source-copy-content">Creating a Documet from Source (Copy Content)</a></li>
+
+
+ <li class="second-level"><a href="#creating-a-relationship">Creating a Relationship</a></li>
+
+
+ <li class="second-level"><a href="#creating-a-policy">Creating a Policy</a></li>
+
+
+ <li class="second-level"><a href="#creating-an-item">Creating an Item</a></li>
+
+
+ <li class="second-level"><a href="#creating-object-with-a-folder-object-vs-creating-object-with-the-session-object">Creating object with a Folder Object vs Creating object with the Session Object</a></li>
+
+
+
+ </ul>
+</div></div>
+ <div class="col-md-9" role="main">
+
+<h1 id="creating-objects">Creating Objects</h1>
+<p>To create an object a client has to provide a least the two properties <strong>cmis:name</strong> and <strong>cmis:objectTypeId</strong>.<br />
+<strong>cmis:name</strong> sets the name of the object and <strong>cmis:objectTypeId</strong> sets its object type.<br />
+Depending on the object type, more properties can be set or must be set. See also the page about <a href="../properties/index.html">properties</a>.</p>
+<h2 id="creating-a-folder">Creating a Folder</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.1.5</span></p>
+<p>A folder is always a <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> object. That is, you always need a parent folder.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">Folder parent = ....
+
+// prepare properties
+Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.NAME, "a new folder");
+properties.put(PropertyIds.OBJECT_TYPE_ID, "cmis:folder");
+
+// create the folder
+Folder newFolder = parent.createFolder(properties);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder parent = ....
+
+// prepare properties
+IDictionary<string, object> properties = new Dictionary<string, object>();
+properties[PropertyIds.Name] = "a new folder";
+properties[PropertyIds.ObjectTypeId] = "cmis:folder";
+
+// create the folder
+IFolder newFolder = parent.CreateFolder(properties);
+</code></pre>
+
+<h2 id="creating-a-document">Creating a Document</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.1.4</span></p>
+<p>Documents can be <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> and <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr>. The following samples show how to create a <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> document. Use the session object to create an <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr> document.</p>
+<p>See also the <a href="../content/index.html">page about content</a> how to work with content streams.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">Folder parent = ....
+
+String textFileName = "test.txt";
+
+// prepare content - a simple text file
+String content = "Hello World!";
+
+String filename = textFileName;
+String mimetype = "text/plain; charset=UTF-8";
+
+byte[] contentBytes = content.getBytes("UTF-8");
+ByteArrayInputStream stream = new ByteArrayInputStream(contentBytes);
+
+ContentStream contentStream = session.getObjectFactory().createContentStream(filename, contentBytes.length, mimetype, stream);
+
+// prepare properties
+Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.NAME, textFileName);
+properties.put(PropertyIds.OBJECT_TYPE_ID, "cmis:document");
+
+// create the document
+Document newDoc = parent.createDocument(properties, contentStream, VersioningState.NONE);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder parent = ....
+
+string textFileName = "test.txt";
+
+// prepare content - a simple text file
+string content = "Hello World!";
+
+string filename = textFileName;
+string mimetype = "text/plain; charset=UTF-8";
+
+byte[] contentBytes = Encoding.UTF8.GetBytes(content);
+Stream stream = new MemoryStream(contentBytes);
+
+IContentStream contentStream = session.ObjectFactory.CreateContentStream(filename, contentBytes.length, mimetype, stream);
+
+// prepare properties
+IDictionary<string, object> properties = new Dictionary<string, object>();
+properties[PropertyIds.Name] = textFileName;
+properties[PropertyIds.ObjectTypeId] = "cmis:document";
+
+// create the document
+IDocument newDoc = parent.CreateDocument(properties, contentStream, VersioningState.None);
+</code></pre>
+
+<h3 id="creating-a-documet-from-source-copy-content">Creating a Documet from Source (Copy Content)</h3>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">Folder folder = ...
+Document doc = ...
+
+doc.copy(folder); // create a copy of the document in this folder
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder folder = ...
+IDocument doc = ...
+
+doc.Copy(folder); // create a copy of the document in this folder
+</code></pre>
+
+<h2 id="creating-a-relationship">Creating a Relationship</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.1.6</span></p>
+<p>Relationships are always <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr> objects. The ID of the source object and the ID of the target object must be provided.
+See the <a href="../types/index.html">page about types</a> how to discover relationship types and their properties.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">String sourceId = ...
+String targetId = ...
+
+Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.NAME, "a new relationship");
+properties.put(PropertyIds.OBJECT_TYPE_ID, "my:relationsip");
+properties.put(PropertyIds.SOURCE_ID, sourceId);
+properties.put(PropertyIds.TARGET_ID, targetId);
+
+ObjectId newRelId = session.createRelationship(properties);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">string sourceId = ...
+string targetId = ...
+
+IDictionary<string, object> properties = new Dictionary<string, object>();
+properties[PropertyIds.Name] = "a new relationship";
+properties[PropertyIds.ObjectTypeId] = "my:relationsip";
+properties[PropertyIds.SourceId] = sourceId;
+properties[PropertyIds.TargetId] = targetId;
+
+IObjectId newRelId = session.CreateRelationship(properties);
+</code></pre>
+
+<h2 id="creating-a-policy">Creating a Policy</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.1.7</span></p>
+<p>Policies can be <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> and <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr>. The following samples show how to create a <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> policy. Use the session object to create an <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr> policy.</p>
+<p>In most cases it doesn’t make sense to create an policies of the type <code>cmis:policy</code> because it has no semantics. Usually, the repository provides specific policy types with or without additional properties. See the <a href="../types/index.html">page about types</a> how to discover policy types and their properties.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">Folder parent = ....
+
+// prepare properties
+Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.NAME, "a new policy");
+properties.put(PropertyIds.OBJECT_TYPE_ID, "my:policy");
+properties.put(PropertyIds.POLICY_TEXT, "my policy description");
+
+// create the policy
+Policy newPolicy = parent.createPolicy(properties);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder parent = ....
+
+// prepare properties
+IDictionary<string, object> properties = new Dictionary<string, object>();
+properties[PropertyIds.Name] = "a new policy";
+properties[PropertyIds.ObjectTypeId] = "my:policy";
+properties[PropertyIds.PolicyText] = "my policy description";
+
+// create the policy
+IPolicy newPolicy = parent.CreatePolicy(properties);
+</code></pre>
+
+<h2 id="creating-an-item">Creating an Item</h2>
+<p><span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.1.8</span></p>
+<p>Items can be <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> and <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr>. The following samples show how to create a <abbr title="An object is called "filed" if it resides in one or more folders.">filed</abbr> item. Use the session object to create an <abbr title="An object is called "unfiled" if it doesn't reside in a folder. Folders cannot be unfiled.">unfiled</abbr> item.</p>
+<p>In most cases it doesn’t make sense to create an item of the type <code>cmis:item</code>. Usually, the repository provides specific item types with or without additional properties. See the <a href="../types/index.html">page about types</a> how to discover item types and their properties.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">Folder parent = ....
+
+// prepare properties
+Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.NAME, "a new item");
+properties.put(PropertyIds.OBJECT_TYPE_ID, "my:item");
+
+// create the item
+Item newItem = parent.createItem(properties);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder parent = ....
+
+// prepare properties
+IDictionary<string, object> properties = new Dictionary<string, object>();
+properties[PropertyIds.Name] = "a new item";
+properties[PropertyIds.ObjectTypeId] = "cmis:item";
+
+// create the item
+IItem newItem = parent.CreateItem(properties);
+</code></pre>
+
+<h2 id="creating-object-with-a-folder-object-vs-creating-object-with-the-session-object">Creating object with a Folder Object vs Creating object with the Session Object</h2>
+<p>OpenCMIS and PortCMIS provide two ways to create objects.
+The code samples above create objects in a folder. It is also possible to create an object with the session object
+and without getting the parent folder first.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">Map<String, Object> properties = new HashMap<String, Object>();
+properties.put(PropertyIds.OBJECT_TYPE_ID, "cmis:folder");
+properties.put(PropertyIds.NAME, "a new folder");
+
+ObjectId newFolderId = session.createFolder(properties, parentId);
+</code></pre>
+
+<p>Both approaches have advantages and disadvantages.</p>
+<p>Creating an object with a folder object is more convenient. The create methods return the newly created object.</p>
+<p>Creating an object with the session object is faster because it only needs one round-trip to the server. But it only returns the ID of the newly created object.</p>
+<p>Unfiled objects can only be created with the session object.</p></div>
+
+ </div>
+
+ <footer class="col-md-12 text-center">
+ <hr>
+ <p>
+ </footer>
+
+ <script src="../../js/jquery-1.10.2.min.js"></script>
+ <script src="../../js/bootstrap-3.0.3.min.js"></script>
+ <script src="../../js/highlight.pack.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script>
+ var base_url = '../..';
+ </script>
+ <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+ <script src="../../js/base.js"></script>
+
+ <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+ <div class="modal-dialog">
+ <div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal">
+ <span aria-hidden="true">×</span>
+ <span class="sr-only">Close</span>
+ </button>
+ <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+ </div>
+ <div class="modal-body">
+ <p>
+ From here you can search these documents. Enter your search terms below.
+ </p>
+ <form role="form">
+ <div class="form-group">
+ <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+ </div>
+ </form>
+ <div id="mkdocs-search-results"></div>
+ </div>
+ <div class="modal-footer">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <script type="text/javascript" src="../../js/retina.min.js"></script>
+ </body>
+
+</html>
+<!-- last update: 2016-06-24 09:47:51.641718 -->
\ No newline at end of file
Added: chemistry/site/trunk/content/docs/cmis-samples/samples/create-session/index.html
URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/docs/cmis-samples/samples/create-session/index.html?rev=1750066&view=auto
==============================================================================
--- chemistry/site/trunk/content/docs/cmis-samples/samples/create-session/index.html (added)
+++ chemistry/site/trunk/content/docs/cmis-samples/samples/create-session/index.html Fri Jun 24 10:03:33 2016
@@ -0,0 +1,499 @@
+<!DOCTYPE html>
+<!--
+
+ 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.
+
+-->
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="author" content="Apache Chemistry">
+ <link rel="shortcut icon" href="../../img/favicon.ico">
+
+ <title>Creating a Session - Apache Chemistry Samples</title>
+
+ <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+ <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
+ <link href="../../css/base.css" rel="stylesheet">
+ <link href="../../css/cinder.css" rel="stylesheet">
+ <link rel="stylesheet" href="../../css/highlight.css">
+
+
+ <link href="../../css/chemistry.css" rel="stylesheet">
+
+ <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+ <![endif]-->
+
+
+</head>
+
+<body>
+
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+
+ <!-- Collapsed navigation -->
+ <div class="navbar-header">
+
+ <!-- Expander button -->
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+
+
+ <!-- Main title -->
+ <a class="navbar-brand" href="../../index.html">Apache Chemistry Samples</a>
+ </div>
+
+ <!-- Expanded navigation -->
+ <div class="navbar-collapse collapse">
+
+ <!-- Main navigation -->
+ <ul class="nav navbar-nav">
+
+
+ <li >
+ <a href="../../index.html">Home</a>
+ </li>
+
+
+
+ <li class="dropdown active">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Repository <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li class="active">
+ <a href="index.html">Creating a Session</a>
+</li>
+
+
+
+<li >
+ <a href="../capabilities/index.html">Getting Repository Capabilities</a>
+</li>
+
+
+
+<li >
+ <a href="../types/index.html">Working with Types</a>
+</li>
+
+
+
+<li >
+ <a href="../exceptions/index.html">CMIS Exceptions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">CRUD <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../retrieve-objects/index.html">Retrieving Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../create-objects/index.html">Creating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../update-objects/index.html">Updating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../move-objects/index.html">Moving Object</a>
+</li>
+
+
+
+<li >
+ <a href="../delete-objects/index.html">Deleting Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../content/index.html">Working with Content</a>
+</li>
+
+
+
+<li >
+ <a href="../versions/index.html">Working with Versions</a>
+</li>
+
+
+
+<li >
+ <a href="../properties/index.html">Working with Properties and Secondary Types</a>
+</li>
+
+
+
+<li >
+ <a href="../operation-context/index.html">Understanding the Operation Context</a>
+</li>
+
+
+
+<li >
+ <a href="../lists/index.html">Working with Lists, Paging and Skipping</a>
+</li>
+
+
+
+<li >
+ <a href="../extensions/index.html">Getting Extensions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Query <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../queries/index.html">Executing Queries</a>
+</li>
+
+
+
+<li >
+ <a href="../changelog/index.html">Retrieving the Change Log</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Access Control <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../allowable-actions/index.html">Checking Allowable Actions</a>
+</li>
+
+
+
+<li >
+ <a href="../access-control/index.html">Managing Access Control</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li >
+ <a href="../../about/index.html">About</a>
+ </li>
+
+
+ </ul>
+
+
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+ <i class="fa fa-search" aria-hidden="true"></i> Search
+ </a>
+ </li>
+
+ <li >
+ <a rel="next" href="../../index.html">
+ <i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
+ </a>
+ </li>
+ <li >
+ <a rel="prev" href="../capabilities/index.html">
+ Next <i class="fa fa-arrow-right" aria-hidden="true"></i>
+ </a>
+ </li>
+
+ <li>
+ <a href="https://www.apache.org" style="padding: 2px;">
+ <img src="../../img/feather.png">
+ </a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+ <div class="container">
+
+ <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+ <ul class="nav bs-sidenav">
+
+ <li class="first-level active"><a href="#creating-a-session">Creating a Session</a></li>
+
+ <li class="second-level"><a href="#atompub-binding">AtomPub Binding</a></li>
+
+
+ <li class="second-level"><a href="#browser-binding">Browser Binding</a></li>
+
+
+ <li class="second-level"><a href="#web-services-binding">Web Services Binding</a></li>
+
+
+ <li class="second-level"><a href="#local-binding">Local Binding</a></li>
+
+
+ <li class="second-level"><a href="#connecting-to-the-first-repository">Connecting to the First Repository</a></li>
+
+
+
+ </ul>
+</div></div>
+ <div class="col-md-9" role="main">
+
+<h1 id="creating-a-session">Creating a Session</h1>
+<p>A session is the entry point to the content repository. Creating a session is the first thing an application has to do to interact with the repository.</p>
+<p>A few details such as the URL of the repository endpoint, the user name and the user’s credentials are necessary to establish a session.
+Beyond that more details might be required, depending on the repository and the environment. Those details are controlled by session parameters.</p>
+<p>A complete list of all session parameters for OpenCMIS can be found in the JavaDoc. For PortCMIS, please refer to the help file that is contained in the binary packages.</p>
+<div class="admonition note">
+<p class="admonition-title">Which binding should I use?</p>
+<p>The <strong>Browser Binding</strong> is the fastest binding and is recommended for <strong>CMIS 1.1</strong> repositories.<br />
+Choose the <strong>AtomPub Binding</strong> for <strong>CMIS 1.0</strong> repositories.<br />
+The Web Services Binding is the last resort and should be avoided. It is the slowest binding and is the most complex to set up.</p>
+</div>
+<h2 id="atompub-binding">AtomPub Binding</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span></p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">// default factory implementation
+SessionFactory factory = SessionFactoryImpl.newInstance();
+Map<String, String> parameters = new HashMap<String, String>();
+
+// user credentials
+parameters.put(SessionParameter.USER, "Otto");
+parameters.put(SessionParameter.PASSWORD, "****");
+
+// connection settings
+parameters.put(SessionParameter.ATOMPUB_URL, "http://<host>:<port>/cmis/atom");
+parameters.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value());
+parameters.put(SessionParameter.REPOSITORY_ID, "myRepository");
+
+// create session
+Session session = factory.createSession(parameters);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">// default factory implementation
+SessionFactory factory = SessionFactory.NewInstance();
+Dictionary<string, string> parameters = new Dictionary<string, string>();
+
+// user credentials
+parameters[SessionParameter.User] = "Otto";
+parameters[SessionParameter.Password] = "****";
+
+// connection settings
+parameters[SessionParameter.AtomPubUrl] = "http://<host>:<port>/cmis/atom";
+parameters[SessionParameter.BindingType] = BindingType.AtomPub;
+parameters[SessionParameter.RepositoryId] = "myRepository";
+
+// create session
+ISession session = factory.CreateSession(parameters);
+</code></pre>
+
+<h2 id="browser-binding">Browser Binding</h2>
+<p><span class="cmis">CMIS 1.1</span></p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">// default factory implementation
+SessionFactory factory = SessionFactoryImpl.newInstance();
+Map<String, String> parameters = new HashMap<String, String>();
+
+// user credentials
+parameters.put(SessionParameter.USER, "Otto");
+parameters.put(SessionParameter.PASSWORD, "****");
+
+// connection settings
+parameters.put(SessionParameter.BROWSER_URL, "http://<host>:<port>/cmis/browser");
+parameters.put(SessionParameter.BINDING_TYPE, BindingType.BROWSER.value());
+parameters.put(SessionParameter.REPOSITORY_ID, "myRepository");
+
+// create session
+Session session = factory.createSession(parameters);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">// default factory implementation
+SessionFactory factory = SessionFactory.NewInstance();
+Dictionary<string, string> parameters = new Dictionary<string, string>();
+
+// user credentials
+parameters[SessionParameter.User] = "Otto";
+parameters[SessionParameter.Password] = "****";
+
+// connection settings
+parameters[SessionParameter.BrowserUrl] = "http://<host>:<port>/cmis/browser";
+parameters[SessionParameter.BindingType] = BindingType.Browser;
+parameters[SessionParameter.RepositoryId] = "myRepository";
+
+// create session
+ISession session = factory.CreateSession(parameters);
+</code></pre>
+
+<h2 id="web-services-binding">Web Services Binding</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span></p>
+<p>PortCMIS does not support the Web Service binding.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">// default factory implementation
+SessionFactory factory = SessionFactoryImpl.newInstance();
+Map<String, String> parameters = new HashMap<String, String>();
+
+// user credentials
+parameters.put(SessionParameter.USER, "Otto");
+parameters.put(SessionParameter.PASSWORD, "****");
+
+// connection settings
+parameters.put(SessionParameter.BINDING_TYPE, BindingType.WEBSERVICES.value());
+parameters.put(SessionParameter.WEBSERVICES_ACL_SERVICE, "http://<host>:<port>/cmis/services/ACLService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE, "http://<host>:<port>/cmis/services/DiscoveryService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE, "http://<host>:<port>/cmis/services/MultiFilingService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE, "http://<host>:<port>/cmis/services/NavigationService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE, "http://<host>:<port>/cmis/services/ObjectService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_POLICY_SERVICE, "http://<host>:<port>/cmis/services/PolicyService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE, "http://<host>:<port>/cmis/services/RelationshipService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE, "http://<host>:<port>/cmis/services/RepositoryService?wsdl");
+parameters.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE, "http://<host>:<port>/cmis/services/VersioningService?wsdl");
+parameters.put(SessionParameter.REPOSITORY_ID, "myRepository");
+
+// create session
+Session session = factory.createSession(parameters);
+</code></pre>
+
+<h2 id="local-binding">Local Binding</h2>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span></p>
+<p>The local binding is specific to OpenCMIS. It lets an OpenCMIS client connect to an OpenCMIS server in the same JVM.
+There is no PortCMIS equivalent.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">// default factory implementation
+SessionFactory factory = SessionFactoryImpl.newInstance();
+Map<String, String> parameters = new HashMap<String, String>();
+
+// user credentials
+parameters.put(SessionParameter.USER, "Otto");
+parameters.put(SessionParameter.PASSWORD, "****");
+
+// connection settings
+parameters.put(SessionParameter.BINDING_TYPE, BindingType.LOCAL.value());
+parameters.put(SessionParameter.LOCAL_FACTORY, "my.local.factory");
+parameters.put(SessionParameter.REPOSITORY_ID, "myRepository");
+
+// create session
+Session session = factory.createSession(parameters);
+</code></pre>
+
+<h2 id="connecting-to-the-first-repository">Connecting to the First Repository</h2>
+<p>Some CMIS endpoints only provide one repository. In this case it is not necessary to provide its repository ID.
+The following code snippet gets the list of all available repositories and connects to the first one.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">SessionFactory factory = SessionFactoryImpl.newInstance();
+List<Repository> repositories = factory.getRepositories(parameters);
+Session session = repositories.get(0).createSession();
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">SessionFactory factory = SessionFactory.NewInstance();
+ISession session = factory.GetRepositories(parameters)[0].CreateSession();
+</code></pre></div>
+
+ </div>
+
+ <footer class="col-md-12 text-center">
+ <hr>
+ <p>
+ </footer>
+
+ <script src="../../js/jquery-1.10.2.min.js"></script>
+ <script src="../../js/bootstrap-3.0.3.min.js"></script>
+ <script src="../../js/highlight.pack.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script>
+ var base_url = '../..';
+ </script>
+ <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+ <script src="../../js/base.js"></script>
+
+ <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+ <div class="modal-dialog">
+ <div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal">
+ <span aria-hidden="true">×</span>
+ <span class="sr-only">Close</span>
+ </button>
+ <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+ </div>
+ <div class="modal-body">
+ <p>
+ From here you can search these documents. Enter your search terms below.
+ </p>
+ <form role="form">
+ <div class="form-group">
+ <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+ </div>
+ </form>
+ <div id="mkdocs-search-results"></div>
+ </div>
+ <div class="modal-footer">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <script type="text/javascript" src="../../js/retina.min.js"></script>
+ </body>
+
+</html>
+<!-- last update: 2016-06-24 09:47:51.499576 -->
\ No newline at end of file
Added: chemistry/site/trunk/content/docs/cmis-samples/samples/delete-objects/index.html
URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/docs/cmis-samples/samples/delete-objects/index.html?rev=1750066&view=auto
==============================================================================
--- chemistry/site/trunk/content/docs/cmis-samples/samples/delete-objects/index.html (added)
+++ chemistry/site/trunk/content/docs/cmis-samples/samples/delete-objects/index.html Fri Jun 24 10:03:33 2016
@@ -0,0 +1,400 @@
+<!DOCTYPE html>
+<!--
+
+ 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.
+
+-->
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="author" content="Apache Chemistry">
+ <link rel="shortcut icon" href="../../img/favicon.ico">
+
+ <title>Deleting Objects - Apache Chemistry Samples</title>
+
+ <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+ <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
+ <link href="../../css/base.css" rel="stylesheet">
+ <link href="../../css/cinder.css" rel="stylesheet">
+ <link rel="stylesheet" href="../../css/highlight.css">
+
+
+ <link href="../../css/chemistry.css" rel="stylesheet">
+
+ <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+ <![endif]-->
+
+
+</head>
+
+<body>
+
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+
+ <!-- Collapsed navigation -->
+ <div class="navbar-header">
+
+ <!-- Expander button -->
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+
+
+ <!-- Main title -->
+ <a class="navbar-brand" href="../../index.html">Apache Chemistry Samples</a>
+ </div>
+
+ <!-- Expanded navigation -->
+ <div class="navbar-collapse collapse">
+
+ <!-- Main navigation -->
+ <ul class="nav navbar-nav">
+
+
+ <li >
+ <a href="../../index.html">Home</a>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Repository <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../create-session/index.html">Creating a Session</a>
+</li>
+
+
+
+<li >
+ <a href="../capabilities/index.html">Getting Repository Capabilities</a>
+</li>
+
+
+
+<li >
+ <a href="../types/index.html">Working with Types</a>
+</li>
+
+
+
+<li >
+ <a href="../exceptions/index.html">CMIS Exceptions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown active">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">CRUD <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../retrieve-objects/index.html">Retrieving Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../create-objects/index.html">Creating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../update-objects/index.html">Updating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../move-objects/index.html">Moving Object</a>
+</li>
+
+
+
+<li class="active">
+ <a href="index.html">Deleting Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../content/index.html">Working with Content</a>
+</li>
+
+
+
+<li >
+ <a href="../versions/index.html">Working with Versions</a>
+</li>
+
+
+
+<li >
+ <a href="../properties/index.html">Working with Properties and Secondary Types</a>
+</li>
+
+
+
+<li >
+ <a href="../operation-context/index.html">Understanding the Operation Context</a>
+</li>
+
+
+
+<li >
+ <a href="../lists/index.html">Working with Lists, Paging and Skipping</a>
+</li>
+
+
+
+<li >
+ <a href="../extensions/index.html">Getting Extensions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Query <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../queries/index.html">Executing Queries</a>
+</li>
+
+
+
+<li >
+ <a href="../changelog/index.html">Retrieving the Change Log</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Access Control <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../allowable-actions/index.html">Checking Allowable Actions</a>
+</li>
+
+
+
+<li >
+ <a href="../access-control/index.html">Managing Access Control</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li >
+ <a href="../../about/index.html">About</a>
+ </li>
+
+
+ </ul>
+
+
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+ <i class="fa fa-search" aria-hidden="true"></i> Search
+ </a>
+ </li>
+
+ <li >
+ <a rel="next" href="../move-objects/index.html">
+ <i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
+ </a>
+ </li>
+ <li >
+ <a rel="prev" href="../content/index.html">
+ Next <i class="fa fa-arrow-right" aria-hidden="true"></i>
+ </a>
+ </li>
+
+ <li>
+ <a href="https://www.apache.org" style="padding: 2px;">
+ <img src="../../img/feather.png">
+ </a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+ <div class="container">
+
+ <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+ <ul class="nav bs-sidenav">
+
+ <li class="first-level active"><a href="#deleting-objects">Deleting Objects</a></li>
+
+ <li class="second-level"><a href="#deleting-objects_1">Deleting Objects</a></li>
+
+
+ <li class="second-level"><a href="#deleting-documents-and-versions">Deleting Documents and Versions</a></li>
+
+ <li class="third-level"><a href="#deleting-a-document-and-all-versions">Deleting a Document and All Versions</a></li>
+
+ <li class="third-level"><a href="#deleting-a-single-version">Deleting a Single Version</a></li>
+
+
+ <li class="second-level"><a href="#deleting-a-folder-hierarchy">Deleting a Folder Hierarchy</a></li>
+
+
+
+ </ul>
+</div></div>
+ <div class="col-md-9" role="main">
+
+<h1 id="deleting-objects">Deleting Objects</h1>
+<div class="admonition note">
+<p class="admonition-title">Allowable Actions</p>
+<p>Before you delete an object, check the <a href="../allowable-actions/index.html">Allowable Actions</a> to determine if the
+current user is allowed to delete the object.</p>
+</div>
+<h2 id="deleting-objects_1">Deleting Objects</h2>
+<p>The following snippet deletes an object.
+If the object is a document, all versions of the document are deleted.
+If the object is a folder and it is not empty, a <a href="../exceptions/index.html">constraint</a> exception is thrown.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">CmisObject cmisObject = ...
+cmisObject.delete();
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">ICmisObject cmisObject = ...
+cmisObject.Delete();
+</code></pre>
+
+<h2 id="deleting-documents-and-versions">Deleting Documents and Versions</h2>
+<p>If a document is versioned, the whole version series can be deleted or just a single version. This is controlled with the <code>allVersions</code> parameter.</p>
+<p>For documents that are not versioned it doesn’t matter if the <code>allVersions</code> parameter is set to <code>true</code> or <code>false</code>.</p>
+<h3 id="deleting-a-document-and-all-versions">Deleting a Document and All Versions</h3>
+<p>To delete a whole version series, set the <code>allVersions</code> to <code>true</code>.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">Document document = ...
+document.delete(true); // allVersions = true
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IDocument document = ...
+document.Delete(true); // allVersions = true
+</code></pre>
+
+<h3 id="deleting-a-single-version">Deleting a Single Version</h3>
+<p>To delete one version with a version series, set the <code>allVersions</code> to <code>false</code>.</p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">Document document = ...
+document.delete(false); // allVersions = false
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IDocument document = ...
+document.Delete(false); // allVersions = false
+</code></pre>
+
+<h2 id="deleting-a-folder-hierarchy">Deleting a Folder Hierarchy</h2>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="Java">Folder folder = ...
+folder.deleteTree(true, UnfileObject.DELETE, true);
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">IFolder folder = ...
+folder.DeleteTree(true, UnfileObject.Delete, true);
+</code></pre></div>
+
+ </div>
+
+ <footer class="col-md-12 text-center">
+ <hr>
+ <p>
+ </footer>
+
+ <script src="../../js/jquery-1.10.2.min.js"></script>
+ <script src="../../js/bootstrap-3.0.3.min.js"></script>
+ <script src="../../js/highlight.pack.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script>
+ var base_url = '../..';
+ </script>
+ <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+ <script src="../../js/base.js"></script>
+
+ <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+ <div class="modal-dialog">
+ <div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal">
+ <span aria-hidden="true">×</span>
+ <span class="sr-only">Close</span>
+ </button>
+ <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+ </div>
+ <div class="modal-body">
+ <p>
+ From here you can search these documents. Enter your search terms below.
+ </p>
+ <form role="form">
+ <div class="form-group">
+ <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+ </div>
+ </form>
+ <div id="mkdocs-search-results"></div>
+ </div>
+ <div class="modal-footer">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <script type="text/javascript" src="../../js/retina.min.js"></script>
+ </body>
+
+</html>
+<!-- last update: 2016-06-24 09:47:51.708341 -->
\ No newline at end of file
Added: chemistry/site/trunk/content/docs/cmis-samples/samples/exceptions/index.html
URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/docs/cmis-samples/samples/exceptions/index.html?rev=1750066&view=auto
==============================================================================
--- chemistry/site/trunk/content/docs/cmis-samples/samples/exceptions/index.html (added)
+++ chemistry/site/trunk/content/docs/cmis-samples/samples/exceptions/index.html Fri Jun 24 10:03:33 2016
@@ -0,0 +1,426 @@
+<!DOCTYPE html>
+<!--
+
+ 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.
+
+-->
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="author" content="Apache Chemistry">
+ <link rel="shortcut icon" href="../../img/favicon.ico">
+
+ <title>CMIS Exceptions - Apache Chemistry Samples</title>
+
+ <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+ <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
+ <link href="../../css/base.css" rel="stylesheet">
+ <link href="../../css/cinder.css" rel="stylesheet">
+ <link rel="stylesheet" href="../../css/highlight.css">
+
+
+ <link href="../../css/chemistry.css" rel="stylesheet">
+
+ <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+ <![endif]-->
+
+
+</head>
+
+<body>
+
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+
+ <!-- Collapsed navigation -->
+ <div class="navbar-header">
+
+ <!-- Expander button -->
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+
+
+ <!-- Main title -->
+ <a class="navbar-brand" href="../../index.html">Apache Chemistry Samples</a>
+ </div>
+
+ <!-- Expanded navigation -->
+ <div class="navbar-collapse collapse">
+
+ <!-- Main navigation -->
+ <ul class="nav navbar-nav">
+
+
+ <li >
+ <a href="../../index.html">Home</a>
+ </li>
+
+
+
+ <li class="dropdown active">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Repository <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../create-session/index.html">Creating a Session</a>
+</li>
+
+
+
+<li >
+ <a href="../capabilities/index.html">Getting Repository Capabilities</a>
+</li>
+
+
+
+<li >
+ <a href="../types/index.html">Working with Types</a>
+</li>
+
+
+
+<li class="active">
+ <a href="index.html">CMIS Exceptions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">CRUD <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../retrieve-objects/index.html">Retrieving Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../create-objects/index.html">Creating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../update-objects/index.html">Updating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../move-objects/index.html">Moving Object</a>
+</li>
+
+
+
+<li >
+ <a href="../delete-objects/index.html">Deleting Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../content/index.html">Working with Content</a>
+</li>
+
+
+
+<li >
+ <a href="../versions/index.html">Working with Versions</a>
+</li>
+
+
+
+<li >
+ <a href="../properties/index.html">Working with Properties and Secondary Types</a>
+</li>
+
+
+
+<li >
+ <a href="../operation-context/index.html">Understanding the Operation Context</a>
+</li>
+
+
+
+<li >
+ <a href="../lists/index.html">Working with Lists, Paging and Skipping</a>
+</li>
+
+
+
+<li >
+ <a href="../extensions/index.html">Getting Extensions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Query <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../queries/index.html">Executing Queries</a>
+</li>
+
+
+
+<li >
+ <a href="../changelog/index.html">Retrieving the Change Log</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Access Control <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../allowable-actions/index.html">Checking Allowable Actions</a>
+</li>
+
+
+
+<li >
+ <a href="../access-control/index.html">Managing Access Control</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li >
+ <a href="../../about/index.html">About</a>
+ </li>
+
+
+ </ul>
+
+
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+ <i class="fa fa-search" aria-hidden="true"></i> Search
+ </a>
+ </li>
+
+ <li >
+ <a rel="next" href="../types/index.html">
+ <i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
+ </a>
+ </li>
+ <li >
+ <a rel="prev" href="../retrieve-objects/index.html">
+ Next <i class="fa fa-arrow-right" aria-hidden="true"></i>
+ </a>
+ </li>
+
+ <li>
+ <a href="https://www.apache.org" style="padding: 2px;">
+ <img src="../../img/feather.png">
+ </a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+ <div class="container">
+
+ <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+ <ul class="nav bs-sidenav">
+
+ <li class="first-level active"><a href="#exceptions">Exceptions</a></li>
+
+ <li class="second-level"><a href="#general-exceptions">General Exceptions</a></li>
+
+ <li class="third-level"><a href="#invalidargument">invalidArgument</a></li>
+
+ <li class="third-level"><a href="#notsupported">notSupported</a></li>
+
+ <li class="third-level"><a href="#objectnotfound">objectNotFound</a></li>
+
+ <li class="third-level"><a href="#permissiondenied">permissionDenied</a></li>
+
+ <li class="third-level"><a href="#runtime">runtime</a></li>
+
+
+ <li class="second-level"><a href="#specific-exceptions">Specific Exceptions</a></li>
+
+ <li class="third-level"><a href="#constraint">constraint</a></li>
+
+ <li class="third-level"><a href="#contentalreadyexists">contentAlreadyExists</a></li>
+
+ <li class="third-level"><a href="#filternotvalid">filterNotValid</a></li>
+
+ <li class="third-level"><a href="#nameconstraintviolation">nameConstraintViolation</a></li>
+
+ <li class="third-level"><a href="#storage">storage</a></li>
+
+ <li class="third-level"><a href="#streamnotsupported">streamNotSupported</a></li>
+
+ <li class="third-level"><a href="#updateconflict">updateConflict</a></li>
+
+ <li class="third-level"><a href="#versioning">versioning</a></li>
+
+
+ <li class="second-level"><a href="#implementation-exceptions">Implementation Exceptions</a></li>
+
+ <li class="third-level"><a href="#base">base</a></li>
+
+ <li class="third-level"><a href="#connection">connection</a></li>
+
+ <li class="third-level"><a href="#unauthorized">unauthorized</a></li>
+
+ <li class="third-level"><a href="#proxyauthentication">proxyAuthentication</a></li>
+
+ <li class="third-level"><a href="#serviceunavailable">serviceUnavailable</a></li>
+
+
+
+ </ul>
+</div></div>
+ <div class="col-md-9" role="main">
+
+<h1 id="exceptions">Exceptions</h1>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span>
+<span class="spec">Spec 2.2.1.4</span></p>
+<p>Exceptions are divided into three groups: general exceptions, specific exceptions, and implementation exceptions.<br />
+General exceptions and specific exceptions are defined in the CMIS specification.
+Implementation exceptions are exceptions introduced by OpenCMIS and PortCMIS. Those exceptions handle connection and authentication problems.</p>
+<h2 id="general-exceptions">General Exceptions</h2>
+<p>General exceptions may be returned by a repository in response to any CMIS service method call.</p>
+<h3 id="invalidargument">invalidArgument</h3>
+<p>One or more of the input parameters is missing or invalid.</p>
+<h3 id="notsupported">notSupported</h3>
+<p>The CMIS operation is not supported by the repository.</p>
+<h3 id="objectnotfound">objectNotFound</h3>
+<p>The object, or object type, or repository does not exist or the current user has no permission to see it.</p>
+<h3 id="permissiondenied">permissionDenied</h3>
+<p>The user does not have sufficient permissions to perform the operation.</p>
+<h3 id="runtime">runtime</h3>
+<p>Any other cause not expressible by another CMIS exception.</p>
+<h2 id="specific-exceptions">Specific Exceptions</h2>
+<p>The following exceptions may be returned by a repository in response to one or more CMIS service methods
+calls.</p>
+<h3 id="constraint">constraint</h3>
+<p>The operation violates a repository- or object-level constraint defined in the CMIS domain model.</p>
+<h3 id="contentalreadyexists">contentAlreadyExists</h3>
+<p>The operation attempts to set the content stream for a document that already has a content stream without explicitly specifying the “overwriteFlag” parameter.</p>
+<h3 id="filternotvalid">filterNotValid</h3>
+<p>The property filter or rendition filter input to the operation is not valid.</p>
+<h3 id="nameconstraintviolation">nameConstraintViolation</h3>
+<p>The repository is not able to store the object that the user is creating/updating due to a name constraint violation.
+There could already be an object with the same name or the name contains a character that is not allowed.</p>
+<h3 id="storage">storage</h3>
+<p>The repository is not able to store the object that the user is creating/updating due to an internal storage problem.</p>
+<h3 id="streamnotsupported">streamNotSupported</h3>
+<p>The operation is attempting to get or set a content stream for a document whose object type specifies that a content stream
+is not allowed for documents of that type.</p>
+<h3 id="updateconflict">updateConflict</h3>
+<p>The operation is attempting to update an object that is no longer current (as determined by the repository).</p>
+<h3 id="versioning">versioning</h3>
+<p>The operation is attempting to perform an action on a non-current version of a document that cannot be performed on a non-current version.</p>
+<h2 id="implementation-exceptions">Implementation Exceptions</h2>
+<h3 id="base">base</h3>
+<p>The OpenCMIS and PortCMIS exceptions are all derived from the CMIS base exception. If you want handle all CMIS exceptions at once, catch the <code>CmisBaseException</code>.</p>
+<h3 id="connection">connection</h3>
+<p>The client could not connect to the repository for some reason. Check if you need to configure a proxy server.</p>
+<h3 id="unauthorized">unauthorized</h3>
+<p>User authentication failed.</p>
+<h3 id="proxyauthentication">proxyAuthentication</h3>
+<p>Proxy authentication failed.</p>
+<h3 id="serviceunavailable">serviceUnavailable</h3>
+<p>The server reported that the CMIS service is currently not available.</p></div>
+
+ </div>
+
+ <footer class="col-md-12 text-center">
+ <hr>
+ <p>
+ </footer>
+
+ <script src="../../js/jquery-1.10.2.min.js"></script>
+ <script src="../../js/bootstrap-3.0.3.min.js"></script>
+ <script src="../../js/highlight.pack.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script>
+ var base_url = '../..';
+ </script>
+ <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+ <script src="../../js/base.js"></script>
+
+ <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+ <div class="modal-dialog">
+ <div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal">
+ <span aria-hidden="true">×</span>
+ <span class="sr-only">Close</span>
+ </button>
+ <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+ </div>
+ <div class="modal-body">
+ <p>
+ From here you can search these documents. Enter your search terms below.
+ </p>
+ <form role="form">
+ <div class="form-group">
+ <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+ </div>
+ </form>
+ <div id="mkdocs-search-results"></div>
+ </div>
+ <div class="modal-footer">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <script type="text/javascript" src="../../js/retina.min.js"></script>
+ </body>
+
+</html>
+<!-- last update: 2016-06-24 09:47:51.570458 -->
\ No newline at end of file
Added: chemistry/site/trunk/content/docs/cmis-samples/samples/extensions/index.html
URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/docs/cmis-samples/samples/extensions/index.html?rev=1750066&view=auto
==============================================================================
--- chemistry/site/trunk/content/docs/cmis-samples/samples/extensions/index.html (added)
+++ chemistry/site/trunk/content/docs/cmis-samples/samples/extensions/index.html Fri Jun 24 10:03:33 2016
@@ -0,0 +1,369 @@
+<!DOCTYPE html>
+<!--
+
+ 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.
+
+-->
+<html lang="en">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <meta name="author" content="Apache Chemistry">
+ <link rel="shortcut icon" href="../../img/favicon.ico">
+
+ <title>Getting Extensions - Apache Chemistry Samples</title>
+
+ <link href="../../css/bootstrap-custom.min.css" rel="stylesheet">
+ <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet">
+ <link href="../../css/base.css" rel="stylesheet">
+ <link href="../../css/cinder.css" rel="stylesheet">
+ <link rel="stylesheet" href="../../css/highlight.css">
+
+
+ <link href="../../css/chemistry.css" rel="stylesheet">
+
+ <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+ <!--[if lt IE 9]>
+ <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
+ <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
+ <![endif]-->
+
+
+</head>
+
+<body>
+
+ <div class="navbar navbar-default navbar-fixed-top" role="navigation">
+ <div class="container">
+
+ <!-- Collapsed navigation -->
+ <div class="navbar-header">
+
+ <!-- Expander button -->
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+
+
+ <!-- Main title -->
+ <a class="navbar-brand" href="../../index.html">Apache Chemistry Samples</a>
+ </div>
+
+ <!-- Expanded navigation -->
+ <div class="navbar-collapse collapse">
+
+ <!-- Main navigation -->
+ <ul class="nav navbar-nav">
+
+
+ <li >
+ <a href="../../index.html">Home</a>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Repository <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../create-session/index.html">Creating a Session</a>
+</li>
+
+
+
+<li >
+ <a href="../capabilities/index.html">Getting Repository Capabilities</a>
+</li>
+
+
+
+<li >
+ <a href="../types/index.html">Working with Types</a>
+</li>
+
+
+
+<li >
+ <a href="../exceptions/index.html">CMIS Exceptions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown active">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">CRUD <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../retrieve-objects/index.html">Retrieving Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../create-objects/index.html">Creating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../update-objects/index.html">Updating Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../move-objects/index.html">Moving Object</a>
+</li>
+
+
+
+<li >
+ <a href="../delete-objects/index.html">Deleting Objects</a>
+</li>
+
+
+
+<li >
+ <a href="../content/index.html">Working with Content</a>
+</li>
+
+
+
+<li >
+ <a href="../versions/index.html">Working with Versions</a>
+</li>
+
+
+
+<li >
+ <a href="../properties/index.html">Working with Properties and Secondary Types</a>
+</li>
+
+
+
+<li >
+ <a href="../operation-context/index.html">Understanding the Operation Context</a>
+</li>
+
+
+
+<li >
+ <a href="../lists/index.html">Working with Lists, Paging and Skipping</a>
+</li>
+
+
+
+<li class="active">
+ <a href="index.html">Getting Extensions</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Query <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../queries/index.html">Executing Queries</a>
+</li>
+
+
+
+<li >
+ <a href="../changelog/index.html">Retrieving the Change Log</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li class="dropdown">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown">Access Control <b class="caret"></b></a>
+ <ul class="dropdown-menu">
+
+
+<li >
+ <a href="../allowable-actions/index.html">Checking Allowable Actions</a>
+</li>
+
+
+
+<li >
+ <a href="../access-control/index.html">Managing Access Control</a>
+</li>
+
+
+ </ul>
+ </li>
+
+
+
+ <li >
+ <a href="../../about/index.html">About</a>
+ </li>
+
+
+ </ul>
+
+
+ <ul class="nav navbar-nav navbar-right">
+ <li>
+ <a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
+ <i class="fa fa-search" aria-hidden="true"></i> Search
+ </a>
+ </li>
+
+ <li >
+ <a rel="next" href="../lists/index.html">
+ <i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
+ </a>
+ </li>
+ <li >
+ <a rel="prev" href="../queries/index.html">
+ Next <i class="fa fa-arrow-right" aria-hidden="true"></i>
+ </a>
+ </li>
+
+ <li>
+ <a href="https://www.apache.org" style="padding: 2px;">
+ <img src="../../img/feather.png">
+ </a>
+ </li>
+ </ul>
+ </div>
+ </div>
+</div>
+
+ <div class="container">
+
+ <div class="col-md-3"><div class="bs-sidebar hidden-print affix well" role="complementary">
+ <ul class="nav bs-sidenav">
+
+ <li class="first-level active"><a href="#getting-extensions">Getting Extensions</a></li>
+
+
+ </ul>
+</div></div>
+ <div class="col-md-9" role="main">
+
+<h1 id="getting-extensions">Getting Extensions</h1>
+<p><span class="cmis">CMIS 1.0</span>
+<span class="cmis">CMIS 1.1</span></p>
+<p class="opencmis">OpenCMIS (Java)</p>
+<pre><code class="java">CmisObject cmisObject = ...
+String extensionValue = null;
+
+// extensions can be attached to different levels
+// in this example we get the extensions on the properties level
+List<CmisExtensionElement> extensions = cmisObject.getExtensions(ExtensionLevel.PROPERTIES);
+
+if (extensions != null) {
+ // iterate through the extensions until we find the one we are looking for
+ for (CmisExtensionElement ext: extensions) {
+ if ("myExtension".equals(ext.getName())) {
+ extensionValue = ext.getValue();
+ break;
+ }
+ }
+}
+</code></pre>
+
+<p class="portcmis">PortCMIS (C#)</p>
+<pre><code class="csharp">ICmisObject cmisObject = ...
+string extensionValue = null;
+
+// extensions can be attached to different levels
+// in this example we get the extensions on the properties level
+IList<ICmisExtensionElement> extensions = cmisObject.GetExtensions(ExtensionLevel.Properties);
+
+if (extensions != null) {
+ // iterate through the extensions until we find the one we are looking for
+ try {
+ extensionValue = extensions.First(ext => ext.Name == "myExtension").Value;
+ } catch (InvalidOperationException) {
+ // not found
+ }
+}
+</code></pre></div>
+
+ </div>
+
+ <footer class="col-md-12 text-center">
+ <hr>
+ <p>
+ </footer>
+
+ <script src="../../js/jquery-1.10.2.min.js"></script>
+ <script src="../../js/bootstrap-3.0.3.min.js"></script>
+ <script src="../../js/highlight.pack.js"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script>
+ var base_url = '../..';
+ </script>
+ <script data-main="../../mkdocs/js/search.js" src="../../mkdocs/js/require.js"></script>
+ <script src="../../js/base.js"></script>
+
+ <div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
+ <div class="modal-dialog">
+ <div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal">
+ <span aria-hidden="true">×</span>
+ <span class="sr-only">Close</span>
+ </button>
+ <h4 class="modal-title" id="exampleModalLabel">Search</h4>
+ </div>
+ <div class="modal-body">
+ <p>
+ From here you can search these documents. Enter your search terms below.
+ </p>
+ <form role="form">
+ <div class="form-group">
+ <input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query">
+ </div>
+ </form>
+ <div id="mkdocs-search-results"></div>
+ </div>
+ <div class="modal-footer">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <script type="text/javascript" src="../../js/retina.min.js"></script>
+ </body>
+
+</html>
+<!-- last update: 2016-06-24 09:47:51.868811 -->
\ No newline at end of file