Author: buildbot
Date: Tue Nov 17 15:00:17 2015
New Revision: 972713
Log:
Staging update by buildbot for olingo
Modified:
websites/staging/olingo/trunk/content/ (props changed)
websites/staging/olingo/trunk/content/doc/odata4/tutorials/deep_insert/tutorial_deep_insert.html
Propchange: websites/staging/olingo/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Nov 17 15:00:17 2015
@@ -1 +1 @@
-1714801
+1714804
Modified:
websites/staging/olingo/trunk/content/doc/odata4/tutorials/deep_insert/tutorial_deep_insert.html
==============================================================================
---
websites/staging/olingo/trunk/content/doc/odata4/tutorials/deep_insert/tutorial_deep_insert.html
(original)
+++
websites/staging/olingo/trunk/content/doc/odata4/tutorials/deep_insert/tutorial_deep_insert.html
Tue Nov 17 15:00:17 2015
@@ -147,7 +147,7 @@ Such a request is issued againest the UR
<p>As a shortcut you should checkout the prepared tutorial project in the <a
href="https://git-wip-us.apache.org/repos/asf/olingo-odata4">git repository</a>
in folder /samples/tutorials/p12_deep_insert_preparation.</p>
<p>Afterwards do a Deploy and run: it should be working. At this state you can
perform CRUD operations and do navigations between products and categories.</p>
<h1 id="2-implementation">2. Implementation<a class="headerlink"
href="#2-implementation" title="Permanent link">¶</a></h1>
-<p>Before we start with the implementation, please have a look at the class
<code>myservice.mynamespace.data.Storage</code>. In difference to the <a
href="http://olingo.apache.org/doc/odata4/tutorials/navigation/tutorial_navigation.html">navigation
tutorial</a> the relations between two entities can not be hard coded because
we would like to create and change relations between entities dynamically. In
the constructor of the data storage the sample data is created. After that the
method <code>linkProductsAndCategories</code>is called. This methods sets a few
links between the just created entities.</p>
+<p>Before we start with the implementation, please have a look at the class
<code>myservice.mynamespace.data.Storage</code>. In difference to the <a
href="http://olingo.apache.org/doc/odata4/tutorials/navigation/tutorial_navigation.html">navigation
tutorial</a> the relations between two entities can not be hard coded because
we would like to create and change relations between entities dynamically. In
the constructor of the data storage the creation of the sample data is called.
After that the method <code>linkProductsAndCategories</code>is called. This
methods sets a few links between the just created entities. <strong>The linked
entites are stored as navigation link</strong></p>
<p>To express the relation between two entities, Olingo uses the class <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Link.html">Link</a>.
This class is used for related entites (directly connected via Java
references) and bindings (which are actually strings) to other entities. To get
the related entites for a particual navigation property, you can ask an entity
with the method <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Linked.html#getNavigationLink(java.lang.String)"><code>getNavigationLink(String
name)</code></a> for an navigation property link. The link will contain either
an entity or a collection of entities dependenting on the type of the
navigation property. To get the actual entities use the methods <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Link.html#getInlineEntity()"><code>getInlineEntity()</code></a>
or <a href="http://olingo.apache.org/javadoc/odata4/o
rg/apache/olingo/commons/api/data/Link.html#getInlineEntitySet()"><code>getInlineEntitySet()</code></a>
The same can be done for bindings via the method <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Linked.html#getNavigationBinding(java.lang.String)"><code>getNavigationBinding(String
name)</code></a>. The values of the Binding can be gotten by the methods <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Link.html#getBindingLink()"><code>getBindingLink()</code></a>
and <a
href="http://olingo.apache.org/javadoc/odata4/org/apache/olingo/commons/api/data/Link.html#getBindingLinks()"><code>getBindingLinks()</code></a>.
</p>
<p>The point is that the Entity deserializer uses the same concept to
represent the payload as Java objects.