<!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>CmisFilterNotValidException xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../../apidocs/org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.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.commons.exceptions;
<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.math.BigInteger;
<a class="jxr_linenumber" name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a class="jxr_linenumber" name="23" href="#23">23</a>  
<a class="jxr_linenumber" name="24" href="#24">24</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="25" href="#25">25</a>  <em class="jxr_javadoccomment"> * CMIS FilterNotValid Exception.</em>
<a class="jxr_linenumber" name="26" href="#26">26</a>  <em class="jxr_javadoccomment"> * &lt;p&gt;</em>
<a class="jxr_linenumber" name="27" href="#27">27</a>  <em class="jxr_javadoccomment"> * Intent: The property filter or rendition filter input to the operation is not</em>
<a class="jxr_linenumber" name="28" href="#28">28</a>  <em class="jxr_javadoccomment"> * valid. The repository SHOULD NOT throw this exception if the filter syntax is</em>
<a class="jxr_linenumber" name="29" href="#29">29</a>  <em class="jxr_javadoccomment"> * correct but one or more elements in the filter is unknown. Unknown elements</em>
<a class="jxr_linenumber" name="30" href="#30">30</a>  <em class="jxr_javadoccomment"> * SHOULD be ignored.</em>
<a class="jxr_linenumber" name="31" href="#31">31</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="32" href="#32">32</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisBaseException.html">CmisBaseException</a> {
<a class="jxr_linenumber" name="33" href="#33">33</a>  
<a class="jxr_linenumber" name="34" href="#34">34</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">long</strong> serialVersionUID = 1L;
<a class="jxr_linenumber" name="35" href="#35">35</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String EXCEPTION_NAME = <span class="jxr_string">"filterNotValid"</span>;
<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">     * Default constructor.</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>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>() {
<a class="jxr_linenumber" name="41" href="#41">41</a>          <strong class="jxr_keyword">super</strong>();
<a class="jxr_linenumber" name="42" href="#42">42</a>      }
<a class="jxr_linenumber" name="43" href="#43">43</a>  
<a class="jxr_linenumber" name="44" href="#44">44</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="45" href="#45">45</a>  <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="46" href="#46">46</a>  <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="47" href="#47">47</a>  <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="48" href="#48">48</a>  <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="49" href="#49">49</a>  <em class="jxr_javadoccomment">     * @param code</em>
<a class="jxr_linenumber" name="50" href="#50">50</a>  <em class="jxr_javadoccomment">     *            error code</em>
<a class="jxr_linenumber" name="51" href="#51">51</a>  <em class="jxr_javadoccomment">     * @param cause</em>
<a class="jxr_linenumber" name="52" href="#52">52</a>  <em class="jxr_javadoccomment">     *            the cause</em>
<a class="jxr_linenumber" name="53" href="#53">53</a>  <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="54" href="#54">54</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, BigInteger code, Throwable cause) {
<a class="jxr_linenumber" name="55" href="#55">55</a>          <strong class="jxr_keyword">super</strong>(message, code, cause);
<a class="jxr_linenumber" name="56" href="#56">56</a>      }
<a class="jxr_linenumber" name="57" href="#57">57</a>  
<a class="jxr_linenumber" name="58" href="#58">58</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="59" href="#59">59</a>  <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="60" href="#60">60</a>  <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="61" href="#61">61</a>  <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="62" href="#62">62</a>  <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="63" href="#63">63</a>  <em class="jxr_javadoccomment">     * @param errorContent</em>
<a class="jxr_linenumber" name="64" href="#64">64</a>  <em class="jxr_javadoccomment">     *            error page content</em>
<a class="jxr_linenumber" name="65" href="#65">65</a>  <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="66" href="#66">66</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, String errorContent) {
<a class="jxr_linenumber" name="67" href="#67">67</a>          <strong class="jxr_keyword">super</strong>(message, errorContent);
<a class="jxr_linenumber" name="68" href="#68">68</a>      }
<a class="jxr_linenumber" name="69" href="#69">69</a>  
<a class="jxr_linenumber" name="70" href="#70">70</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="71" href="#71">71</a>  <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="72" href="#72">72</a>  <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="73" href="#73">73</a>  <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="74" href="#74">74</a>  <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="75" href="#75">75</a>  <em class="jxr_javadoccomment">     * @param code</em>
<a class="jxr_linenumber" name="76" href="#76">76</a>  <em class="jxr_javadoccomment">     *            error code</em>
<a class="jxr_linenumber" name="77" href="#77">77</a>  <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="78" href="#78">78</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, BigInteger code) {
<a class="jxr_linenumber" name="79" href="#79">79</a>          <strong class="jxr_keyword">super</strong>(message, code);
<a class="jxr_linenumber" name="80" href="#80">80</a>      }
<a class="jxr_linenumber" name="81" href="#81">81</a>  
<a class="jxr_linenumber" name="82" href="#82">82</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="83" href="#83">83</a>  <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="84" href="#84">84</a>  <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="85" href="#85">85</a>  <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="86" href="#86">86</a>  <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="87" href="#87">87</a>  <em class="jxr_javadoccomment">     * @param code</em>
<a class="jxr_linenumber" name="88" href="#88">88</a>  <em class="jxr_javadoccomment">     *            error code</em>
<a class="jxr_linenumber" name="89" href="#89">89</a>  <em class="jxr_javadoccomment">     * @param errorContent</em>
<a class="jxr_linenumber" name="90" href="#90">90</a>  <em class="jxr_javadoccomment">     *            error page content</em>
<a class="jxr_linenumber" name="91" href="#91">91</a>  <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="92" href="#92">92</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, BigInteger code, String errorContent) {
<a class="jxr_linenumber" name="93" href="#93">93</a>          <strong class="jxr_keyword">super</strong>(message, code, errorContent);
<a class="jxr_linenumber" name="94" href="#94">94</a>      }
<a class="jxr_linenumber" name="95" href="#95">95</a>  
<a class="jxr_linenumber" name="96" href="#96">96</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="99" href="#99">99</a>  <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="100" href="#100">100</a> <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="101" href="#101">101</a> <em class="jxr_javadoccomment">     * @param code</em>
<a class="jxr_linenumber" name="102" href="#102">102</a> <em class="jxr_javadoccomment">     *            error code</em>
<a class="jxr_linenumber" name="103" href="#103">103</a> <em class="jxr_javadoccomment">     * @param errorContent</em>
<a class="jxr_linenumber" name="104" href="#104">104</a> <em class="jxr_javadoccomment">     *            error page content</em>
<a class="jxr_linenumber" name="105" href="#105">105</a> <em class="jxr_javadoccomment">     * @param additionalData</em>
<a class="jxr_linenumber" name="106" href="#106">106</a> <em class="jxr_javadoccomment">     *            additional data</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">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, BigInteger code, String errorContent,
<a class="jxr_linenumber" name="109" href="#109">109</a>             Map&lt;String, String&gt; additionalData) {
<a class="jxr_linenumber" name="110" href="#110">110</a>         <strong class="jxr_keyword">super</strong>(message, code, errorContent, additionalData);
<a class="jxr_linenumber" name="111" href="#111">111</a>     }
<a class="jxr_linenumber" name="112" href="#112">112</a> 
<a class="jxr_linenumber" name="113" href="#113">113</a>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="114" href="#114">114</a> <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="115" href="#115">115</a> <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="116" href="#116">116</a> <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="117" href="#117">117</a> <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * @param errorContent</em>
<a class="jxr_linenumber" name="119" href="#119">119</a> <em class="jxr_javadoccomment">     *            error page content</em>
<a class="jxr_linenumber" name="120" href="#120">120</a> <em class="jxr_javadoccomment">     * @param additionalData</em>
<a class="jxr_linenumber" name="121" href="#121">121</a> <em class="jxr_javadoccomment">     *            additional data</em>
<a class="jxr_linenumber" name="122" href="#122">122</a> <em class="jxr_javadoccomment">     * @param cause</em>
<a class="jxr_linenumber" name="123" href="#123">123</a> <em class="jxr_javadoccomment">     *            the cause</em>
<a class="jxr_linenumber" name="124" href="#124">124</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="125" href="#125">125</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, String errorContent, Map&lt;String, String&gt; additionalData,
<a class="jxr_linenumber" name="126" href="#126">126</a>             Throwable cause) {
<a class="jxr_linenumber" name="127" href="#127">127</a>         <strong class="jxr_keyword">super</strong>(message, errorContent, additionalData, cause);
<a class="jxr_linenumber" name="128" href="#128">128</a>     }
<a class="jxr_linenumber" name="129" href="#129">129</a> 
<a class="jxr_linenumber" name="130" href="#130">130</a>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="131" href="#131">131</a> <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="132" href="#132">132</a> <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="133" href="#133">133</a> <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="134" href="#134">134</a> <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="135" href="#135">135</a> <em class="jxr_javadoccomment">     * @param errorContent</em>
<a class="jxr_linenumber" name="136" href="#136">136</a> <em class="jxr_javadoccomment">     *            error page content</em>
<a class="jxr_linenumber" name="137" href="#137">137</a> <em class="jxr_javadoccomment">     * @param cause</em>
<a class="jxr_linenumber" name="138" href="#138">138</a> <em class="jxr_javadoccomment">     *            the cause</em>
<a class="jxr_linenumber" name="139" href="#139">139</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="140" href="#140">140</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, String errorContent, Throwable cause) {
<a class="jxr_linenumber" name="141" href="#141">141</a>         <strong class="jxr_keyword">super</strong>(message, errorContent, cause);
<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>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="145" href="#145">145</a> <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="146" href="#146">146</a> <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="147" href="#147">147</a> <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="148" href="#148">148</a> <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="149" href="#149">149</a> <em class="jxr_javadoccomment">     * @param cause</em>
<a class="jxr_linenumber" name="150" href="#150">150</a> <em class="jxr_javadoccomment">     *            the cause</em>
<a class="jxr_linenumber" name="151" href="#151">151</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="152" href="#152">152</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message, Throwable cause) {
<a class="jxr_linenumber" name="153" href="#153">153</a>         <strong class="jxr_keyword">super</strong>(message, BigInteger.ZERO, cause);
<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>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="157" href="#157">157</a> <em class="jxr_javadoccomment">     * Constructor.</em>
<a class="jxr_linenumber" name="158" href="#158">158</a> <em class="jxr_javadoccomment">     * </em>
<a class="jxr_linenumber" name="159" href="#159">159</a> <em class="jxr_javadoccomment">     * @param message</em>
<a class="jxr_linenumber" name="160" href="#160">160</a> <em class="jxr_javadoccomment">     *            error message</em>
<a class="jxr_linenumber" name="161" href="#161">161</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="162" href="#162">162</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/chemistry/opencmis/commons/exceptions/CmisFilterNotValidException.html">CmisFilterNotValidException</a>(String message) {
<a class="jxr_linenumber" name="163" href="#163">163</a>         <strong class="jxr_keyword">super</strong>(message, BigInteger.ZERO);
<a class="jxr_linenumber" name="164" href="#164">164</a>     }
<a class="jxr_linenumber" name="165" href="#165">165</a> 
<a class="jxr_linenumber" name="166" href="#166">166</a>     @Override
<a class="jxr_linenumber" name="167" href="#167">167</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> String getExceptionName() {
<a class="jxr_linenumber" name="168" href="#168">168</a>         <strong class="jxr_keyword">return</strong> EXCEPTION_NAME;
<a class="jxr_linenumber" name="169" href="#169">169</a>     }
<a class="jxr_linenumber" name="170" href="#170">170</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

