<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>InMemoryAbstractServiceImpl xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../../apidocs/org/apache/chemistry/opencmis/inmemory/server/InMemoryAbstractServiceImpl.html">View Javadoc</a></div><pre>

<a class="jxr_linenumber" name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="3" href="#3">3</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="4" href="#4">4</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a class="jxr_linenumber" name="5" href="#5">5</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="6" href="#6">6</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="7" href="#7">7</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="8" href="#8">8</a>   <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="10" href="#10">10</a>  <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a class="jxr_linenumber" name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="12" href="#12">12</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="13" href="#13">13</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="14" href="#14">14</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="15" href="#15">15</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="16" href="#16">16</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="17" href="#17">17</a>  <em class="jxr_comment"> * under the License.</em>
<a class="jxr_linenumber" name="18" href="#18">18</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="19" href="#19">19</a>  <strong class="jxr_keyword">package</strong> org.apache.chemistry.opencmis.inmemory.server;
<a class="jxr_linenumber" name="20" href="#20">20</a>  
<a class="jxr_linenumber" name="21" href="#21">21</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
<a class="jxr_linenumber" name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.util.List;
<a class="jxr_linenumber" name="23" href="#23">23</a>  
<a class="jxr_linenumber" name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.PropertyIds;
<a class="jxr_linenumber" name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.data.Properties;
<a class="jxr_linenumber" name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.definitions.TypeDefinition;
<a class="jxr_linenumber" name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.definitions.TypeDefinitionContainer;
<a class="jxr_linenumber" name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.exceptions.CmisInvalidArgumentException;
<a class="jxr_linenumber" name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.exceptions.CmisPermissionDeniedException;
<a class="jxr_linenumber" name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.exceptions.CmisUpdateConflictException;
<a class="jxr_linenumber" name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.inmemory.storedobj.api.CmisServiceValidator;
<a class="jxr_linenumber" name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.inmemory.storedobj.api.DocumentVersion;
<a class="jxr_linenumber" name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.inmemory.storedobj.api.StoreManager;
<a class="jxr_linenumber" name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.inmemory.storedobj.api.StoredObject;
<a class="jxr_linenumber" name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.inmemory.storedobj.api.VersionedDocument;
<a class="jxr_linenumber" name="36" href="#36">36</a>  
<a class="jxr_linenumber" name="37" href="#37">37</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="38" href="#38">38</a>  <em class="jxr_javadoccomment"> * Common functionality for all service implementations</em>
<a class="jxr_linenumber" name="39" href="#39">39</a>  <em class="jxr_javadoccomment"> * </em>
<a class="jxr_linenumber" name="40" href="#40">40</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="41" href="#41">41</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/InMemoryAbstractServiceImpl.html">InMemoryAbstractServiceImpl</a> {
<a class="jxr_linenumber" name="42" href="#42">42</a>  
<a class="jxr_linenumber" name="43" href="#43">43</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoreManager.html">StoreManager</a> fStoreManager;
<a class="jxr_linenumber" name="44" href="#44">44</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/CmisServiceValidator.html">CmisServiceValidator</a> validator;
<a class="jxr_linenumber" name="45" href="#45">45</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/AtomLinkInfoProvider.html">AtomLinkInfoProvider</a> fAtomLinkProvider;
<a class="jxr_linenumber" name="46" href="#46">46</a>  
<a class="jxr_linenumber" name="47" href="#47">47</a>  
<a class="jxr_linenumber" name="48" href="#48">48</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/InMemoryAbstractServiceImpl.html">InMemoryAbstractServiceImpl</a>(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoreManager.html">StoreManager</a> storeManager, <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/CmisServiceValidator.html">CmisServiceValidator</a> validator) {
<a class="jxr_linenumber" name="49" href="#49">49</a>          <strong class="jxr_keyword">this</strong>.fStoreManager = storeManager;
<a class="jxr_linenumber" name="50" href="#50">50</a>          <strong class="jxr_keyword">this</strong>.validator = validator;
<a class="jxr_linenumber" name="51" href="#51">51</a>          <strong class="jxr_keyword">this</strong>.fAtomLinkProvider = <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/AtomLinkInfoProvider.html">AtomLinkInfoProvider</a>(fStoreManager);
<a class="jxr_linenumber" name="52" href="#52">52</a>      }
<a class="jxr_linenumber" name="53" href="#53">53</a>  
<a class="jxr_linenumber" name="54" href="#54">54</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/InMemoryAbstractServiceImpl.html">InMemoryAbstractServiceImpl</a>(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoreManager.html">StoreManager</a> storeManager) {
<a class="jxr_linenumber" name="55" href="#55">55</a>          <strong class="jxr_keyword">this</strong>.fStoreManager = storeManager;
<a class="jxr_linenumber" name="56" href="#56">56</a>          <strong class="jxr_keyword">this</strong>.validator = storeManager.getServiceValidator();
<a class="jxr_linenumber" name="57" href="#57">57</a>          <strong class="jxr_keyword">this</strong>.fAtomLinkProvider = <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/server/AtomLinkInfoProvider.html">AtomLinkInfoProvider</a>(fStoreManager);
<a class="jxr_linenumber" name="58" href="#58">58</a>      }
<a class="jxr_linenumber" name="59" href="#59">59</a>  
<a class="jxr_linenumber" name="60" href="#60">60</a>      <strong class="jxr_keyword">protected</strong> TypeDefinition getTypeDefinition(String repositoryId, Properties properties, <strong class="jxr_keyword">boolean</strong> cmis11) {
<a class="jxr_linenumber" name="61" href="#61">61</a>          <strong class="jxr_keyword">if</strong> (<strong class="jxr_keyword">null</strong> == properties) {
<a class="jxr_linenumber" name="62" href="#62">62</a>              <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="63" href="#63">63</a>          }
<a class="jxr_linenumber" name="64" href="#64">64</a>  
<a class="jxr_linenumber" name="65" href="#65">65</a>          String typeId = (String) properties.getProperties().get(PropertyIds.OBJECT_TYPE_ID).getFirstValue();
<a class="jxr_linenumber" name="66" href="#66">66</a>          
<a class="jxr_linenumber" name="67" href="#67">67</a>          TypeDefinitionContainer typeDefC = fStoreManager.getTypeById(repositoryId, typeId, cmis11);
<a class="jxr_linenumber" name="68" href="#68">68</a>          <strong class="jxr_keyword">if</strong> (typeDefC == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="69" href="#69">69</a>              <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisInvalidArgumentException(<span class="jxr_string">"Cannot create object, a type with id "</span> + typeId + <span class="jxr_string">" is unknown"</span>);
<a class="jxr_linenumber" name="70" href="#70">70</a>          }
<a class="jxr_linenumber" name="71" href="#71">71</a>  
<a class="jxr_linenumber" name="72" href="#72">72</a>          <strong class="jxr_keyword">return</strong> typeDefC.getTypeDefinition();
<a class="jxr_linenumber" name="73" href="#73">73</a>      }
<a class="jxr_linenumber" name="74" href="#74">74</a>  
<a class="jxr_linenumber" name="75" href="#75">75</a>      <strong class="jxr_keyword">protected</strong> List&lt;TypeDefinition&gt; getTypeDefinition(String repositoryId, List&lt;String&gt; typeIds, <strong class="jxr_keyword">boolean</strong> cmis11) {
<a class="jxr_linenumber" name="76" href="#76">76</a>          <strong class="jxr_keyword">if</strong> (<strong class="jxr_keyword">null</strong> == typeIds || typeIds.isEmpty()) {
<a class="jxr_linenumber" name="77" href="#77">77</a>              <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="78" href="#78">78</a>          }
<a class="jxr_linenumber" name="79" href="#79">79</a>  
<a class="jxr_linenumber" name="80" href="#80">80</a>          List&lt;TypeDefinition&gt; result = <strong class="jxr_keyword">new</strong> ArrayList&lt;TypeDefinition&gt;(typeIds.size());
<a class="jxr_linenumber" name="81" href="#81">81</a>          <strong class="jxr_keyword">for</strong> (String typeId : typeIds) {
<a class="jxr_linenumber" name="82" href="#82">82</a>              TypeDefinitionContainer typeDefC = fStoreManager.getTypeById(repositoryId, typeId, cmis11);
<a class="jxr_linenumber" name="83" href="#83">83</a>              <strong class="jxr_keyword">if</strong> (typeDefC == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="84" href="#84">84</a>                  <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisInvalidArgumentException(<span class="jxr_string">"Cannot create object, a type with id "</span> + typeId
<a class="jxr_linenumber" name="85" href="#85">85</a>                          + <span class="jxr_string">" is unknown"</span>);
<a class="jxr_linenumber" name="86" href="#86">86</a>              }
<a class="jxr_linenumber" name="87" href="#87">87</a>              result.add(typeDefC.getTypeDefinition());
<a class="jxr_linenumber" name="88" href="#88">88</a>          }
<a class="jxr_linenumber" name="89" href="#89">89</a>  
<a class="jxr_linenumber" name="90" href="#90">90</a>          <strong class="jxr_keyword">return</strong> result;
<a class="jxr_linenumber" name="91" href="#91">91</a>      }
<a class="jxr_linenumber" name="92" href="#92">92</a>  
<a class="jxr_linenumber" name="93" href="#93">93</a>      <strong class="jxr_keyword">protected</strong> TypeDefinition getTypeDefinition(String repositoryId, <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> obj, <strong class="jxr_keyword">boolean</strong> cmis11) {
<a class="jxr_linenumber" name="94" href="#94">94</a>  
<a class="jxr_linenumber" name="95" href="#95">95</a>          TypeDefinitionContainer typeDefC = fStoreManager.getTypeById(repositoryId, obj.getTypeId(), cmis11);
<a class="jxr_linenumber" name="96" href="#96">96</a>          <strong class="jxr_keyword">return</strong> typeDefC == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">null</strong> : typeDefC.getTypeDefinition();
<a class="jxr_linenumber" name="97" href="#97">97</a>      }
<a class="jxr_linenumber" name="98" href="#98">98</a>  
<a class="jxr_linenumber" name="99" href="#99">99</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="100" href="#100">100</a> <em class="jxr_javadoccomment">     * We allow checkin, cancel, checkout operations on a single version as well</em>
<a class="jxr_linenumber" name="101" href="#101">101</a> <em class="jxr_javadoccomment">     * as on a version series This method returns the versioned document</em>
<a class="jxr_linenumber" name="102" href="#102">102</a> <em class="jxr_javadoccomment">     * (version series) in each case.</em>
<a class="jxr_linenumber" name="103" href="#103">103</a> <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="104" href="#104">104</a> <em class="jxr_javadoccomment">     * @param so</em>
<a class="jxr_linenumber" name="105" href="#105">105</a> <em class="jxr_javadoccomment">     *            version or versioned document</em>
<a class="jxr_linenumber" name="106" href="#106">106</a> <em class="jxr_javadoccomment">     * @return versioned document</em>
<a class="jxr_linenumber" name="107" href="#107">107</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="108" href="#108">108</a>     <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> getVersionedDocumentOfObjectId(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> so) {
<a class="jxr_linenumber" name="109" href="#109">109</a> 
<a class="jxr_linenumber" name="110" href="#110">110</a>         <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc;
<a class="jxr_linenumber" name="111" href="#111">111</a>         <strong class="jxr_keyword">if</strong> (so instanceof DocumentVersion) {
<a class="jxr_linenumber" name="112" href="#112">112</a>             <em class="jxr_comment">// get document the version is contained in to c</em>
<a class="jxr_linenumber" name="113" href="#113">113</a>             verDoc = ((DocumentVersion) so).getParentDocument();
<a class="jxr_linenumber" name="114" href="#114">114</a>         } <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="115" href="#115">115</a>             verDoc = (VersionedDocument) so;
<a class="jxr_linenumber" name="116" href="#116">116</a>         }
<a class="jxr_linenumber" name="117" href="#117">117</a> 
<a class="jxr_linenumber" name="118" href="#118">118</a>         <strong class="jxr_keyword">return</strong> verDoc;
<a class="jxr_linenumber" name="119" href="#119">119</a>     }
<a class="jxr_linenumber" name="120" href="#120">120</a> 
<a class="jxr_linenumber" name="121" href="#121">121</a>     <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> testIsNotCheckedOutBySomeoneElse(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> so, String user) {
<a class="jxr_linenumber" name="122" href="#122">122</a>         checkIsVersionableObject(so);
<a class="jxr_linenumber" name="123" href="#123">123</a>         <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc = getVersionedDocumentOfObjectId(so);
<a class="jxr_linenumber" name="124" href="#124">124</a>         <strong class="jxr_keyword">if</strong> (verDoc.isCheckedOut()) {
<a class="jxr_linenumber" name="125" href="#125">125</a>             testCheckedOutByCurrentUser(user, verDoc);
<a class="jxr_linenumber" name="126" href="#126">126</a>         }
<a class="jxr_linenumber" name="127" href="#127">127</a> 
<a class="jxr_linenumber" name="128" href="#128">128</a>         <strong class="jxr_keyword">return</strong> verDoc;
<a class="jxr_linenumber" name="129" href="#129">129</a>     }
<a class="jxr_linenumber" name="130" href="#130">130</a> 
<a class="jxr_linenumber" name="131" href="#131">131</a>     <strong class="jxr_keyword">protected</strong> <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> testHasProperCheckedOutStatus(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> so, String user) {
<a class="jxr_linenumber" name="132" href="#132">132</a> 
<a class="jxr_linenumber" name="133" href="#133">133</a>         checkIsVersionableObject(so);
<a class="jxr_linenumber" name="134" href="#134">134</a>         <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc = getVersionedDocumentOfObjectId(so);
<a class="jxr_linenumber" name="135" href="#135">135</a> 
<a class="jxr_linenumber" name="136" href="#136">136</a>         checkHasUser(user);
<a class="jxr_linenumber" name="137" href="#137">137</a> 
<a class="jxr_linenumber" name="138" href="#138">138</a>         testIsCheckedOut(verDoc);
<a class="jxr_linenumber" name="139" href="#139">139</a>         testCheckedOutByCurrentUser(user, verDoc);
<a class="jxr_linenumber" name="140" href="#140">140</a> 
<a class="jxr_linenumber" name="141" href="#141">141</a>         <strong class="jxr_keyword">return</strong> verDoc;
<a class="jxr_linenumber" name="142" href="#142">142</a>     }
<a class="jxr_linenumber" name="143" href="#143">143</a> 
<a class="jxr_linenumber" name="144" href="#144">144</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> checkIsVersionableObject(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> so) {
<a class="jxr_linenumber" name="145" href="#145">145</a>         <strong class="jxr_keyword">if</strong> (!(so instanceof VersionedDocument || so instanceof DocumentVersion)) {
<a class="jxr_linenumber" name="146" href="#146">146</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisInvalidArgumentException(
<a class="jxr_linenumber" name="147" href="#147">147</a>                     <span class="jxr_string">"Object is of a versionable type but not instance of VersionedDocument or DocumentVersion."</span>);
<a class="jxr_linenumber" name="148" href="#148">148</a>         }
<a class="jxr_linenumber" name="149" href="#149">149</a>     }
<a class="jxr_linenumber" name="150" href="#150">150</a> 
<a class="jxr_linenumber" name="151" href="#151">151</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> checkHasUser(String user) {
<a class="jxr_linenumber" name="152" href="#152">152</a>         <strong class="jxr_keyword">if</strong> (<strong class="jxr_keyword">null</strong> == user || user.length() == 0) {
<a class="jxr_linenumber" name="153" href="#153">153</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisPermissionDeniedException(<span class="jxr_string">"Object can't be checked-in, no user is given."</span>);
<a class="jxr_linenumber" name="154" href="#154">154</a>         }
<a class="jxr_linenumber" name="155" href="#155">155</a>     }
<a class="jxr_linenumber" name="156" href="#156">156</a> 
<a class="jxr_linenumber" name="157" href="#157">157</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> testCheckedOutByCurrentUser(String user, <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc) {
<a class="jxr_linenumber" name="158" href="#158">158</a>         <strong class="jxr_keyword">if</strong> (!user.equals(verDoc.getCheckedOutBy())) {
<a class="jxr_linenumber" name="159" href="#159">159</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisUpdateConflictException(<span class="jxr_string">"User "</span> + verDoc.getCheckedOutBy()
<a class="jxr_linenumber" name="160" href="#160">160</a>                     + <span class="jxr_string">" has checked out the document."</span>);
<a class="jxr_linenumber" name="161" href="#161">161</a>         }
<a class="jxr_linenumber" name="162" href="#162">162</a>     }
<a class="jxr_linenumber" name="163" href="#163">163</a> 
<a class="jxr_linenumber" name="164" href="#164">164</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> testIsCheckedOut(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc) {
<a class="jxr_linenumber" name="165" href="#165">165</a>         <strong class="jxr_keyword">if</strong> (!verDoc.isCheckedOut()) {
<a class="jxr_linenumber" name="166" href="#166">166</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> CmisUpdateConflictException(<span class="jxr_string">"Document "</span> + verDoc.getId() + <span class="jxr_string">" is not checked out."</span>);
<a class="jxr_linenumber" name="167" href="#167">167</a>         }
<a class="jxr_linenumber" name="168" href="#168">168</a>     }
<a class="jxr_linenumber" name="169" href="#169">169</a> 
<a class="jxr_linenumber" name="170" href="#170">170</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> isCheckedOut(<a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/StoredObject.html">StoredObject</a> so, String user) {
<a class="jxr_linenumber" name="171" href="#171">171</a>         <strong class="jxr_keyword">if</strong> (so instanceof VersionedDocument || so instanceof DocumentVersion) {
<a class="jxr_linenumber" name="172" href="#172">172</a>             <a href="../../../../../../org/apache/chemistry/opencmis/inmemory/storedobj/api/VersionedDocument.html">VersionedDocument</a> verDoc = getVersionedDocumentOfObjectId(so);
<a class="jxr_linenumber" name="173" href="#173">173</a>             <strong class="jxr_keyword">return</strong> verDoc.isCheckedOut() &amp;&amp; user.equals(verDoc.getCheckedOutBy());
<a class="jxr_linenumber" name="174" href="#174">174</a>         } <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="175" href="#175">175</a>             <strong class="jxr_keyword">return</strong> false;
<a class="jxr_linenumber" name="176" href="#176">176</a>         }
<a class="jxr_linenumber" name="177" href="#177">177</a> 
<a class="jxr_linenumber" name="178" href="#178">178</a>     }
<a class="jxr_linenumber" name="179" href="#179">179</a> 
<a class="jxr_linenumber" name="180" href="#180">180</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

