blob: 53c551155f48c31371e812ca3fc0f67f7740000f [file] [log] [blame]
<!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>Home - 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 class="homepage" >
<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 class="active">
<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="samples/create-session/index.html">Creating a Session</a>
</li>
<li >
<a href="samples/capabilities/index.html">Getting Repository Capabilities</a>
</li>
<li >
<a href="samples/types/index.html">Working with Types</a>
</li>
<li >
<a href="samples/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="samples/retrieve-objects/index.html">Retrieving Objects</a>
</li>
<li >
<a href="samples/create-objects/index.html">Creating Objects</a>
</li>
<li >
<a href="samples/update-objects/index.html">Updating Objects</a>
</li>
<li >
<a href="samples/move-objects/index.html">Moving Object</a>
</li>
<li >
<a href="samples/delete-objects/index.html">Deleting Objects</a>
</li>
<li >
<a href="samples/content/index.html">Working with Content</a>
</li>
<li >
<a href="samples/versions/index.html">Working with Versions</a>
</li>
<li >
<a href="samples/properties/index.html">Working with Properties and Secondary Types</a>
</li>
<li >
<a href="samples/operation-context/index.html">Understanding the Operation Context</a>
</li>
<li >
<a href="samples/lists/index.html">Working with Lists, Paging and Skipping</a>
</li>
<li >
<a href="samples/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="samples/queries/index.html">Executing Queries</a>
</li>
<li >
<a href="samples/query-examples/index.html">Query Examples</a>
</li>
<li >
<a href="samples/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="samples/allowable-actions/index.html">Checking Allowable Actions</a>
</li>
<li >
<a href="samples/access-control/index.html">Managing Access Control</a>
</li>
<li >
<a href="samples/retention/index.html">Retention and Holds</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 class="disabled">
<a rel="next" >
<i class="fa fa-arrow-left" aria-hidden="true"></i> Previous
</a>
</li>
<li >
<a rel="prev" href="samples/create-session/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="#apache-chemistry-cmis-code-samples">Apache Chemistry CMIS Code Samples</a></li>
<li class="second-level"><a href="#apache-chemistry">Apache Chemistry&trade;</a></li>
<li class="third-level"><a href="#opencmis">OpenCMIS</a></li>
<li class="third-level"><a href="#portcmis">PortCMIS</a></li>
<li class="third-level"><a href="#dotcmis">DotCMIS</a></li>
</ul>
</div></div>
<div class="col-md-9" role="main">
<h1 id="apache-chemistry-cmis-code-samples">Apache Chemistry CMIS Code Samples</h1>
<hr />
<p><img alt="CMIS" src="./img/cmis.png" style="float:left; margin-right: 20px;" /></p>
<p><a href="https://www.oasis-open.org/committees/cmis" target="_blank">CMIS (Content Management Interoperability Services)</a> is an OASIS standard enabling information sharing between different Content Management Systems.</p>
<div style="clear:both"></div>
<hr />
<p>This is a collection of code samples for </p>
<p><img alt="Apache Chemistry" src="./img/chemistry-logo.png" style="float:left; margin-right: 20px;" /></p>
<ul>
<li><a href="https://chemistry.apache.org/java/opencmis.html">Apache Chemistry OpenCMIS</a> - a CMIS library for Java</li>
<li><a href="https://chemistry.apache.org/dotnet/portcmis.html">Apache Chemistry PortCMIS</a> - a CMIS library for .Net</li>
</ul>
<p>We assume that you have a rough understanding of CMIS. This is not a CMIS introduction course.</p>
<p>Many code samples are marked with <span class="cmis">CMIS 1.0</span> or <span class="cmis">CMIS 1.1</span>. Those tags indicate the CMIS specification version that the server has to support to use the feature.</p>
<p>Throughout the code samples you will find references to sections in the <a href="https://docs.oasis-open.org/cmis/CMIS/v1.1/CMIS-v1.1.pdf" target="_blank">CMIS 1.1 specification</a>; tags like <span class="spec">Spec 1.5</span>. We recommend that you have the specification document ready to hand. </p>
<div class="admonition note">
<p class="admonition-title">Under Development</p>
<p>This sample collection is under development. Some areas are only sparely covered or not covered at all, yet.
Also some code samples lack a meaningful description. If you want help, please see the <a href="./about/index.html">about page</a>.</p>
</div>
<hr />
<h2 id="apache-chemistry">Apache Chemistry&trade;</h2>
<p><a href="https://chemistry.apache.org">Apache Chemistry</a> provides open source client and server implementations of <a href="https://docs.oasis-open.org/cmis/CMIS/v1.0/" target="_blank">CMIS 1.0</a> and <a href="https://docs.oasis-open.org/cmis/CMIS/v1.1/" target="_blank">CMIS 1.1</a> for multiple programming languages (Java, .Net, Python, PHP, Objective-C, JavaScript, &hellip;). </p>
<hr />
<p><em>Do you want to know more about CMIS and Apache Chemistry?</em></p>
<p><img alt="CMIS and Apache Chemistry in Action" src="./img/apache-chemistry-in-action.png" style="float:left; margin-right: 20px;" /></p>
<p>The book <a href="https://www.manning.com/books/cmis-and-apache-chemistry-in-action" target="_blank">CMIS and Apache Chemistry in Action</a> is a comprehensive guide to the CMIS standard and related ECM concepts. In it, you&rsquo;ll tackle hands-on examples for building applications on CMIS repositories from both the client and the server sides. You&rsquo;ll find working examples using the Apache Chemistry APIs for Java, Python, C#, Objective-C, and PHP, but you can use the techniques you&rsquo;ll learn in this book to work with CMIS repositories using any language that can speak HTTP - including JavaScript.</p>
<div style="clear:both"></div>
<hr />
<h3 id="opencmis">OpenCMIS</h3>
<p><a href="https://chemistry.apache.org/java/opencmis.html">OpenCMIS</a> is a CMIS client library and a CMIS server framework for Java. It also provides developer tools such as the <a href="https://chemistry.apache.org/java/developing/tools/dev-tools-workbench.html">CMIS Workbench</a> and the <a href="https://chemistry.apache.org/java/developing/repositories/dev-repositories-inmemory.html">InMemory Repository</a>. OpenCMIS runs on servers, desktops, and Android.</p>
<p>The code samples in this documentation cover the OpenCMIS client API. If you want to build a CMIS server with OpenCMIS, refer to the <a href="https://github.com/cmisdocs/ServerDevelopmentGuideV2/blob/master/docs/OpenCMIS%20Server%20Development%20Guide%20-%202nd%20Edition.pdf?raw=true">OpenCMIS Server Development Guide</a>.</p>
<p>To get started with OpenCMIS, download the <a href="https://chemistry.apache.org/java/download.html">OpenCMIS client libraries</a> or use Maven or Gradle to get the client libraries.</p>
<h4 id="maven">Maven</h4>
<p>Replace <code>[OpenCMIS version]</code> with the latest version number, e.g. <code>1.1.0</code>.</p>
<pre><code class="xml">&lt;dependency&gt;
&lt;groupId&gt;org.apache.chemistry.opencmis&lt;/groupId&gt;
&lt;artifactId&gt;chemistry-opencmis-client-impl&lt;/artifactId&gt;
&lt;version&gt;[OpenCMIS version]&lt;/version&gt;
&lt;/dependency&gt;
</code></pre>
<p>For Android:</p>
<pre><code class="xml">&lt;dependency&gt;
&lt;groupId&gt;org.apache.chemistry.opencmis&lt;/groupId&gt;
&lt;artifactId&gt;chemistry-opencmis-android-client&lt;/artifactId&gt;
&lt;version&gt;[OpenCMIS version]&lt;/version&gt;
&lt;/dependency&gt;
</code></pre>
<h4 id="gradle">Gradle</h4>
<p>Replace <code>[OpenCMIS version]</code> with the latest version number, e.g. <code>1.1.0</code>.</p>
<pre><code>compile group: 'org.apache.chemistry.opencmis', name: 'chemistry-opencmis-client-impl', version: '[OpenCMIS version]'
</code></pre>
<p>For Android:</p>
<pre><code>compile group: 'org.apache.chemistry.opencmis', name: 'chemistry-opencmis-android-client', version: '[OpenCMIS version]'
</code></pre>
<h3 id="portcmis">PortCMIS</h3>
<p><a href="https://chemistry.apache.org/dotnet/portcmis.html">PortCMIS</a> is a CMIS client library for .Net. It is a Portable Class Library that runs on servers, desktops, and Windows Mobile.</p>
<p>To get started with PortCMIS, download the <a href="https://chemistry.apache.org/dotnet/portcmis.html">PortCMIS client binaries</a>. You have the choice of either plain DLLs or NUPGK packages. It is also availabe on <a href="https://www.nuget.org/packages/PortCMIS/" target="_blank">nuget</a>:</p>
<pre><code>PM&gt; Install-Package PortCMIS
</code></pre>
<h3 id="dotcmis">DotCMIS</h3>
<p><a href="https://chemistry.apache.org/dotnet/dotcmis.html">DotCMIS</a> is the predecessor of <a href="https://chemistry.apache.org/dotnet/portcmis.html">PortCMIS</a>.
The APIs are very similar and most of the PortCMIS samples should also work with DotCMIS.</p>
<p>The high-level differences between DotCMIS and PortCMIS are described on <a href="https://chemistry.apache.org/dotnet/dotcmis-vs-portcmis.html">this page</a>.
For new projects it is recommend to use PortCMIS.</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">&times;</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: 2017-07-31 12:45:42 -->