Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_Advanced_Service_Resolution.html
==============================================================================
--- 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_Advanced_Service_Resolution.html
 (added)
+++ 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_Advanced_Service_Resolution.html
 Tue Sep 16 12:34:18 2014
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="en">
+  <head>
+    <meta http-equiv="content-type" content="text/html; charset=utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <meta name="description" content="Apache Olingo provides libraries which 
enable developers to implement OData producers and OData consumers. The 
available OData Java library implements OData version 2.0. In future on goal is 
to provide an OData 4.0 compliant library once the OData standard is published 
at OASIS. The focus within the community is currently on the Java technology 
but it is up to the community to discuss if other environments find interest.">
+    <meta name="author" content="">
+    <link rel="icon" href="/favicon.ico">
+    <title>
+      Apache Olingo
+    </title><!-- Bootstrap core CSS -->
+    <link href="/css/bootstrap.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link href="/css/navbar.css" rel="stylesheet" type="text/css"><!-- Just 
for debugging purposes. Don't actually copy these 2 lines! -->
+    <link href="/css/offcanvas.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link rel="stylesheet" href="/css/main.css">
+    <!--[if lt IE 9]><script 
src="/js/ie8-responsive-file-warning.js"></script><![endif]-->
+
+    <script src="/js/ie-emulation-modes-warning.js" type="text/javascript">
+</script><!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
+
+    <script src="/js/ie10-viewport-bug-workaround.js" type="text/javascript">
+</script><!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and 
media queries -->
+    <!--[if lt IE 9]>
+      <script src="/js/html5shiv.min.js"></script>
+      <script src="/js/respond.min.js"></script>
+    <![endif]-->
+  </head>
+
+  <body>
+    <div class="container">
+      <!-- Static navbar -->
+      <div class="navbar navbar-default" role="navigation">
+        <div class="container-fluid">
+          <div class="navbar-header">
+            <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>
+              <img class="navbar-brand" src="/img/OlingoOrangeTM.png" 
style="width:62px;" >
+              <a class="navbar-brand" href="#">Apache Olingo™</a>
+          </div>
+          <div class="navbar-collapse collapse">
+            <ul class="nav navbar-nav">
+
+              <li><a href="/">Home</a></li>
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">ASF <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="http://www.apache.org/foundation/";>ASF 
Home</a></li>
+                      <li><a 
href="http://projects.apache.org/";>Projects</a></li>
+                      <li><a href="http://people.apache.org/";>People</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/getinvolved.html";>Get Involved</a></li>
+                      <li><a 
href="http://www.apache.org/dyn/closer.cgi";>Download</a></li>
+                      <li><a 
href="http://www.apache.org/security/";>Security</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Support Apache</a></li>
+                  </ul>
+              </li>
+
+              <li><a href="http://www.apache.org/licenses/";>License</a></li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Download <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="/doc/odata2/download.html">Download OData 
2.0 Java</a></li>
+                      <li><a href="/doc/javascript/download.html">Download 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Documentation <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                    <li><a href="/doc/odata2/index.html">Documentation OData 
2.0 Java</a></li>
+                    <li><a href="/doc/javascript/index.html">Documentation 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+              <li><a href="/support.html">Support</a></li>
+
+            </ul>
+
+                         <img class="navbar-right" height="50px" 
src="/img/asf-logo.gif">
+
+                       </div><!--/.nav-collapse -->
+        </div><!--/.container-fluid -->
+      </div><!-- Main component for a primary marketing message or call to 
action --><h1 id="service-resolution">Service Resolution</h1>
+<p>An OData service usually starts with "/" which delivers the service 
document while all preceding path segments belong to the servlet and servlet 
mapping of a web application.</p>
+<p>Some service providers would like to get control over the path hierarchy. 
This is called service resolution. Actually it means an OData path can start at 
any hierarchy path level behind the service mapping path elements.</p>
+<p>An uri schema with and without service resolution is shown here: </p>
+<p><img alt="Picture: Service Resolution" 
src="/img/service-resolution-url.png" /></p>
+<p>A service init parameter (<code>org.apache.olingo.odata2.path.split</code>) 
can be set for servlet configuration (see web.xml) and define how many path 
segments are not interpreted as OData path segments. In the example the split 
value is 2 and the resulting service resolution uses two path segments. The 
first one is for <namespace> and the secound for <service>. </p>
+<div class="codehilite"><pre><span 
class="cp">&lt;?xmlversion=&quot;1.0&quot;encoding=&quot;UTF-8&quot;?&gt;</span>
+<span class="nt">&lt;web-appxmlns:xsi</span><span 
class="err">=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;</span>
+   <span class="na">xmlns=</span><span 
class="s">&quot;http://java.sun.com/xml/ns/javaee&quot;</span><span 
class="na">xmlns:web=</span><span 
class="s">&quot;http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd&quot;</span>
+   <span class="na">xsi:schemaLocation=</span><span 
class="s">&quot;http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd&quot;</span>
+   <span class="na">id=</span><span 
class="s">&quot;WebApp_ID&quot;</span><span class="na">version=</span><span 
class="s">&quot;2.5&quot;</span><span class="nt">&gt;</span>
+   <span class="nt">&lt;display-name&gt;</span>MyApp<span 
class="nt">&lt;/display-name&gt;</span>
+   <span class="nt">&lt;welcome-file-list&gt;</span>
+         <span class="nt">&lt;welcome-file&gt;</span>index.jsp<span 
class="nt">&lt;/welcome-file&gt;</span>
+   <span class="nt">&lt;/welcome-file-list&gt;</span>
+   <span class="nt">&lt;servlet&gt;</span>
+         <span class="nt">&lt;servlet-name&gt;</span>ODataServlet<span 
class="nt">&lt;/servlet-name&gt;</span>
+         <span 
class="nt">&lt;servlet-class&gt;</span>org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet<span
 class="nt">&lt;/servlet-class&gt;</span>
