Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-frame.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-frame.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-frame.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.examples</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.examples</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
<body>
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-summary.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-summary.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/examples/package-summary.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.examples</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.examples</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
@@ -23,7 +23,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
@@ -96,7 +96,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-frame.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-frame.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-frame.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.internal.introspection</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.internal.introspection</title>
<link rel="stylesheet" type="text/css"
href="../../../../../../stylesheet.css" title="style" />
</head>
<body>
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-summary.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-summary.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/introspection/package-summary.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.internal.introspection</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.internal.introspection</title>
<link rel="stylesheet" type="text/css"
href="../../../../../../stylesheet.css" title="style" />
</head>
@@ -23,7 +23,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
@@ -151,7 +151,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-frame.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-frame.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-frame.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.internal</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.internal</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
<body>
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-summary.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-summary.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/internal/package-summary.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.internal</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.internal</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
@@ -23,7 +23,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
@@ -86,7 +86,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-frame.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-frame.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-frame.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.introspection</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.introspection</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
<body>
Modified:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-summary.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-summary.html
(original)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/introspection/package-summary.html
Fri Jun 25 11:11:58 2021
@@ -4,7 +4,7 @@
<!-- generated by Apache Maven JXR (jdk8) -->
<head>
<meta http-equiv="content-type" content="text/html;
charset=iso-8859-1" />
- <title>Apache Commons JEXL 3.2.1-SNAPSHOT Reference Package
org.apache.commons.jexl3.introspection</title>
+ <title>Apache Commons JEXL 3.2.1 Reference Package
org.apache.commons.jexl3.introspection</title>
<link rel="stylesheet" type="text/css"
href="../../../../../stylesheet.css" title="style" />
</head>
@@ -23,7 +23,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
@@ -76,7 +76,7 @@
<li>Index</li>
<li>Help</li>
</ul>
- <div class="aboutLanguage"><em><strong>Apache Commons JEXL
3.2.1-SNAPSHOT Reference</strong></em></div>
+ <div class="aboutLanguage"><em><strong>Apache Commons JEXL 3.2.1
Reference</strong></em></div>
</div>
<div class="subNav">
<ul class="navList">
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullGetter.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullGetter.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullGetter.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,87 @@
+<!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=iso-8859-1"
/>
+<title>OptionalNullGetter xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/OptionalNullGetter.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlException;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlPropertyGet;
+<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlUberspect;
+<a class="jxr_linenumber" name="L23" href="#L23">23</a>
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong
class="jxr_keyword">import</strong> java.util.Objects;
+<a class="jxr_linenumber" name="L25" href="#L25">25</a>
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L27" href="#L27">27</a> <em
class="jxr_javadoccomment"> * JexlPropertyGet on a reference that pointed
null.</em>
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <em
class="jxr_javadoccomment"> * <p>Performs a late discovery of the actual
getter.</p></em>
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="OptionalNullGetter"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullGetter.html#OptionalNullGetter">OptionalNullGetter</a>
<strong class="jxr_keyword">implements</strong> JexlPropertyGet {
+<a class="jxr_linenumber" name="L31" href="#L31">31</a> <em
class="jxr_javadoccomment">/** The Uberspect to discover the getter. */</em>
+<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
JexlUberspect uberspect;
+<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em
class="jxr_javadoccomment">/** The property we are trying to discover. */</em>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
Object property;
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em
class="jxr_javadoccomment">/** The result when we solve it. */</em>
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <strong
class="jxr_keyword">private</strong> JexlPropertyGet delegate;
+<a class="jxr_linenumber" name="L37" href="#L37">37</a>
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> <a
name="OptionalNullGetter"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullGetter.html#OptionalNullGetter">OptionalNullGetter</a>(JexlUberspect
jexlUberspect, Object key) {
+<a class="jxr_linenumber" name="L39" href="#L39">39</a> uberspect =
jexlUberspect;
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> property =
key;
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> }
+<a class="jxr_linenumber" name="L42" href="#L42">42</a>
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> @Override
+<a class="jxr_linenumber" name="L44" href="#L44">44</a> <strong
class="jxr_keyword">public</strong> Object invoke(Object obj) <strong
class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L45" href="#L45">45</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L47" href="#L47">47</a> }
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> delegate
= uberspect.getPropertyGet(obj, property);
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L51" href="#L51">51</a>
<strong class="jxr_keyword">throw</strong> <strong
class="jxr_keyword">new</strong> JexlException.Property(<strong
class="jxr_keyword">null</strong>, Objects.toString(property), false, <strong
class="jxr_keyword">null</strong>);
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> }
+<a class="jxr_linenumber" name="L53" href="#L53">53</a> }
+<a class="jxr_linenumber" name="L54" href="#L54">54</a> <strong
class="jxr_keyword">return</strong> delegate.invoke(obj);
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> }
+<a class="jxr_linenumber" name="L56" href="#L56">56</a>
+<a class="jxr_linenumber" name="L57" href="#L57">57</a> @Override
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> <strong
class="jxr_keyword">public</strong> Object tryInvoke(Object obj, Object key)
<strong class="jxr_keyword">throws</strong> JexlException.TryFailed {
+<a class="jxr_linenumber" name="L59" href="#L59">59</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L60" href="#L60">60</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> }
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryInvoke(obj, property) :
JexlEngine.TRY_FAILED;
+<a class="jxr_linenumber" name="L63" href="#L63">63</a> }
+<a class="jxr_linenumber" name="L64" href="#L64">64</a>
+<a class="jxr_linenumber" name="L65" href="#L65">65</a> @Override
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> tryFailed(Object rval) {
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryFailed(rval) :
JexlEngine.TRY_FAILED == rval;
+<a class="jxr_linenumber" name="L68" href="#L68">68</a> }
+<a class="jxr_linenumber" name="L69" href="#L69">69</a>
+<a class="jxr_linenumber" name="L70" href="#L70">70</a> @Override
+<a class="jxr_linenumber" name="L71" href="#L71">71</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> isCacheable() {
+<a class="jxr_linenumber" name="L72" href="#L72">72</a> <strong
class="jxr_keyword">return</strong> false;
+<a class="jxr_linenumber" name="L73" href="#L73">73</a> }
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullMethod.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullMethod.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullMethod.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,93 @@
+<!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=iso-8859-1"
/>
+<title>OptionalNullMethod xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/OptionalNullMethod.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlException;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlInfo;
+<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlMethod;
+<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlPropertyGet;
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlUberspect;
+<a class="jxr_linenumber" name="L25" href="#L25">25</a>
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L27" href="#L27">27</a> <em
class="jxr_javadoccomment"> * JexlMethod on a reference that pointed null.</em>
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <em
class="jxr_javadoccomment"> * <p>Performs a late discovery of the actual
method.</p></em>
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="OptionalNullMethod"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullMethod.html#OptionalNullMethod">OptionalNullMethod</a>
<strong class="jxr_keyword">implements</strong> JexlMethod {
+<a class="jxr_linenumber" name="L31" href="#L31">31</a> <em
class="jxr_javadoccomment">/** The Uberspect to discover the method. */</em>
+<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
JexlUberspect uberspect;
+<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em
class="jxr_javadoccomment">/** The method we are trying to discover. */</em>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
String methodName;
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em
class="jxr_javadoccomment">/** The result when we solve it. */</em>
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <strong
class="jxr_keyword">private</strong> JexlMethod delegate;
+<a class="jxr_linenumber" name="L37" href="#L37">37</a>
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> <a
name="OptionalNullMethod"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullMethod.html#OptionalNullMethod">OptionalNullMethod</a>(JexlUberspect
jexlUberspect, String name) {
+<a class="jxr_linenumber" name="L39" href="#L39">39</a> uberspect =
jexlUberspect;
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> methodName =
name;
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> }
+<a class="jxr_linenumber" name="L42" href="#L42">42</a>
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> @Override
+<a class="jxr_linenumber" name="L44" href="#L44">44</a> <strong
class="jxr_keyword">public</strong> Object invoke(Object obj, Object... params)
<strong class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L45" href="#L45">45</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L47" href="#L47">47</a> }
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> delegate
= uberspect.getMethod(obj, methodName, params);
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L51" href="#L51">51</a>
<strong class="jxr_keyword">throw</strong> <strong
class="jxr_keyword">new</strong> JexlException.Method((JexlInfo) <strong
class="jxr_keyword">null</strong>, methodName, params);
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> }
+<a class="jxr_linenumber" name="L53" href="#L53">53</a> }
+<a class="jxr_linenumber" name="L54" href="#L54">54</a> ;
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> <strong
class="jxr_keyword">return</strong> delegate.invoke(obj, params);
+<a class="jxr_linenumber" name="L56" href="#L56">56</a> }
+<a class="jxr_linenumber" name="L57" href="#L57">57</a>
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> @Override
+<a class="jxr_linenumber" name="L59" href="#L59">59</a> <strong
class="jxr_keyword">public</strong> Object tryInvoke(String name, Object obj,
Object... params) <strong class="jxr_keyword">throws</strong>
JexlException.TryFailed {
+<a class="jxr_linenumber" name="L60" href="#L60">60</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> }
+<a class="jxr_linenumber" name="L63" href="#L63">63</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryInvoke(name, obj, params) :
JexlEngine.TRY_FAILED;
+<a class="jxr_linenumber" name="L64" href="#L64">64</a> }
+<a class="jxr_linenumber" name="L65" href="#L65">65</a>
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> @Override
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> tryFailed(Object rval) {
+<a class="jxr_linenumber" name="L68" href="#L68">68</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryFailed(rval) :
JexlEngine.TRY_FAILED == rval;
+<a class="jxr_linenumber" name="L69" href="#L69">69</a> }
+<a class="jxr_linenumber" name="L70" href="#L70">70</a>
+<a class="jxr_linenumber" name="L71" href="#L71">71</a> @Override
+<a class="jxr_linenumber" name="L72" href="#L72">72</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> isCacheable() {
+<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong
class="jxr_keyword">return</strong> false;
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> }
+<a class="jxr_linenumber" name="L75" href="#L75">75</a>
+<a class="jxr_linenumber" name="L76" href="#L76">76</a> @Override
+<a class="jxr_linenumber" name="L77" href="#L77">77</a> <strong
class="jxr_keyword">public</strong> Class<?> getReturnType() {
+<a class="jxr_linenumber" name="L78" href="#L78">78</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.getReturnType() : <strong
class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L79" href="#L79">79</a> }
+<a class="jxr_linenumber" name="L80" href="#L80">80</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullSetter.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullSetter.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalNullSetter.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,87 @@
+<!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=iso-8859-1"
/>
+<title>OptionalNullSetter xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/OptionalNullSetter.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlException;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlPropertySet;
+<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlUberspect;
+<a class="jxr_linenumber" name="L23" href="#L23">23</a>
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong
class="jxr_keyword">import</strong> java.util.Objects;
+<a class="jxr_linenumber" name="L25" href="#L25">25</a>
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L27" href="#L27">27</a> <em
class="jxr_javadoccomment"> * JexlPropertySet on a reference that pointed
null.</em>
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <em
class="jxr_javadoccomment"> * <p>Performs a late discovery of the actual
setter.</p></em>
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="OptionalNullSetter"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullSetter.html#OptionalNullSetter">OptionalNullSetter</a>
<strong class="jxr_keyword">implements</strong> JexlPropertySet {
+<a class="jxr_linenumber" name="L31" href="#L31">31</a> <em
class="jxr_javadoccomment">/** The Uberspect to discover the setter. */</em>
+<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
JexlUberspect uberspect;
+<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em
class="jxr_javadoccomment">/** The property we are trying to discover. */</em>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
Object property;
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em
class="jxr_javadoccomment">/** The result when we solve it. */</em>
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <strong
class="jxr_keyword">private</strong> JexlPropertySet delegate;
+<a class="jxr_linenumber" name="L37" href="#L37">37</a>
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> <a
name="OptionalNullSetter"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalNullSetter.html#OptionalNullSetter">OptionalNullSetter</a>(JexlUberspect
jexlUberspect, Object key) {
+<a class="jxr_linenumber" name="L39" href="#L39">39</a> uberspect =
jexlUberspect;
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> property =
key;
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> }
+<a class="jxr_linenumber" name="L42" href="#L42">42</a>
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> @Override
+<a class="jxr_linenumber" name="L44" href="#L44">44</a> <strong
class="jxr_keyword">public</strong> Object invoke(Object obj, Object arg)
<strong class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L45" href="#L45">45</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L47" href="#L47">47</a> }
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> delegate
= uberspect.getPropertySet(obj, property, arg);
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> <strong
class="jxr_keyword">if</strong> (delegate == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L51" href="#L51">51</a>
<strong class="jxr_keyword">throw</strong> <strong
class="jxr_keyword">new</strong> JexlException.Property(<strong
class="jxr_keyword">null</strong>, Objects.toString(property), false, <strong
class="jxr_keyword">null</strong>);
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> }
+<a class="jxr_linenumber" name="L53" href="#L53">53</a> }
+<a class="jxr_linenumber" name="L54" href="#L54">54</a> <strong
class="jxr_keyword">return</strong> delegate.invoke(obj, arg);
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> }
+<a class="jxr_linenumber" name="L56" href="#L56">56</a>
+<a class="jxr_linenumber" name="L57" href="#L57">57</a> @Override
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> <strong
class="jxr_keyword">public</strong> Object tryInvoke(Object obj, Object key,
Object arg) <strong class="jxr_keyword">throws</strong> JexlException.TryFailed
{
+<a class="jxr_linenumber" name="L59" href="#L59">59</a> <strong
class="jxr_keyword">if</strong> (obj == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L60" href="#L60">60</a> <strong
class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> }
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryInvoke(obj, property, arg) :
JexlEngine.TRY_FAILED;
+<a class="jxr_linenumber" name="L63" href="#L63">63</a> }
+<a class="jxr_linenumber" name="L64" href="#L64">64</a>
+<a class="jxr_linenumber" name="L65" href="#L65">65</a> @Override
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> tryFailed(Object rval) {
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong
class="jxr_keyword">return</strong> delegate != <strong
class="jxr_keyword">null</strong> ? delegate.tryFailed(rval) :
JexlEngine.TRY_FAILED == rval;
+<a class="jxr_linenumber" name="L68" href="#L68">68</a> }
+<a class="jxr_linenumber" name="L69" href="#L69">69</a>
+<a class="jxr_linenumber" name="L70" href="#L70">70</a> @Override
+<a class="jxr_linenumber" name="L71" href="#L71">71</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> isCacheable() {
+<a class="jxr_linenumber" name="L72" href="#L72">72</a> <strong
class="jxr_keyword">return</strong> false;
+<a class="jxr_linenumber" name="L73" href="#L73">73</a> }
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalTest.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalTest.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/OptionalTest.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,102 @@
+<!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=iso-8859-1"
/>
+<title>OptionalTest xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/OptionalTest.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlBuilder;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlException;
+<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlInfo;
+<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlScript;
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlUberspect;
+<a class="jxr_linenumber" name="L25" href="#L25">25</a> <strong
class="jxr_keyword">import</strong> org.junit.Assert;
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <strong
class="jxr_keyword">import</strong> org.junit.Test;
+<a class="jxr_linenumber" name="L27" href="#L27">27</a>
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <strong
class="jxr_keyword">import</strong> java.util.Collections;
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong
class="jxr_keyword">import</strong> java.util.List;
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong
class="jxr_keyword">import</strong> java.util.Optional;
+<a class="jxr_linenumber" name="L31" href="#L31">31</a>
+<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="OptionalTest"
href="../../../../../org/apache/commons/jexl3/jexl342/OptionalTest.html#OptionalTest">OptionalTest</a>
{
+<a class="jxr_linenumber" name="L33" href="#L33">33</a>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong>
<strong class="jxr_keyword">class</strong> Thing {
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> String name =
<strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <strong
class="jxr_keyword">public</strong> Optional<String> findName() {
+<a class="jxr_linenumber" name="L37" href="#L37">37</a> <strong
class="jxr_keyword">return</strong> Optional.ofNullable(name);
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> }
+<a class="jxr_linenumber" name="L39" href="#L39">39</a>
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> <strong
class="jxr_keyword">public</strong> Optional<List<String>>
findNames() {
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> <strong
class="jxr_keyword">if</strong> (name == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L42" href="#L42">42</a>
<strong class="jxr_keyword">return</strong> Optional.empty();
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> }
+<a class="jxr_linenumber" name="L44" href="#L44">44</a> <strong
class="jxr_keyword">return</strong>
Optional.of(Collections.singletonList(name));
+<a class="jxr_linenumber" name="L45" href="#L45">45</a> }
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> }
+<a class="jxr_linenumber" name="L47" href="#L47">47</a>
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> @Test
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong>
test342() {
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> JexlBuilder
builder = <strong class="jxr_keyword">new</strong> JexlBuilder();
+<a class="jxr_linenumber" name="L51" href="#L51">51</a> JexlUberspect
uber = builder.create().getUberspect();
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> JexlEngine
jexl = builder.uberspect(<strong class="jxr_keyword">new</strong> <a
name="ReferenceUberspect"
href="../../../../../org/apache/commons/jexl3/jexl342/ReferenceUberspect.html#ReferenceUberspect">ReferenceUberspect</a>(uber)).safe(false).create();
+<a class="jxr_linenumber" name="L53" href="#L53">53</a> JexlInfo info
= <strong class="jxr_keyword">new</strong> JexlInfo(<span
class="jxr_string">"test352"</span>, 1, 1);
+<a class="jxr_linenumber" name="L54" href="#L54">54</a> Thing thing =
<strong class="jxr_keyword">new</strong> Thing();
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> JexlScript
script;
+<a class="jxr_linenumber" name="L56" href="#L56">56</a>
+<a class="jxr_linenumber" name="L57" href="#L57">57</a> script =
jexl.createScript(info.at(53, 1),<span
class="jxr_string">"thing.name.length()"</span>, <span
class="jxr_string">"thing"</span>);
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> Object result
= script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L59" href="#L59">59</a>
Assert.assertNull(result);
+<a class="jxr_linenumber" name="L60" href="#L60">60</a>
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> thing.name =
<span class="jxr_string">"foo"</span>;
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> result =
script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L63" href="#L63">63</a>
Assert.assertEquals(3, result);
+<a class="jxr_linenumber" name="L64" href="#L64">64</a>
+<a class="jxr_linenumber" name="L65" href="#L65">65</a> <strong
class="jxr_keyword">try</strong> {
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> script =
jexl.createScript(info.at(62, 1), <span
class="jxr_string">"thing.name.size()"</span>, <span
class="jxr_string">"thing"</span>);
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> result =
script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L68" href="#L68">68</a>
Assert.fail(<span class="jxr_string">"should have thrown"</span>);
+<a class="jxr_linenumber" name="L69" href="#L69">69</a> } <strong
class="jxr_keyword">catch</strong>(JexlException.Method xmethod) {
+<a class="jxr_linenumber" name="L70" href="#L70">70</a>
Assert.assertEquals(<span class="jxr_string">"size"</span>,
xmethod.getDetail());
+<a class="jxr_linenumber" name="L71" href="#L71">71</a>
Assert.assertEquals(<span class="jxr_string">"test352@62:11 unsolvable
function/method 'size'"</span>, xmethod.getMessage());
+<a class="jxr_linenumber" name="L72" href="#L72">72</a> }
+<a class="jxr_linenumber" name="L73" href="#L73">73</a>
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> <strong
class="jxr_keyword">try</strong> {
+<a class="jxr_linenumber" name="L75" href="#L75">75</a> script =
jexl.createScript(info.at(71, 1), <span
class="jxr_string">"thing.name?.size()"</span>, <span
class="jxr_string">"thing"</span>);
+<a class="jxr_linenumber" name="L76" href="#L76">76</a> result =
script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L77" href="#L77">77</a> } <strong
class="jxr_keyword">catch</strong>(JexlException.Method xmethod) {
+<a class="jxr_linenumber" name="L78" href="#L78">78</a>
Assert.fail(<span class="jxr_string">"should not have thrown"</span>);
+<a class="jxr_linenumber" name="L79" href="#L79">79</a> }
+<a class="jxr_linenumber" name="L80" href="#L80">80</a>
+<a class="jxr_linenumber" name="L81" href="#L81">81</a> thing.name =
<strong class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L82" href="#L82">82</a> script =
jexl.createScript(info,<span class="jxr_string">"thing.names.size()"</span>,
<span class="jxr_string">"thing"</span>);
+<a class="jxr_linenumber" name="L83" href="#L83">83</a> result =
script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L84" href="#L84">84</a>
Assert.assertNull(result);
+<a class="jxr_linenumber" name="L85" href="#L85">85</a> thing.name =
<span class="jxr_string">"froboz"</span>;
+<a class="jxr_linenumber" name="L86" href="#L86">86</a> result =
script.execute(<strong class="jxr_keyword">null</strong>, thing);
+<a class="jxr_linenumber" name="L87" href="#L87">87</a>
Assert.assertEquals(1, result);
+<a class="jxr_linenumber" name="L88" href="#L88">88</a> }
+<a class="jxr_linenumber" name="L89" href="#L89">89</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,88 @@
+<!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=iso-8859-1"
/>
+<title>ReferenceGetExecutor xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlPropertyGet;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a>
+<a class="jxr_linenumber" name="L22" href="#L22">22</a>
+<a class="jxr_linenumber" name="L23" href="#L23">23</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <em
class="jxr_javadoccomment"> * Wraps a reference or optional property get
executor.</em>
+<a class="jxr_linenumber" name="L25" href="#L25">25</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="ReferenceGetExecutor"
href="../../../../../org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html#ReferenceGetExecutor">ReferenceGetExecutor</a>
<strong class="jxr_keyword">implements</strong> JexlPropertyGet {
+<a class="jxr_linenumber" name="L27" href="#L27">27</a> <em
class="jxr_javadoccomment">/** The reference handler. */</em>
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
ReferenceUberspect.ReferenceHandler handler;
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <em
class="jxr_javadoccomment">/** The previous getter we did delegate to. */</em>
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
JexlPropertyGet getter;
+<a class="jxr_linenumber" name="L31" href="#L31">31</a>
+<a class="jxr_linenumber" name="L32" href="#L32">32</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em
class="jxr_javadoccomment"> * Creates an instance.</em>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <em
class="jxr_javadoccomment"> * @param referenceHandler the reference
handler</em>
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em
class="jxr_javadoccomment"> * @param jexlGet the property getter</em>
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L37" href="#L37">37</a> <strong
class="jxr_keyword">public</strong> <a name="ReferenceGetExecutor"
href="../../../../../org/apache/commons/jexl3/jexl342/ReferenceGetExecutor.html#ReferenceGetExecutor">ReferenceGetExecutor</a>(ReferenceUberspect.ReferenceHandler
referenceHandler, JexlPropertyGet jexlGet) {
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> <strong
class="jxr_keyword">if</strong> (referenceHandler == <strong
class="jxr_keyword">null</strong> || jexlGet == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L39" href="#L39">39</a> <strong
class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong>
IllegalArgumentException(<span class="jxr_string">"handler and getter cant be
null"</span>);
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> }
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> handler =
referenceHandler;
+<a class="jxr_linenumber" name="L42" href="#L42">42</a> getter =
jexlGet;
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> }
+<a class="jxr_linenumber" name="L44" href="#L44">44</a>
+<a class="jxr_linenumber" name="L45" href="#L45">45</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> <em
class="jxr_javadoccomment"> * Dereference an expected optional or reference
.</em>
+<a class="jxr_linenumber" name="L47" href="#L47">47</a> <em
class="jxr_javadoccomment"> * @param ref the reference</em>
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> <em
class="jxr_javadoccomment"> * @return the reference value or the
reference</em>
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> <strong
class="jxr_keyword">protected</strong> Object getReference(Object ref) {
+<a class="jxr_linenumber" name="L51" href="#L51">51</a> <strong
class="jxr_keyword">return</strong> handler.callGet(ref);
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> }
+<a class="jxr_linenumber" name="L53" href="#L53">53</a>
+<a class="jxr_linenumber" name="L54" href="#L54">54</a> @Override
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> <strong
class="jxr_keyword">public</strong> Object invoke(<strong
class="jxr_keyword">final</strong> Object ref) <strong
class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L56" href="#L56">56</a> Object obj =
getReference(ref);
+<a class="jxr_linenumber" name="L57" href="#L57">57</a> <strong
class="jxr_keyword">return</strong> getter.invoke(obj);
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> }
+<a class="jxr_linenumber" name="L59" href="#L59">59</a>
+<a class="jxr_linenumber" name="L60" href="#L60">60</a> @Override
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> <strong
class="jxr_keyword">public</strong> Object tryInvoke(<strong
class="jxr_keyword">final</strong> Object ref, <strong
class="jxr_keyword">final</strong> Object key) {
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> Object obj =
getReference(ref);
+<a class="jxr_linenumber" name="L63" href="#L63">63</a> <strong
class="jxr_keyword">return</strong> obj == ref ? JexlEngine.TRY_FAILED :
getter.tryInvoke(obj, key);
+<a class="jxr_linenumber" name="L64" href="#L64">64</a> }
+<a class="jxr_linenumber" name="L65" href="#L65">65</a>
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> @Override
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> tryFailed(Object rval) {
+<a class="jxr_linenumber" name="L68" href="#L68">68</a> <strong
class="jxr_keyword">return</strong> getter.tryFailed(rval);
+<a class="jxr_linenumber" name="L69" href="#L69">69</a> }
+<a class="jxr_linenumber" name="L70" href="#L70">70</a>
+<a class="jxr_linenumber" name="L71" href="#L71">71</a> @Override
+<a class="jxr_linenumber" name="L72" href="#L72">72</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> isCacheable() {
+<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong
class="jxr_keyword">return</strong> getter.isCacheable();
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> }
+<a class="jxr_linenumber" name="L75" href="#L75">75</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file
Added:
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html
==============================================================================
---
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html
(added)
+++
websites/production/commons/content/proper/commons-jexl/xref-test/org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html
Fri Jun 25 11:11:58 2021
@@ -0,0 +1,100 @@
+<!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=iso-8859-1"
/>
+<title>ReferenceMethodExecutor xref</title>
+<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
+</head>
+<body>
+<div id="overview"><a
href="../../../../../../testapidocs/org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html">View
Javadoc</a></div><pre>
+<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em
class="jxr_comment">/*</em>
+<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em
class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under
one or more</em>
+<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em
class="jxr_comment"> * contributor license agreements. See the NOTICE file
distributed with</em>
+<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em
class="jxr_comment"> * this work for additional information regarding copyright
ownership.</em>
+<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em
class="jxr_comment"> * The ASF licenses this file to You under the Apache
License, Version 2.0</em>
+<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em
class="jxr_comment"> * (the "License"); you may not use this file except in
compliance with</em>
+<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em
class="jxr_comment"> * the License. You may obtain a copy of the License
at</em>
+<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L9" href="#L9">9</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="L10" href="#L10">10</a> <em
class="jxr_comment"> *</em>
+<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em
class="jxr_comment"> * Unless required by applicable law or agreed to in
writing, software</em>
+<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em
class="jxr_comment"> * distributed under the License is distributed on an "AS
IS" BASIS,</em>
+<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em
class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
express or implied.</em>
+<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em
class="jxr_comment"> * See the License for the specific language governing
permissions and</em>
+<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em
class="jxr_comment"> * limitations under the License.</em>
+<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em
class="jxr_comment"> */</em>
+<a class="jxr_linenumber" name="L17" href="#L17">17</a> <strong
class="jxr_keyword">package</strong> org.apache.commons.jexl3.jexl342;
+<a class="jxr_linenumber" name="L18" href="#L18">18</a>
+<a class="jxr_linenumber" name="L19" href="#L19">19</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlEngine;
+<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong
class="jxr_keyword">import</strong> org.apache.commons.jexl3.JexlException;
+<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong
class="jxr_keyword">import</strong>
org.apache.commons.jexl3.introspection.JexlMethod;
+<a class="jxr_linenumber" name="L22" href="#L22">22</a>
+<a class="jxr_linenumber" name="L23" href="#L23">23</a>
+<a class="jxr_linenumber" name="L24" href="#L24">24</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L25" href="#L25">25</a> <em
class="jxr_javadoccomment"> * Wraps a reference or optional method
executor.</em>
+<a class="jxr_linenumber" name="L26" href="#L26">26</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L27" href="#L27">27</a> <strong
class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong>
<a name="ReferenceMethodExecutor"
href="../../../../../org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html#ReferenceMethodExecutor">ReferenceMethodExecutor</a>
<strong class="jxr_keyword">implements</strong> JexlMethod {
+<a class="jxr_linenumber" name="L28" href="#L28">28</a> <em
class="jxr_javadoccomment">/** The reference handler. */</em>
+<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
ReferenceUberspect.ReferenceHandler handler;
+<a class="jxr_linenumber" name="L30" href="#L30">30</a> <em
class="jxr_javadoccomment">/** The method to delegate to. */</em>
+<a class="jxr_linenumber" name="L31" href="#L31">31</a> <strong
class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong>
JexlMethod method;
+<a class="jxr_linenumber" name="L32" href="#L32">32</a>
+<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L34" href="#L34">34</a> <em
class="jxr_javadoccomment"> * Creates an instance.</em>
+<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em
class="jxr_javadoccomment"> * @param referenceHandler the reference
handler</em>
+<a class="jxr_linenumber" name="L36" href="#L36">36</a> <em
class="jxr_javadoccomment"> * @param jexlMethod the method executor</em>
+<a class="jxr_linenumber" name="L37" href="#L37">37</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L38" href="#L38">38</a> <strong
class="jxr_keyword">public</strong> <a name="ReferenceMethodExecutor"
href="../../../../../org/apache/commons/jexl3/jexl342/ReferenceMethodExecutor.html#ReferenceMethodExecutor">ReferenceMethodExecutor</a>(ReferenceUberspect.ReferenceHandler
referenceHandler, JexlMethod jexlMethod) {
+<a class="jxr_linenumber" name="L39" href="#L39">39</a> <strong
class="jxr_keyword">if</strong> (referenceHandler == <strong
class="jxr_keyword">null</strong> || jexlMethod == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L40" href="#L40">40</a> <strong
class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong>
IllegalArgumentException(<span class="jxr_string">"handler and method cant be
null"</span>);
+<a class="jxr_linenumber" name="L41" href="#L41">41</a> }
+<a class="jxr_linenumber" name="L42" href="#L42">42</a> <strong
class="jxr_keyword">this</strong>.method = jexlMethod;
+<a class="jxr_linenumber" name="L43" href="#L43">43</a> <strong
class="jxr_keyword">this</strong>.handler = referenceHandler;
+<a class="jxr_linenumber" name="L44" href="#L44">44</a> }
+<a class="jxr_linenumber" name="L45" href="#L45">45</a>
+<a class="jxr_linenumber" name="L46" href="#L46">46</a> <em
class="jxr_javadoccomment">/**</em>
+<a class="jxr_linenumber" name="L47" href="#L47">47</a> <em
class="jxr_javadoccomment"> * Dereference an expected optional or reference
.</em>
+<a class="jxr_linenumber" name="L48" href="#L48">48</a> <em
class="jxr_javadoccomment"> * @param opt the reference</em>
+<a class="jxr_linenumber" name="L49" href="#L49">49</a> <em
class="jxr_javadoccomment"> * @return the reference value</em>
+<a class="jxr_linenumber" name="L50" href="#L50">50</a> <em
class="jxr_javadoccomment"> */</em>
+<a class="jxr_linenumber" name="L51" href="#L51">51</a> <strong
class="jxr_keyword">protected</strong> Object getReference(Object opt) {
+<a class="jxr_linenumber" name="L52" href="#L52">52</a> <strong
class="jxr_keyword">return</strong> handler.callGet(opt);
+<a class="jxr_linenumber" name="L53" href="#L53">53</a> }
+<a class="jxr_linenumber" name="L54" href="#L54">54</a>
+<a class="jxr_linenumber" name="L55" href="#L55">55</a> @Override
+<a class="jxr_linenumber" name="L56" href="#L56">56</a> <strong
class="jxr_keyword">public</strong> Object invoke(Object ref, Object... args)
<strong class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L57" href="#L57">57</a> Object obj =
getReference(ref);
+<a class="jxr_linenumber" name="L58" href="#L58">58</a> <strong
class="jxr_keyword">return</strong> obj == <strong
class="jxr_keyword">null</strong>? <strong class="jxr_keyword">null</strong> :
method.invoke(obj, args);
+<a class="jxr_linenumber" name="L59" href="#L59">59</a> }
+<a class="jxr_linenumber" name="L60" href="#L60">60</a>
+<a class="jxr_linenumber" name="L61" href="#L61">61</a> @Override
+<a class="jxr_linenumber" name="L62" href="#L62">62</a> <strong
class="jxr_keyword">public</strong> Object tryInvoke(String name, Object ref,
Object... args) <strong class="jxr_keyword">throws</strong>
JexlException.TryFailed {
+<a class="jxr_linenumber" name="L63" href="#L63">63</a> Object obj =
getReference(ref);
+<a class="jxr_linenumber" name="L64" href="#L64">64</a> <strong
class="jxr_keyword">if</strong> (method == <strong
class="jxr_keyword">null</strong>) {
+<a class="jxr_linenumber" name="L65" href="#L65">65</a> <strong
class="jxr_keyword">return</strong> obj == <strong
class="jxr_keyword">null</strong>? <strong class="jxr_keyword">null</strong> :
JexlEngine.TRY_FAILED;
+<a class="jxr_linenumber" name="L66" href="#L66">66</a> }
+<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong
class="jxr_keyword">if</strong> (obj == ref) {
+<a class="jxr_linenumber" name="L68" href="#L68">68</a> <strong
class="jxr_keyword">return</strong> JexlEngine.TRY_FAILED;
+<a class="jxr_linenumber" name="L69" href="#L69">69</a> }
+<a class="jxr_linenumber" name="L70" href="#L70">70</a> <strong
class="jxr_keyword">return</strong> method.tryInvoke(name, obj, args);
+<a class="jxr_linenumber" name="L71" href="#L71">71</a> }
+<a class="jxr_linenumber" name="L72" href="#L72">72</a>
+<a class="jxr_linenumber" name="L73" href="#L73">73</a> @Override
+<a class="jxr_linenumber" name="L74" href="#L74">74</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> tryFailed(Object rval) {
+<a class="jxr_linenumber" name="L75" href="#L75">75</a> <strong
class="jxr_keyword">return</strong> method == <strong
class="jxr_keyword">null</strong> || method.tryFailed(rval);
+<a class="jxr_linenumber" name="L76" href="#L76">76</a> }
+<a class="jxr_linenumber" name="L77" href="#L77">77</a>
+<a class="jxr_linenumber" name="L78" href="#L78">78</a> @Override
+<a class="jxr_linenumber" name="L79" href="#L79">79</a> <strong
class="jxr_keyword">public</strong> <strong
class="jxr_keyword">boolean</strong> isCacheable() {
+<a class="jxr_linenumber" name="L80" href="#L80">80</a> <strong
class="jxr_keyword">return</strong> method != <strong
class="jxr_keyword">null</strong> && method.isCacheable();
+<a class="jxr_linenumber" name="L81" href="#L81">81</a> }
+<a class="jxr_linenumber" name="L82" href="#L82">82</a>
+<a class="jxr_linenumber" name="L83" href="#L83">83</a> @Override
+<a class="jxr_linenumber" name="L84" href="#L84">84</a> <strong
class="jxr_keyword">public</strong> Class<?> getReturnType() {
+<a class="jxr_linenumber" name="L85" href="#L85">85</a> <strong
class="jxr_keyword">return</strong> method != <strong
class="jxr_keyword">null</strong>? method.getReturnType() : <strong
class="jxr_keyword">null</strong>;
+<a class="jxr_linenumber" name="L86" href="#L86">86</a> }
+<a class="jxr_linenumber" name="L87" href="#L87">87</a> }
+</pre>
+<hr/>
+<div id="footer">Copyright © 2001–2021 <a
href="https://www.apache.org/">The Apache Software Foundation</a>. All rights
reserved.</div>
+</body>
+</html>
\ No newline at end of file