+         <span class="nt">&lt;init-param&gt;</span>
+               <span 
class="nt">&lt;param-name&gt;</span>javax.ws.rs.Application<span 
class="nt">&lt;/param-name&gt;</span>
+                <span 
class="nt">&lt;param-value&gt;</span>org.apache.olingo.odata2.core.ODataApplication<span
 class="nt">&lt;/param-value&gt;</span>
+         <span class="nt">&lt;/init-param&gt;</span>
+         <span class="nt">&lt;init-param&gt;</span>
+                <span 
class="nt">&lt;param-name&gt;</span>org.apache.olingo.odata2.service.factory<span
 class="nt">&lt;/param-name&gt;</span>
+                <span 
class="nt">&lt;param-value&gt;</span>org.apache.olingo.odata2.ref.processor.ScenarioServiceFactory<span
 class="nt">&lt;/param-value&gt;</span>
+         <span class="nt">&lt;/init-param&gt;</span>
+         <span class="nt">&lt;init-param&gt;</span>
+                <span 
class="nt">&lt;param-name&gt;</span>org.apache.olingo.odata2.path.split<span 
class="nt">&lt;/param-name&gt;</span>
+                <span class="nt">&lt;param-value&gt;</span>2<span 
class="nt">&lt;/param-value&gt;</span>
+         <span class="nt">&lt;/init-param&gt;</span>
+         <span class="nt">&lt;load-on-startup&gt;</span>1<span 
class="nt">&lt;/load-on-startup&gt;</span>
+   <span class="nt">&lt;/servlet&gt;</span>
+   <span class="nt">&lt;servlet-mapping&gt;</span>
+         <span class="nt">&lt;servlet-name&gt;</span>ODataServlet<span 
class="nt">&lt;/servlet-name&gt;</span>
+         <span class="nt">&lt;url-pattern&gt;</span>/odata.svc/*<span 
class="nt">&lt;/url-pattern&gt;</span>
+   <span class="nt">&lt;/servlet-mapping&gt;</span>
+<span class="nt">&lt;/web-app&gt;</span>
+</pre></div>
+
+
+<p>A processor implementation (e.g. <code>ODataSingleProcessor</code>) does 
have access to an <code>ODataContext</code> object which will deliver a 
<code>ODataUriInfo</code> object. From this class a processor implementation 
can access the service resolution information which is as following: </p>
+<ul>
+<li>URI: 
<em>http://localhost:8080/odata.svc/[namespace]/[system]/Room('1')/Size/$value</em>
  </li>
+<li>preceding path segments:  <em>[namespace], [system]</em>  </li>
+<li>OData path segments:  <em>Room('1'), Size, $value</em>  </li>
+<li>base URI:  
<em>http://localhost:8080/odata.svc/[namespace]/[system]/</em></li>
+</ul>
+<p><strong>Sample Code</strong></p>
+<div class="codehilite"><pre><span class="n">public</span> <span 
class="n">interface</span> <span class="n">ODataContext</span> <span 
class="p">{</span>
+  <span class="n">ODataService</span> <span class="n">getService</span><span 
class="p">()</span> <span class="n">throws</span> <span 
class="n">ODataException</span><span class="p">;</span>
+  <span class="n">ODataUriInfo</span> <span class="n">getUriInfo</span><span 
class="p">()</span> <span class="n">throws</span> <span 
class="n">ODataException</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="n">public</span> <span class="n">interface</span> <span 
class="n">ODataUriInfo</span> <span class="p">{</span>
+  <span class="n">List</span><span class="o">&lt;</span><span 
class="n">ODataPathSegment</span><span class="o">&gt;</span> <span 
class="n">getPrecedingPathSegmentList</span><span class="p">();</span>
+  <span class="n">List</span><span class="o">&lt;</span><span 
class="n">ODataPathSegment</span><span class="o">&gt;</span> <span 
class="n">getODataPathSegmentList</span><span class="p">();</span>
+  <span class="n">URI</span> <span class="n">getBaseUri</span><span 
class="p">();</span>
+<span class="p">}</span>
+</pre></div><div align="center">
+<p>Copyright © 2013-2014, The Apache Software Foundation<br>
+                                               Apache Olingo, Olingo, Apache, 
the Apache feather, and
+                               the Apache Olingo project logo are trademarks 
of the Apache Software
+                               Foundation.</p>
+        <small><a href="/doc/odata2/privacy.html">Privacy</a></small>
+      </div>
+    </div><!-- /container -->
+    <!-- Bootstrap core JavaScript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="/js/jquery.js" type="text/javascript">
+</script>
+         <script src="/js/bootstrap.js" type="text/javascript">
+         <script src="/js/offcanvas.js" type="text/javascript">
+</script>
+        <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
+        <script>
+            (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
+            function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
+            e=o.createElement(i);r=o.getElementsByTagName(i)[0];
+            e.src='//www.google-analytics.com/analytics.js';
+            r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
+            ga('create','UA-44963757-1');ga('send','pageview');
+        </script>
+  </body>
+</html>

Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicRead_EDM.html
==============================================================================
--- 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicRead_EDM.html
 (added)
+++ 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicRead_EDM.html
 Tue Sep 16 12:34:18 2014
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="en">
+  <head>
+    <meta http-equiv="content-type" content="text/html; charset=utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <meta name="description" content="Apache Olingo provides libraries which 
enable developers to implement OData producers and OData consumers. The 
available OData Java library implements OData version 2.0. In future on goal is 
to provide an OData 4.0 compliant library once the OData standard is published 
at OASIS. The focus within the community is currently on the Java technology 
but it is up to the community to discuss if other environments find interest.">
+    <meta name="author" content="">
+    <link rel="icon" href="/favicon.ico">
+    <title>
+      Apache Olingo
+    </title><!-- Bootstrap core CSS -->
+    <link href="/css/bootstrap.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link href="/css/navbar.css" rel="stylesheet" type="text/css"><!-- Just 
for debugging purposes. Don't actually copy these 2 lines! -->
+    <link href="/css/offcanvas.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link rel="stylesheet" href="/css/main.css">
+    <!--[if lt IE 9]><script 
src="/js/ie8-responsive-file-warning.js"></script><![endif]-->
+
+    <script src="/js/ie-emulation-modes-warning.js" type="text/javascript">
+</script><!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
+
+    <script src="/js/ie10-viewport-bug-workaround.js" type="text/javascript">
+</script><!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and 
media queries -->
+    <!--[if lt IE 9]>
+      <script src="/js/html5shiv.min.js"></script>
+      <script src="/js/respond.min.js"></script>
+    <![endif]-->
+  </head>
+
+  <body>
+    <div class="container">
+      <!-- Static navbar -->
+      <div class="navbar navbar-default" role="navigation">
+        <div class="container-fluid">
+          <div class="navbar-header">
+            <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>
+              <img class="navbar-brand" src="/img/OlingoOrangeTM.png" 
style="width:62px;" >
+              <a class="navbar-brand" href="#">Apache Olingo™</a>
+          </div>
+          <div class="navbar-collapse collapse">
+            <ul class="nav navbar-nav">
+
+              <li><a href="/">Home</a></li>
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">ASF <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="http://www.apache.org/foundation/";>ASF 
Home</a></li>
+                      <li><a 
href="http://projects.apache.org/";>Projects</a></li>
+                      <li><a href="http://people.apache.org/";>People</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/getinvolved.html";>Get Involved</a></li>
+                      <li><a 
href="http://www.apache.org/dyn/closer.cgi";>Download</a></li>
+                      <li><a 
href="http://www.apache.org/security/";>Security</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Support Apache</a></li>
+                  </ul>
+              </li>
+
+              <li><a href="http://www.apache.org/licenses/";>License</a></li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Download <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="/doc/odata2/download.html">Download OData 
2.0 Java</a></li>
+                      <li><a href="/doc/javascript/download.html">Download 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Documentation <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                    <li><a href="/doc/odata2/index.html">Documentation OData 
2.0 Java</a></li>
+                    <li><a href="/doc/javascript/index.html">Documentation 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+              <li><a href="/support.html">Support</a></li>
+
+            </ul>
+
+                         <img class="navbar-right" height="50px" 
src="/img/asf-logo.gif">
+
+                       </div><!--/.nav-collapse -->
+        </div><!--/.container-fluid -->
+      </div><!-- Main component for a primary marketing message or call to 
action --><h1 
id="how-to-use-edmx-source-as-edm-provider-within-an-odata-service">How to use 
EDMX source as EDM Provider within an OData Service</h1>
+<h2 id="how-to-guide-for-the-using-an-edm-parser">How To Guide for the using 
an EDM Parser</h2>
+<p>The EDM Parser is designed to parse the metadata document.
+To make the parser accessible from the API, we have to implement the method 
<code>readMetadata</code> from interface 
<code>org.apache.olingo.odata2.api.ep.EntityProviderInterface</code>:</p>
+<div class="codehilite"><pre> <span class="p">@</span><span 
class="n">Override</span>
+ <span class="n">public</span> <span class="n">Edm</span> <span 
class="n">readMetadata</span><span class="p">(</span><span 
class="n">final</span> <span class="n">InputStream</span> <span 
class="n">inputStream</span><span class="p">,</span> <span 
class="n">final</span> <span class="n">boolean</span> <span 
class="n">validate</span><span class="p">)</span> <span class="n">throws</span> 
<span class="n">EntityProviderException</span> <span class="p">{</span>
+   <span class="n">EdmProvider</span> <span class="n">provider</span> <span 
class="p">=</span> <span class="n">new</span> <span 
class="n">EdmxProvider</span><span class="p">().</span><span 
class="n">parse</span><span class="p">(</span><span 
class="n">inputStream</span><span class="p">,</span> <span 
class="n">validate</span><span class="p">);</span>
+   <span class="k">return</span> <span class="n">new</span> <span 
class="n">EdmImplProv</span><span class="p">(</span><span 
class="n">provider</span><span class="p">);</span>
+  <span class="p">}</span>
+</pre></div>
+
+
+<p>The signature contains the <code>InputStream</code> that represents a data 
stream read from a file and flag validate. If validate is set to true, the 
structure of the metadata will be checked according to the CSDL after parsing. 
For example: it will be validated that each <code>EntityType</code> defines a 
key element or derives from a <code>BaseType</code> that for its part defines a 
key.</p>
+<p>To start the parsing we have to follow the next steps:</p>
+<ul>
+<li>create an object of the class <code>EdmxProvider</code>. This class 
derives from <code>EdmProvider</code> and provides implementations for all of 
its abstract methods </li>
+<li>invoke the method <code>parse(InputStream, boolean)</code> of this object 
</li>
+</ul>
+<p>Returned is an EDM object that contains the complete information from 
parsed metadata.</p><div align="center">
+<p>Copyright © 2013-2014, The Apache Software Foundation<br>
+                                               Apache Olingo, Olingo, Apache, 
the Apache feather, and
+                               the Apache Olingo project logo are trademarks 
of the Apache Software
+                               Foundation.</p>
+        <small><a href="/doc/odata2/privacy.html">Privacy</a></small>
+      </div>
+    </div><!-- /container -->
+    <!-- Bootstrap core JavaScript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="/js/jquery.js" type="text/javascript">
+</script>
+         <script src="/js/bootstrap.js" type="text/javascript">
+         <script src="/js/offcanvas.js" type="text/javascript">
+</script>
+        <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
+        <script>
+            (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
+            function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
+            e=o.createElement(i);r=o.getElementsByTagName(i)[0];
+            e.src='//www.google-analytics.com/analytics.js';
+            r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
+            ga('create','UA-44963757-1');ga('send','pageview');
+        </script>
+  </body>
+</html>

Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicWrite.html
==============================================================================
--- 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicWrite.html
 (added)
+++ 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/Olingo_Tutorial_BasicWrite.html
 Tue Sep 16 12:34:18 2014
@@ -0,0 +1,234 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
+<html lang="en">
+  <head>
+    <meta http-equiv="content-type" content="text/html; charset=utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <meta name="description" content="Apache Olingo provides libraries which 
enable developers to implement OData producers and OData consumers. The 
available OData Java library implements OData version 2.0. In future on goal is 
to provide an OData 4.0 compliant library once the OData standard is published 
at OASIS. The focus within the community is currently on the Java technology 
but it is up to the community to discuss if other environments find interest.">
+    <meta name="author" content="">
+    <link rel="icon" href="/favicon.ico">
+    <title>
+      Apache Olingo
+    </title><!-- Bootstrap core CSS -->
+    <link href="/css/bootstrap.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link href="/css/navbar.css" rel="stylesheet" type="text/css"><!-- Just 
for debugging purposes. Don't actually copy these 2 lines! -->
+    <link href="/css/offcanvas.css" rel="stylesheet" type="text/css"><!-- 
Custom styles for this template -->
+    <link rel="stylesheet" href="/css/main.css">
+    <!--[if lt IE 9]><script 
src="/js/ie8-responsive-file-warning.js"></script><![endif]-->
+
+    <script src="/js/ie-emulation-modes-warning.js" type="text/javascript">
+</script><!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
+
+    <script src="/js/ie10-viewport-bug-workaround.js" type="text/javascript">
+</script><!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and 
media queries -->
+    <!--[if lt IE 9]>
+      <script src="/js/html5shiv.min.js"></script>
+      <script src="/js/respond.min.js"></script>
+    <![endif]-->
+  </head>
+
+  <body>
+    <div class="container">
+      <!-- Static navbar -->
+      <div class="navbar navbar-default" role="navigation">
+        <div class="container-fluid">
+          <div class="navbar-header">
+            <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>
+              <img class="navbar-brand" src="/img/OlingoOrangeTM.png" 
style="width:62px;" >
+              <a class="navbar-brand" href="#">Apache Olingo™</a>
+          </div>
+          <div class="navbar-collapse collapse">
+            <ul class="nav navbar-nav">
+
+              <li><a href="/">Home</a></li>
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">ASF <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="http://www.apache.org/foundation/";>ASF 
Home</a></li>
+                      <li><a 
href="http://projects.apache.org/";>Projects</a></li>
+                      <li><a href="http://people.apache.org/";>People</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/getinvolved.html";>Get Involved</a></li>
+                      <li><a 
href="http://www.apache.org/dyn/closer.cgi";>Download</a></li>
+                      <li><a 
href="http://www.apache.org/security/";>Security</a></li>
+                      <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Support Apache</a></li>
+                  </ul>
+              </li>
+
+              <li><a href="http://www.apache.org/licenses/";>License</a></li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Download <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                      <li><a href="/doc/odata2/download.html">Download OData 
2.0 Java</a></li>
+                      <li><a href="/doc/javascript/download.html">Download 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+
+              <li class="dropdown">
+                  <a href="#" class="dropdown-toggle" 
data-toggle="dropdown">Documentation <b class="caret"></b></a>
+                  <ul class="dropdown-menu">
+                    <li><a href="/doc/odata2/index.html">Documentation OData 
2.0 Java</a></li>
+                    <li><a href="/doc/javascript/index.html">Documentation 
OData 4.0 JavaScript</a></li>
+                  </ul>
+              </li>
+              <li><a href="/support.html">Support</a></li>
+
+            </ul>
+
+                         <img class="navbar-right" height="50px" 
src="/img/asf-logo.gif">
+
+                       </div><!--/.nav-collapse -->
+        </div><!--/.container-fluid -->
+      </div><!-- Main component for a primary marketing message or call to 
action --><h1 id="write-scenario">Write Scenario</h1>
+<h3 
id="how-to-guide-for-building-a-sample-odata-service-with-the-odata-library-java">How
 To Guide for building a Sample OData service with the OData Library (Java)</h3>
+<p>This How To Guide shows how to create, update and delete an entry via your 
Data Provider (<code>ODataSingleProcessor</code>).</p>
+<h3 id="prerequisites">Prerequisites</h3>
+<p>This tutorial is based on the <a 
href="/doc/odata2/tutorials/basicread.html">Read Scenario</a> - OData Library 
(Java) tutorial.  </p>
+<h3 
id="implementing-create-update-and-delete-entry-at-the-single-processor">Implementing
 create, update and delete entry at the single processor</h3>
+<h5 id="create-entry">Create entry</h5>
+<ul>
+<li>You already created the <code>MyODataSingleProcessor</code> in the basic 
tutorial </li>
+<li>Implement <code>MyODataSingleProcessor.createEntity(PostUriInfo uriInfo, 
InputStream content, String requestContentType, String contentType) throws 
ODataException</code> by overriding the corresponding method of the 
<code>ODataSingleProcessor</code> </li>
+</ul>
+<p><strong>Sample Code</strong></p>
+<div class="codehilite"><pre><span class="p">@</span><span 
class="n">Override</span>
+<span class="n">public</span> <span class="n">ODataResponse</span> <span 
class="n">createEntity</span><span class="p">(</span><span 
class="n">PostUriInfo</span> <span class="n">uriInfo</span><span 
class="p">,</span> <span class="n">InputStream</span> <span 
class="n">content</span><span class="p">,</span> 
+<span class="n">String</span> <span class="n">requestContentType</span><span 
class="p">,</span> <span class="n">String</span> <span 
class="n">contentType</span><span class="p">)</span> <span 
class="n">throws</span> <span class="n">ODataException</span> <span 
class="p">{</span>
+  <span class="o">//</span><span class="n">No</span> <span 
class="n">support</span> <span class="k">for</span> <span 
class="n">creating</span> <span class="n">and</span> <span 
class="n">linking</span> <span class="n">a</span> <span class="n">new</span> 
<span class="n">entry</span>
+  <span class="k">if</span> <span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getNavigationSegments</span><span class="p">().</span><span 
class="nb">size</span><span class="p">()</span> <span class="o">&gt;</span> 
0<span class="p">)</span> <span class="p">{</span>
+  <span class="n">throw</span> <span class="n">new</span> <span 
class="n">ODataNotImplementedException</span><span class="p">();</span>
+  <span class="p">}</span>
+
+  <span class="o">//</span><span class="n">No</span> <span 
class="n">support</span> <span class="k">for</span> <span 
class="n">media</span> <span class="n">resources</span>
+  <span class="k">if</span> <span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getStartEntitySet</span><span class="p">().</span><span 
class="n">getEntityType</span><span class="p">().</span><span 
class="n">hasStream</span><span class="p">())</span> <span class="p">{</span>
+  <span class="n">throw</span> <span class="n">new</span> <span 
class="n">ODataNotImplementedException</span><span class="p">();</span>
+  <span class="p">}</span>
+
+  <span class="n">EntityProviderReadProperties</span> <span 
class="k">properties</span> <span class="p">=</span> <span 
class="n">EntityProviderReadProperties</span><span class="p">.</span><span 
class="n">init</span><span class="p">().</span><span 
class="n">mergeSemantic</span><span class="p">(</span><span 
class="n">false</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+
+  <span class="n">ODataEntry</span> <span class="n">entry</span> <span 
class="p">=</span> <span class="n">EntityProvider</span><span 
class="p">.</span><span class="n">readEntry</span><span class="p">(</span><span 
class="n">requestContentType</span><span class="p">,</span> <span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getStartEntitySet</span><span class="p">(),</span> <span 
class="n">content</span><span class="p">,</span> <span 
class="k">properties</span><span class="p">);</span>
+  <span class="o">//</span><span class="k">if</span> <span 
class="n">something</span> <span class="n">goes</span> <span 
class="n">wrong</span> <span class="n">in</span> <span 
class="n">deserialization</span> <span class="n">this</span> <span 
class="n">is</span> <span class="n">managed</span> <span class="n">via</span> 
<span class="n">the</span> <span class="n">ExceptionMapper</span>
+  <span class="o">//</span><span class="n">no</span> <span 
class="n">need</span> <span class="k">for</span> <span class="n">an</span> 
<span class="n">application</span> <span class="n">to</span> <span 
class="n">do</span> <span class="n">exception</span> <span 
class="n">handling</span> <span class="n">here</span> <span class="n">an</span> 
<span class="n">convert</span> <span class="n">the</span> <span 
class="n">exceptions</span> <span class="n">in</span> <span 
class="n">HTTP</span> <span class="n">exceptions</span>
+
+  <span class="n">Map</span><span class="o">&lt;</span><span 
class="n">String</span><span class="p">,</span> <span 
class="n">Object</span><span class="o">&gt;</span> <span class="n">data</span> 
<span class="p">=</span> <span class="n">entry</span><span 
class="p">.</span><span class="n">getProperties</span><span class="p">();</span>
+  <span class="o">//</span><span class="n">now</span> <span 
class="n">one</span> <span class="n">can</span> <span class="n">use</span> 
<span class="n">the</span> <span class="n">data</span> <span 
class="n">to</span> <span class="n">create</span> <span class="n">the</span> 
<span class="n">entry</span> <span class="n">in</span> <span 
class="n">the</span> <span class="n">backend</span> <span class="p">...</span>
+  <span class="o">//</span><span class="n">retrieve</span> <span 
class="n">the</span> <span class="n">key</span> <span class="n">value</span> 
<span class="n">after</span> <span class="n">creation</span><span 
class="p">,</span> <span class="k">if</span> <span class="n">the</span> <span 
class="n">key</span> <span class="n">is</span> <span class="n">generated</span> 
<span class="n">by</span> <span class="n">the</span> <span 
class="n">server</span>
+
+  <span class="o">//</span><span class="n">update</span> <span 
class="n">the</span> <span class="n">data</span> <span 
class="n">accordingly</span>
+  <span class="n">data</span><span class="p">.</span><span 
class="n">put</span><span class="p">(</span>&quot;<span 
class="n">Id</span>&quot;<span class="p">,</span> <span 
class="n">Integer</span><span class="p">.</span><span 
class="n">valueOf</span><span class="p">(</span>887788675<span 
class="p">));</span>
+
+  <span class="o">//</span><span class="n">serialize</span> <span 
class="n">the</span> <span class="n">entry</span><span class="p">,</span> <span 
class="n">Location</span> <span class="n">header</span> <span 
class="n">is</span> <span class="n">set</span> <span class="n">by</span> <span 
class="n">OData</span> <span class="n">Library</span>
+  <span class="k">return</span> <span class="n">EntityProvider</span><span 
class="p">.</span><span class="n">writeEntry</span><span 
class="p">(</span><span class="n">contentType</span><span class="p">,</span> 
<span class="n">uriInfo</span><span class="p">.</span><span 
class="n">getStartEntitySet</span><span class="p">(),</span> <span 
class="n">entry</span><span class="p">.</span><span 
class="n">getProperties</span><span class="p">(),</span> <span 
class="n">EntityProviderWriteProperties</span><span class="p">.</span><span 
class="n">serviceRoot</span><span class="p">(</span><span 
class="n">getContext</span><span class="p">().</span><span 
class="n">getPathInfo</span><span class="p">().</span><span 
class="n">getServiceRoot</span><span class="p">()).</span><span 
class="n">build</span><span class="p">());</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<h5 id="update-entry">Update entry</h5>
+<ul>
+<li>You already created the <code>MyODataSingleProcessor</code> in the basic 
tutorial </li>
+<li>Implement <code>MyODataSingleProcessor.updateEntity(PutMergePatchUriInfo 
uriInfo, InputStream content, String requestContentType, boolean merge, String 
contentType) throws ODataException</code> by overriding the corresponding 
method of the <code>ODataSingleProcessor</code> </li>
+</ul>
+<p><strong>Sample Code</strong></p>
+<div class="codehilite"><pre><span class="p">@</span><span 
class="n">Override</span>
+<span class="n">public</span> <span class="n">ODataResponse</span> <span 
class="n">updateEntity</span><span class="p">(</span><span 
class="n">PutMergePatchUriInfo</span> <span class="n">uriInfo</span><span 
class="p">,</span> <span class="n">InputStream</span> <span 
class="n">content</span><span class="p">,</span> <span class="n">String</span> 
<span class="n">requestContentType</span><span class="p">,</span> <span 
class="n">boolean</span> <span class="n">merge</span><span class="p">,</span> 
<span class="n">String</span> <span class="n">contentType</span><span 
class="p">)</span> <span class="n">throws</span> <span 
class="n">ODataException</span> <span class="p">{</span>
+<span class="n">EntityProviderReadProperties</span> <span 
class="k">properties</span> <span class="p">=</span> <span 
class="n">EntityProviderReadProperties</span><span class="p">.</span><span 
class="n">init</span><span class="p">().</span><span 
class="n">mergeSemantic</span><span class="p">(</span><span 
class="n">false</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+
+  <span class="n">ODataEntry</span> <span class="n">entry</span> <span 
class="p">=</span> <span class="n">EntityProvider</span><span 
class="p">.</span><span class="n">readEntry</span><span class="p">(</span><span 
class="n">requestContentType</span><span class="p">,</span> <span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getTargetEntitySet</span><span class="p">(),</span> <span 
class="n">content</span><span class="p">,</span> <span 
class="k">properties</span><span class="p">);</span>
+  <span class="o">//</span><span class="k">if</span> <span 
class="n">something</span> <span class="n">goes</span> <span 
class="n">wrong</span> <span class="n">in</span> <span 
class="n">deserialization</span> <span class="n">this</span> <span 
class="n">is</span> <span class="n">managed</span> <span class="n">via</span> 
<span class="n">the</span> <span class="n">ExceptionMapper</span><span 
class="p">,</span>
+  <span class="o">//</span><span class="n">no</span> <span 
class="n">need</span> <span class="k">for</span> <span class="n">an</span> 
<span class="n">application</span> <span class="n">to</span> <span 
class="n">do</span> <span class="n">exception</span> <span 
class="n">handling</span> <span class="n">here</span> <span class="n">an</span> 
<span class="n">convert</span> <span class="n">the</span> <span 
class="n">exceptions</span> <span class="n">in</span> <span 
class="n">HTTP</span> <span class="n">exceptions</span>
+
+  <span class="n">Map</span><span class="o">&lt;</span><span 
class="n">String</span><span class="p">,</span> <span 
class="n">Object</span><span class="o">&gt;</span> <span class="n">data</span> 
<span class="p">=</span> <span class="n">entry</span><span 
class="p">.</span><span class="n">getProperties</span><span class="p">();</span>
+
+  <span class="k">if</span> <span class="p">(</span>&quot;<span 
class="n">Cars</span>&quot;<span class="p">.</span><span 
class="n">equals</span><span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getTargetEntitySet</span><span class="p">().</span><span 
class="n">getName</span><span class="p">()))</span> <span class="p">{</span>
+  <span class="n">int</span> <span class="n">key</span> <span 
class="p">=</span> <span class="n">getKeyValue</span><span 
class="p">(</span><span class="n">uriInfo</span><span class="p">.</span><span 
class="n">getKeyPredicates</span><span class="p">().</span><span 
class="n">get</span><span class="p">(</span>0<span class="p">));</span>
+
+    <span class="o">//</span><span class="k">if</span> <span 
class="n">there</span> <span class="n">is</span> <span class="n">no</span> 
<span class="n">entry</span> <span class="n">with</span> <span 
class="n">this</span> <span class="n">key</span> <span 
class="n">available</span><span class="p">,</span> <span class="n">one</span> 
<span class="n">should</span> <span class="k">return</span> &quot;404 <span 
class="n">Not</span> <span class="n">Found</span>&quot;
+    <span class="o">//</span><span class="k">return</span> <span 
class="n">ODataResponse</span><span class="p">.</span><span 
class="n">status</span><span class="p">(</span><span 
class="n">HttpStatusCodes</span><span class="p">.</span><span 
class="n">NOT_FOUND</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+
+    <span class="o">//</span><span class="n">now</span> <span 
class="n">one</span> <span class="n">can</span> <span class="n">use</span> 
<span class="n">the</span> <span class="n">data</span> <span 
class="n">to</span> <span class="n">create</span> <span class="n">the</span> 
<span class="n">entry</span> <span class="n">in</span> <span 
class="n">the</span> <span class="n">backend</span> <span class="p">...</span>
+    <span class="n">String</span> <span class="n">model</span> <span 
class="p">=</span> <span class="p">(</span><span class="n">String</span><span 
class="p">)</span> <span class="n">data</span><span class="p">.</span><span 
class="n">get</span><span class="p">(</span>&quot;<span 
class="n">Model</span>&quot;<span class="p">);</span>
+    <span class="o">//</span><span class="p">...</span>
+  <span class="p">}</span> <span class="k">else</span> <span 
class="k">if</span> <span class="p">(</span>&quot;<span 
class="n">Manufacturers</span>&quot;<span class="p">.</span><span 
class="n">equals</span><span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getTargetEntitySet</span><span class="p">().</span><span 
class="n">getName</span><span class="p">()))</span> <span class="p">{</span>
+  <span class="n">int</span> <span class="n">key</span> <span 
class="p">=</span> <span class="n">getKeyValue</span><span 
class="p">(</span><span class="n">uriInfo</span><span class="p">.</span><span 
class="n">getKeyPredicates</span><span class="p">().</span><span 
class="n">get</span><span class="p">(</span>0<span class="p">));</span>
+  <span class="o">//</span><span class="n">now</span> <span 
class="n">one</span> <span class="n">can</span> <span class="n">use</span> 
<span class="n">the</span> <span class="n">data</span> <span 
class="n">to</span> <span class="n">create</span> <span class="n">the</span> 
<span class="n">entry</span> <span class="n">in</span> <span 
class="n">the</span> <span class="n">backend</span> <span class="p">...</span>
+  <span class="p">}</span>
+
+  <span class="o">//</span><span class="n">we</span> <span 
class="n">can</span> <span class="k">return</span> <span 
class="n">Status</span> <span class="n">Code</span> 204 <span 
class="n">No</span> <span class="n">Content</span> <span 
class="n">because</span> <span class="n">the</span> <span class="n">URI</span> 
<span class="n">Parsing</span> <span class="n">already</span> <span 
class="n">guarantees</span> <span class="n">that</span>
+  <span class="o">//</span><span class="n">a</span><span class="p">)</span> 
<span class="n">only</span> <span class="n">valid</span> <span 
class="n">URIs</span> <span class="n">are</span> <span 
class="n">dispatched</span> <span class="p">(</span><span class="n">also</span> 
<span class="n">checked</span> <span class="n">against</span> <span 
class="n">the</span> <span class="n">metadata</span><span class="p">)</span>
+  <span class="o">//</span><span class="n">b</span><span class="p">)</span> 
404 <span class="n">Not</span> <span class="n">Found</span> <span 
class="n">is</span> <span class="n">already</span> <span 
class="n">returned</span> <span class="n">above</span><span class="p">,</span> 
<span class="n">when</span> <span class="n">the</span> <span 
class="n">entry</span> <span class="n">does</span> <span class="n">not</span> 
<span class="n">exist</span> 
+<span class="k">return</span> <span class="n">ODataResponse</span><span 
class="p">.</span><span class="n">status</span><span class="p">(</span><span 
class="n">HttpStatusCodes</span><span class="p">.</span><span 
class="n">NO_CONTENT</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<h5 id="delete-entry">Delete entry</h5>
+<ul>
+<li>You already created the <code>MyODataSingleProcessor</code> in the basic 
tutorial </li>
+<li>Implement <code>MyODataSingleProcessor.deleteEntity(DeleteUriInfo uriInfo, 
String contentType) throws ODataException</code> by overriding the 
corresponding method of the <code>ODataSingleProcessor</code> </li>
+</ul>
+<p><strong>Sample Code</strong></p>
+<div class="codehilite"><pre><span class="p">@</span><span 
class="n">Override</span>
+<span class="n">public</span> <span class="n">ODataResponse</span> <span 
class="n">deleteEntity</span><span class="p">(</span><span 
class="n">DeleteUriInfo</span> <span class="n">uriInfo</span><span 
class="p">,</span> <span class="n">String</span> <span 
class="n">contentType</span><span class="p">)</span> <span 
class="n">throws</span> <span class="n">ODataException</span> <span 
class="p">{</span>
+  <span class="k">if</span> <span class="p">(</span>&quot;<span 
class="n">Cars</span>&quot;<span class="p">.</span><span 
class="n">equals</span><span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getTargetEntitySet</span><span class="p">().</span><span 
class="n">getName</span><span class="p">()))</span> <span class="p">{</span>
+  <span class="n">int</span> <span class="n">key</span> <span 
class="p">=</span> <span class="n">getKeyValue</span><span 
class="p">(</span><span class="n">uriInfo</span><span class="p">.</span><span 
class="n">getKeyPredicates</span><span class="p">().</span><span 
class="n">get</span><span class="p">(</span>0<span class="p">));</span>
+
+    <span class="o">//</span><span class="k">if</span> <span 
class="n">there</span> <span class="n">is</span> <span class="n">no</span> 
<span class="n">entry</span> <span class="n">with</span> <span 
class="n">this</span> <span class="n">key</span> <span 
class="n">available</span><span class="p">,</span> <span class="n">one</span> 
<span class="n">should</span> <span class="k">return</span> &quot;404 <span 
class="n">Not</span> <span class="n">Found</span>&quot;
+    <span class="o">//</span><span class="k">return</span> <span 
class="n">ODataResponse</span><span class="p">.</span><span 
class="n">status</span><span class="p">(</span><span 
class="n">HttpStatusCodes</span><span class="p">.</span><span 
class="n">NOT_FOUND</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+
+    <span class="o">//</span><span class="n">now</span> <span 
class="n">one</span> <span class="n">can</span> <span class="n">delete</span> 
<span class="n">the</span> <span class="n">entry</span> <span 
class="n">with</span> <span class="n">this</span> <span 
class="n">particular</span> <span class="n">key</span> <span 
class="n">in</span> <span class="n">the</span> <span 
class="n">backend</span><span class="p">...</span>
+
+  <span class="p">}</span> <span class="k">else</span> <span 
class="k">if</span> <span class="p">(</span>&quot;<span 
class="n">Manufacturers</span>&quot;<span class="p">.</span><span 
class="n">equals</span><span class="p">(</span><span 
class="n">uriInfo</span><span class="p">.</span><span 
class="n">getTargetEntitySet</span><span class="p">().</span><span 
class="n">getName</span><span class="p">()))</span> <span class="p">{</span>
+  <span class="n">int</span> <span class="n">key</span> <span 
class="p">=</span> <span class="n">getKeyValue</span><span 
class="p">(</span><span class="n">uriInfo</span><span class="p">.</span><span 
class="n">getKeyPredicates</span><span class="p">().</span><span 
class="n">get</span><span class="p">(</span>0<span class="p">));</span>
+  <span class="o">//</span><span class="n">now</span> <span 
class="n">one</span> <span class="n">can</span> <span class="n">delete</span> 
<span class="n">the</span> <span class="n">entry</span> <span 
class="n">with</span> <span class="n">this</span> <span 
class="n">particular</span> <span class="n">key</span> <span 
class="n">in</span> <span class="n">the</span> <span 
class="n">backend</span><span class="p">...</span>
+  <span class="p">}</span>
+
+  <span class="o">//</span><span class="n">we</span> <span 
class="n">can</span> <span class="k">return</span> <span 
class="n">Status</span> <span class="n">Code</span> 204 <span 
class="n">No</span> <span class="n">Content</span> <span 
class="n">because</span> <span class="n">the</span> <span class="n">URI</span> 
<span class="n">Parsing</span> <span class="n">already</span> <span 
class="n">guarantees</span> <span class="n">that</span>
+  <span class="o">//</span><span class="n">a</span><span class="p">)</span> 
<span class="n">only</span> <span class="n">valid</span> <span 
class="n">URIs</span> <span class="n">are</span> <span 
class="n">dispatched</span> <span class="p">(</span><span class="n">also</span> 
<span class="n">checked</span> <span class="n">against</span> <span 
class="n">the</span> <span class="n">metadata</span><span class="p">)</span>
+  <span class="o">//</span><span class="n">b</span><span class="p">)</span> 
404 <span class="n">Not</span> <span class="n">Found</span> <span 
class="n">is</span> <span class="n">already</span> <span 
class="n">returned</span> <span class="n">above</span><span class="p">,</span> 
<span class="n">when</span> <span class="n">the</span> <span 
class="n">entry</span> <span class="n">does</span> <span class="n">not</span> 
<span class="n">exist</span> 
+  <span class="k">return</span> <span class="n">ODataResponse</span><span 
class="p">.</span><span class="n">status</span><span class="p">(</span><span 
class="n">HttpStatusCodes</span><span class="p">.</span><span 
class="n">NO_CONTENT</span><span class="p">).</span><span 
class="n">build</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<h3 id="test-your-service">Test your Service</h3>
+<p>After the implementation of the MyODataSingleProcessor the web application 
can be tested.</p>
+<ul>
+<li>Build your project <code>mvn clean install</code> </li>
+<li>In Eclipse, run the Web Application via Run As -&gt; Run on Server </li>
+<li>Create a new Car </li>
+<li>Update an existing Car </li>
+<li>Delete a Car </li>
+<li>Create a new Manufacturer (this is a Media Link Entry), we expect the 
response 501 Not Implemented</li>
+<li>Update a Manufacturer (this is a Media Link Entry) </li>
+</ul><div align="center">
+<p>Copyright © 2013-2014, The Apache Software Foundation<br>
+                                               Apache Olingo, Olingo, Apache, 
the Apache feather, and
+                               the Apache Olingo project logo are trademarks 
of the Apache Software
+                               Foundation.</p>
+        <small><a href="/doc/odata2/privacy.html">Privacy</a></small>
+      </div>
+    </div><!-- /container -->
+    <!-- Bootstrap core JavaScript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="/js/jquery.js" type="text/javascript">
+</script>
+         <script src="/js/bootstrap.js" type="text/javascript">
+         <script src="/js/offcanvas.js" type="text/javascript">
+</script>
+        <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
+        <script>
+            (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
+            function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
+            e=o.createElement(i);r=o.getElementsByTagName(i)[0];
+            e.src='//www.google-analytics.com/analytics.js';
+            r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
+            ga('create','UA-44963757-1');ga('send','pageview');
+        </script>
+  </body>
+</html>

Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-adv_read_expand.zip
==============================================================================
Binary file - no diff available.

Propchange: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-adv_read_expand.zip
------------------------------------------------------------------------------
    svn:mime-type = application/zip

Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-adv_read_mediaresource.zip
==============================================================================
Binary file - no diff available.

Propchange: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-adv_read_mediaresource.zip
------------------------------------------------------------------------------
    svn:mime-type = application/zip

Added: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-basic_read.zip
==============================================================================
Binary file - no diff available.

Propchange: 
websites/staging/olingo/trunk/content/doc/odata4/tutorials/apache-olingo-tutorial-basic_read.zip
------------------------------------------------------------------------------
    svn:mime-type = application/zip


Reply via email to