<!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>EventCartridge xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/velocity/app/event/EventCartridge.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <strong class="jxr_keyword">package</strong> org.apache.velocity.app.event;
<a name="2" href="#2">2</a>   
<a name="3" href="#3">3</a>   <em class="jxr_comment">/*</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a name="10" href="#10">10</a>  <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a name="12" href="#12">12</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 name="13" href="#13">13</a>  <em class="jxr_comment"> *</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a name="19" href="#19">19</a>  <em class="jxr_comment"> * under the License.    </em>
<a name="20" href="#20">20</a>  <em class="jxr_comment"> */</em>
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.util.HashSet;
<a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.util.Iterator;
<a name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> java.util.List;
<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.util.Set;
<a name="27" href="#27">27</a>  
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.context.Context;
<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.context.InternalEventContext;
<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.runtime.RuntimeServices;
<a name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> org.apache.velocity.util.RuntimeServicesAware;
<a name="32" href="#32">32</a>  
<a name="33" href="#33">33</a>  <em class="jxr_javadoccomment">/**</em>
<a name="34" href="#34">34</a>  <em class="jxr_javadoccomment"> * Stores the event handlers. Event handlers can be assigned on a per</em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment"> * VelocityEngine instance basis by specifying the class names in the</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment"> * velocity.properties file. Event handlers may also be assigned on a per-page</em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment"> * basis by creating a new instance of EventCartridge, adding the event</em>
<a name="38" href="#38">38</a>  <em class="jxr_javadoccomment"> * handlers, and then calling attachToContext. For clarity, it's recommended</em>
<a name="39" href="#39">39</a>  <em class="jxr_javadoccomment"> * that one approach or the other be followed, as the second method is primarily</em>
<a name="40" href="#40">40</a>  <em class="jxr_javadoccomment"> * presented for backwards compatibility.</em>
<a name="41" href="#41">41</a>  <em class="jxr_javadoccomment"> *</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment"> * &lt;P&gt;</em>
<a name="43" href="#43">43</a>  <em class="jxr_javadoccomment"> * Note that Event Handlers follow a filter pattern, with multiple event</em>
<a name="44" href="#44">44</a>  <em class="jxr_javadoccomment"> * handlers allowed for each event. When the appropriate event occurs, all the</em>
<a name="45" href="#45">45</a>  <em class="jxr_javadoccomment"> * appropriate event handlers are called in the sequence they were added to the</em>
<a name="46" href="#46">46</a>  <em class="jxr_javadoccomment"> * Event Cartridge. See the javadocs of the specific event handler interfaces</em>
<a name="47" href="#47">47</a>  <em class="jxr_javadoccomment"> * for more details.</em>
<a name="48" href="#48">48</a>  <em class="jxr_javadoccomment"> *</em>
<a name="49" href="#49">49</a>  <em class="jxr_javadoccomment"> * @author &lt;a href="<a href="mailto:wglass@wglass@forio.com" target="alexandria_uri">mailto:wglass@wglass@forio.com</a>"&gt;Will Glass-Husain &lt;/a&gt;</em>
<a name="50" href="#50">50</a>  <em class="jxr_javadoccomment"> * @author &lt;a href="<a href="mailto:geirm@optonline.net" target="alexandria_uri">mailto:geirm@optonline.net</a>"&gt;Geir Magnusson Jr. &lt;/a&gt;</em>
<a name="51" href="#51">51</a>  <em class="jxr_javadoccomment"> * @author &lt;a href="<a href="mailto:j_a_fernandez@yahoo.com" target="alexandria_uri">mailto:j_a_fernandez@yahoo.com</a>"&gt;Jose Alberto Fernandez &lt;/a&gt;</em>
<a name="52" href="#52">52</a>  <em class="jxr_javadoccomment"> * @version $Id: EventCartridge.java 470256 2006-11-02 07:20:36Z wglass $</em>
<a name="53" href="#53">53</a>  <em class="jxr_javadoccomment"> */</em>
<a name="54" href="#54">54</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/apache/velocity/app/event/EventCartridge.html">EventCartridge</a>
<a name="55" href="#55">55</a>    {
<a name="56" href="#56">56</a>      <strong class="jxr_keyword">private</strong> List referenceHandlers = <strong class="jxr_keyword">new</strong> ArrayList();
<a name="57" href="#57">57</a>      <strong class="jxr_keyword">private</strong> List nullSetHandlers = <strong class="jxr_keyword">new</strong> ArrayList();
<a name="58" href="#58">58</a>      <strong class="jxr_keyword">private</strong> List methodExceptionHandlers = <strong class="jxr_keyword">new</strong> ArrayList();
<a name="59" href="#59">59</a>      <strong class="jxr_keyword">private</strong> List includeHandlers = <strong class="jxr_keyword">new</strong> ArrayList();
<a name="60" href="#60">60</a>      <strong class="jxr_keyword">private</strong> List invalidReferenceHandlers = <strong class="jxr_keyword">new</strong> ArrayList();
<a name="61" href="#61">61</a>  
<a name="62" href="#62">62</a>      <em class="jxr_javadoccomment">/**</em>
<a name="63" href="#63">63</a>  <em class="jxr_javadoccomment">     * Ensure that handlers are not initialized more than once.</em>
<a name="64" href="#64">64</a>  <em class="jxr_javadoccomment">     */</em>
<a name="65" href="#65">65</a>      Set initializedHandlers = <strong class="jxr_keyword">new</strong> HashSet();
<a name="66" href="#66">66</a>  
<a name="67" href="#67">67</a>      <em class="jxr_javadoccomment">/**</em>
<a name="68" href="#68">68</a>  <em class="jxr_javadoccomment">     *  Adds an event handler(s) to the Cartridge.  This method</em>
<a name="69" href="#69">69</a>  <em class="jxr_javadoccomment">     *  will find all possible event handler interfaces supported</em>
<a name="70" href="#70">70</a>  <em class="jxr_javadoccomment">     *  by the passed in object.</em>
<a name="71" href="#71">71</a>  <em class="jxr_javadoccomment">     *</em>
<a name="72" href="#72">72</a>  <em class="jxr_javadoccomment">     *  @param ev object impementing a valid EventHandler-derived interface</em>
<a name="73" href="#73">73</a>  <em class="jxr_javadoccomment">     *  @return true if a supported interface, false otherwise or if null</em>
<a name="74" href="#74">74</a>  <em class="jxr_javadoccomment">     */</em>
<a name="75" href="#75">75</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> addEventHandler( EventHandler ev )
<a name="76" href="#76">76</a>      {
<a name="77" href="#77">77</a>          <strong class="jxr_keyword">if</strong> (ev == <strong class="jxr_keyword">null</strong>)
<a name="78" href="#78">78</a>          {
<a name="79" href="#79">79</a>              <strong class="jxr_keyword">return</strong> false;
<a name="80" href="#80">80</a>          }
<a name="81" href="#81">81</a>  
<a name="82" href="#82">82</a>          <strong class="jxr_keyword">boolean</strong> found = false;
<a name="83" href="#83">83</a>  
<a name="84" href="#84">84</a>          <strong class="jxr_keyword">if</strong> ( ev instanceof ReferenceInsertionEventHandler)
<a name="85" href="#85">85</a>          {
<a name="86" href="#86">86</a>              addReferenceInsertionEventHandler( (ReferenceInsertionEventHandler) ev );
<a name="87" href="#87">87</a>              found = <strong class="jxr_keyword">true</strong>;
<a name="88" href="#88">88</a>          }
<a name="89" href="#89">89</a>  
<a name="90" href="#90">90</a>          <strong class="jxr_keyword">if</strong> ( ev instanceof NullSetEventHandler )
<a name="91" href="#91">91</a>          {
<a name="92" href="#92">92</a>              addNullSetEventHandler( (NullSetEventHandler) ev );
<a name="93" href="#93">93</a>              found = <strong class="jxr_keyword">true</strong>;
<a name="94" href="#94">94</a>          }
<a name="95" href="#95">95</a>  
<a name="96" href="#96">96</a>          <strong class="jxr_keyword">if</strong> ( ev instanceof MethodExceptionEventHandler )
<a name="97" href="#97">97</a>          {
<a name="98" href="#98">98</a>              addMethodExceptionHandler( (MethodExceptionEventHandler) ev );
<a name="99" href="#99">99</a>              found = <strong class="jxr_keyword">true</strong>;
<a name="100" href="#100">100</a>         }
<a name="101" href="#101">101</a> 
<a name="102" href="#102">102</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof IncludeEventHandler )
<a name="103" href="#103">103</a>         {
<a name="104" href="#104">104</a>             addIncludeEventHandler( (IncludeEventHandler) ev );
<a name="105" href="#105">105</a>             found = <strong class="jxr_keyword">true</strong>;
<a name="106" href="#106">106</a>         }
<a name="107" href="#107">107</a> 
<a name="108" href="#108">108</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof InvalidReferenceEventHandler )
<a name="109" href="#109">109</a>         {
<a name="110" href="#110">110</a>             addInvalidReferenceEventHandler( (InvalidReferenceEventHandler) ev );
<a name="111" href="#111">111</a>             found = <strong class="jxr_keyword">true</strong>;
<a name="112" href="#112">112</a>         }
<a name="113" href="#113">113</a> 
<a name="114" href="#114">114</a>         <strong class="jxr_keyword">return</strong> found;
<a name="115" href="#115">115</a>     }
<a name="116" href="#116">116</a> 
<a name="117" href="#117">117</a>     <em class="jxr_javadoccomment">/**</em>
<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">      *  Add a reference insertion event handler to the Cartridge.</em>
<a name="119" href="#119">119</a> <em class="jxr_javadoccomment">      *</em>
<a name="120" href="#120">120</a> <em class="jxr_javadoccomment">      *  @param ev ReferenceInsertionEventHandler</em>
<a name="121" href="#121">121</a> <em class="jxr_javadoccomment">     */</em>
<a name="122" href="#122">122</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addReferenceInsertionEventHandler( ReferenceInsertionEventHandler ev )
<a name="123" href="#123">123</a>      {
<a name="124" href="#124">124</a>          referenceHandlers.add( ev );
<a name="125" href="#125">125</a>      }
<a name="126" href="#126">126</a> 
<a name="127" href="#127">127</a>     <em class="jxr_javadoccomment">/**</em>
<a name="128" href="#128">128</a> <em class="jxr_javadoccomment">      *  Add a null set event handler to the Cartridge.</em>
<a name="129" href="#129">129</a> <em class="jxr_javadoccomment">      *</em>
<a name="130" href="#130">130</a> <em class="jxr_javadoccomment">      *  @param ev NullSetEventHandler</em>
<a name="131" href="#131">131</a> <em class="jxr_javadoccomment">      */</em>
<a name="132" href="#132">132</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addNullSetEventHandler( NullSetEventHandler ev )
<a name="133" href="#133">133</a>      {
<a name="134" href="#134">134</a>          nullSetHandlers.add( ev );
<a name="135" href="#135">135</a>      }
<a name="136" href="#136">136</a> 
<a name="137" href="#137">137</a>     <em class="jxr_javadoccomment">/**</em>
<a name="138" href="#138">138</a> <em class="jxr_javadoccomment">     *  Add a method exception event handler to the Cartridge.</em>
<a name="139" href="#139">139</a> <em class="jxr_javadoccomment">     *</em>
<a name="140" href="#140">140</a> <em class="jxr_javadoccomment">     *  @param ev MethodExceptionEventHandler</em>
<a name="141" href="#141">141</a> <em class="jxr_javadoccomment">     */</em>
<a name="142" href="#142">142</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addMethodExceptionHandler( MethodExceptionEventHandler ev )
<a name="143" href="#143">143</a>     {
<a name="144" href="#144">144</a>         methodExceptionHandlers.add( ev );
<a name="145" href="#145">145</a>     }
<a name="146" href="#146">146</a> 
<a name="147" href="#147">147</a>     <em class="jxr_javadoccomment">/**</em>
<a name="148" href="#148">148</a> <em class="jxr_javadoccomment">     *  Add an include event handler to the Cartridge.</em>
<a name="149" href="#149">149</a> <em class="jxr_javadoccomment">     *</em>
<a name="150" href="#150">150</a> <em class="jxr_javadoccomment">     *  @param ev IncludeEventHandler</em>
<a name="151" href="#151">151</a> <em class="jxr_javadoccomment">     */</em>
<a name="152" href="#152">152</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addIncludeEventHandler( IncludeEventHandler ev )
<a name="153" href="#153">153</a>     {
<a name="154" href="#154">154</a>         includeHandlers.add( ev );
<a name="155" href="#155">155</a>     }
<a name="156" href="#156">156</a> 
<a name="157" href="#157">157</a>     <em class="jxr_javadoccomment">/**</em>
<a name="158" href="#158">158</a> <em class="jxr_javadoccomment">     *  Add an invalid reference event handler to the Cartridge.</em>
<a name="159" href="#159">159</a> <em class="jxr_javadoccomment">     *</em>
<a name="160" href="#160">160</a> <em class="jxr_javadoccomment">     *  @param ev InvalidReferenceEventHandler</em>
<a name="161" href="#161">161</a> <em class="jxr_javadoccomment">     */</em>
<a name="162" href="#162">162</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addInvalidReferenceEventHandler( InvalidReferenceEventHandler ev )
<a name="163" href="#163">163</a>     {
<a name="164" href="#164">164</a>         invalidReferenceHandlers.add( ev );
<a name="165" href="#165">165</a>     }
<a name="166" href="#166">166</a> 
<a name="167" href="#167">167</a> 
<a name="168" href="#168">168</a>     <em class="jxr_javadoccomment">/**</em>
<a name="169" href="#169">169</a> <em class="jxr_javadoccomment">     * Removes an event handler(s) from the Cartridge. This method will find all</em>
<a name="170" href="#170">170</a> <em class="jxr_javadoccomment">     * possible event handler interfaces supported by the passed in object and</em>
<a name="171" href="#171">171</a> <em class="jxr_javadoccomment">     * remove them.</em>
<a name="172" href="#172">172</a> <em class="jxr_javadoccomment">     *</em>
<a name="173" href="#173">173</a> <em class="jxr_javadoccomment">     * @param ev  object impementing a valid EventHandler-derived interface</em>
<a name="174" href="#174">174</a> <em class="jxr_javadoccomment">     * @return true if event handler was previously registered, false if not</em>
<a name="175" href="#175">175</a> <em class="jxr_javadoccomment">     *         found</em>
<a name="176" href="#176">176</a> <em class="jxr_javadoccomment">     */</em>
<a name="177" href="#177">177</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> removeEventHandler( EventHandler ev )
<a name="178" href="#178">178</a>     {
<a name="179" href="#179">179</a>         <strong class="jxr_keyword">if</strong> ( ev == <strong class="jxr_keyword">null</strong> )
<a name="180" href="#180">180</a>         {
<a name="181" href="#181">181</a>             <strong class="jxr_keyword">return</strong> false;
<a name="182" href="#182">182</a>         }
<a name="183" href="#183">183</a> 
<a name="184" href="#184">184</a>         <strong class="jxr_keyword">boolean</strong> found = false;
<a name="185" href="#185">185</a> 
<a name="186" href="#186">186</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof ReferenceInsertionEventHandler )
<a name="187" href="#187">187</a>             <strong class="jxr_keyword">return</strong> referenceHandlers.remove( ev );
<a name="188" href="#188">188</a> 
<a name="189" href="#189">189</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof NullSetEventHandler )
<a name="190" href="#190">190</a>             <strong class="jxr_keyword">return</strong> nullSetHandlers.remove( ev );
<a name="191" href="#191">191</a> 
<a name="192" href="#192">192</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof MethodExceptionEventHandler )
<a name="193" href="#193">193</a>             <strong class="jxr_keyword">return</strong> methodExceptionHandlers.remove(ev );
<a name="194" href="#194">194</a> 
<a name="195" href="#195">195</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof IncludeEventHandler )
<a name="196" href="#196">196</a>             <strong class="jxr_keyword">return</strong> includeHandlers.remove( ev );
<a name="197" href="#197">197</a> 
<a name="198" href="#198">198</a>         <strong class="jxr_keyword">if</strong> ( ev instanceof InvalidReferenceEventHandler )
<a name="199" href="#199">199</a>             <strong class="jxr_keyword">return</strong> invalidReferenceHandlers.remove( ev );
<a name="200" href="#200">200</a> 
<a name="201" href="#201">201</a>         <strong class="jxr_keyword">return</strong> found;
<a name="202" href="#202">202</a>     }
<a name="203" href="#203">203</a> 
<a name="204" href="#204">204</a>     <em class="jxr_javadoccomment">/**</em>
<a name="205" href="#205">205</a> <em class="jxr_javadoccomment">     * Iterate through all the stored ReferenceInsertionEventHandler objects</em>
<a name="206" href="#206">206</a> <em class="jxr_javadoccomment">     * </em>
<a name="207" href="#207">207</a> <em class="jxr_javadoccomment">     * @return iterator of handler objects</em>
<a name="208" href="#208">208</a> <em class="jxr_javadoccomment">     */</em>
<a name="209" href="#209">209</a>     <strong class="jxr_keyword">public</strong> Iterator getReferenceInsertionEventHandlers()
<a name="210" href="#210">210</a>     {
<a name="211" href="#211">211</a>         <strong class="jxr_keyword">return</strong> referenceHandlers.iterator();
<a name="212" href="#212">212</a>     }
<a name="213" href="#213">213</a> 
<a name="214" href="#214">214</a>     <em class="jxr_javadoccomment">/**</em>
<a name="215" href="#215">215</a> <em class="jxr_javadoccomment">     * Iterate through all the stored NullSetEventHandler objects</em>
<a name="216" href="#216">216</a> <em class="jxr_javadoccomment">     * </em>
<a name="217" href="#217">217</a> <em class="jxr_javadoccomment">     * @return iterator of handler objects</em>
<a name="218" href="#218">218</a> <em class="jxr_javadoccomment">     */</em>
<a name="219" href="#219">219</a>     <strong class="jxr_keyword">public</strong> Iterator getNullSetEventHandlers()
<a name="220" href="#220">220</a>     {
<a name="221" href="#221">221</a>         <strong class="jxr_keyword">return</strong> nullSetHandlers.iterator();
<a name="222" href="#222">222</a>     }
<a name="223" href="#223">223</a> 
<a name="224" href="#224">224</a>     <em class="jxr_javadoccomment">/**</em>
<a name="225" href="#225">225</a> <em class="jxr_javadoccomment">     * Iterate through all the stored MethodExceptionEventHandler objects</em>
<a name="226" href="#226">226</a> <em class="jxr_javadoccomment">     * </em>
<a name="227" href="#227">227</a> <em class="jxr_javadoccomment">     * @return iterator of handler objects</em>
<a name="228" href="#228">228</a> <em class="jxr_javadoccomment">     */</em>
<a name="229" href="#229">229</a>     <strong class="jxr_keyword">public</strong> Iterator getMethodExceptionEventHandlers()
<a name="230" href="#230">230</a>     {
<a name="231" href="#231">231</a>         <strong class="jxr_keyword">return</strong> methodExceptionHandlers.iterator();
<a name="232" href="#232">232</a>     }
<a name="233" href="#233">233</a> 
<a name="234" href="#234">234</a>     <em class="jxr_javadoccomment">/**</em>
<a name="235" href="#235">235</a> <em class="jxr_javadoccomment">     * Iterate through all the stored IncludeEventHandlers objects</em>
<a name="236" href="#236">236</a> <em class="jxr_javadoccomment">     * </em>
<a name="237" href="#237">237</a> <em class="jxr_javadoccomment">     * @return iterator of handler objects</em>
<a name="238" href="#238">238</a> <em class="jxr_javadoccomment">     */</em>
<a name="239" href="#239">239</a>     <strong class="jxr_keyword">public</strong> Iterator getIncludeEventHandlers()
<a name="240" href="#240">240</a>     {
<a name="241" href="#241">241</a>         <strong class="jxr_keyword">return</strong> includeHandlers.iterator();
<a name="242" href="#242">242</a>     }
<a name="243" href="#243">243</a> 
<a name="244" href="#244">244</a>     <em class="jxr_javadoccomment">/**</em>
<a name="245" href="#245">245</a> <em class="jxr_javadoccomment">     * Iterate through all the stored InvalidReferenceEventHandlers objects</em>
<a name="246" href="#246">246</a> <em class="jxr_javadoccomment">     * </em>
<a name="247" href="#247">247</a> <em class="jxr_javadoccomment">     * @return iterator of handler objects</em>
<a name="248" href="#248">248</a> <em class="jxr_javadoccomment">     */</em>
<a name="249" href="#249">249</a>     <strong class="jxr_keyword">public</strong> Iterator getInvalidReferenceEventHandlers()
<a name="250" href="#250">250</a>     {
<a name="251" href="#251">251</a>         <strong class="jxr_keyword">return</strong> invalidReferenceHandlers.iterator();
<a name="252" href="#252">252</a>     }
<a name="253" href="#253">253</a> 
<a name="254" href="#254">254</a>     <em class="jxr_javadoccomment">/**</em>
<a name="255" href="#255">255</a> <em class="jxr_javadoccomment">     *  Attached the EventCartridge to the context</em>
<a name="256" href="#256">256</a> <em class="jxr_javadoccomment">     *</em>
<a name="257" href="#257">257</a> <em class="jxr_javadoccomment">     *  Final because not something one should mess with lightly :)</em>
<a name="258" href="#258">258</a> <em class="jxr_javadoccomment">     *</em>
<a name="259" href="#259">259</a> <em class="jxr_javadoccomment">     *  @param context context to attach to</em>
<a name="260" href="#260">260</a> <em class="jxr_javadoccomment">     *  @return true if successful, false otherwise</em>
<a name="261" href="#261">261</a> <em class="jxr_javadoccomment">     */</em>
<a name="262" href="#262">262</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">boolean</strong> attachToContext( Context context )
<a name="263" href="#263">263</a>     {
<a name="264" href="#264">264</a>         <strong class="jxr_keyword">if</strong> (  context instanceof InternalEventContext )
<a name="265" href="#265">265</a>         {
<a name="266" href="#266">266</a>             <a href="../../../../../org/apache/velocity/context/InternalEventContext.html">InternalEventContext</a> iec = (InternalEventContext) context;
<a name="267" href="#267">267</a> 
<a name="268" href="#268">268</a>             iec.attachEventCartridge( <strong class="jxr_keyword">this</strong> );
<a name="269" href="#269">269</a> 
<a name="270" href="#270">270</a>             <em class="jxr_javadoccomment">/**</em>
<a name="271" href="#271">271</a> <em class="jxr_javadoccomment">             * while it's tempting to call setContext on each handler from here,</em>
<a name="272" href="#272">272</a> <em class="jxr_javadoccomment">             * this needs to be done before each method call.  This is</em>
<a name="273" href="#273">273</a> <em class="jxr_javadoccomment">             * because the specific context will change as inner contexts</em>
<a name="274" href="#274">274</a> <em class="jxr_javadoccomment">             * are linked in through macros, foreach, or directly by the user.</em>
<a name="275" href="#275">275</a> <em class="jxr_javadoccomment">             */</em>
<a name="276" href="#276">276</a> 
<a name="277" href="#277">277</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a name="278" href="#278">278</a>         }
<a name="279" href="#279">279</a>         <strong class="jxr_keyword">else</strong>
<a name="280" href="#280">280</a>         {
<a name="281" href="#281">281</a>             <strong class="jxr_keyword">return</strong> false;
<a name="282" href="#282">282</a>         }
<a name="283" href="#283">283</a>     }
<a name="284" href="#284">284</a> 
<a name="285" href="#285">285</a>     <em class="jxr_javadoccomment">/**</em>
<a name="286" href="#286">286</a> <em class="jxr_javadoccomment">     * Initialize the handlers.  For global handlers this is called when Velocity</em>
<a name="287" href="#287">287</a> <em class="jxr_javadoccomment">     * is initialized. For local handlers this is called when the first handler</em>
<a name="288" href="#288">288</a> <em class="jxr_javadoccomment">     * is executed.  Handlers will not be initialized more than once.</em>
<a name="289" href="#289">289</a> <em class="jxr_javadoccomment">     * </em>
<a name="290" href="#290">290</a> <em class="jxr_javadoccomment">     * @param rs</em>
<a name="291" href="#291">291</a> <em class="jxr_javadoccomment">     * @throws Exception</em>
<a name="292" href="#292">292</a> <em class="jxr_javadoccomment">     */</em>
<a name="293" href="#293">293</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> initialize (RuntimeServices rs) <strong class="jxr_keyword">throws</strong> Exception
<a name="294" href="#294">294</a>     {
<a name="295" href="#295">295</a> 
<a name="296" href="#296">296</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = referenceHandlers.iterator(); i.hasNext(); )
<a name="297" href="#297">297</a>         {
<a name="298" href="#298">298</a>             <a href="../../../../../org/apache/velocity/app/event/EventHandler.html">EventHandler</a> eh = ( EventHandler ) i.next();
<a name="299" href="#299">299</a>             <strong class="jxr_keyword">if</strong> ( (eh instanceof RuntimeServicesAware) &amp;&amp;
<a name="300" href="#300">300</a>                     !initializedHandlers.contains(eh) )
<a name="301" href="#301">301</a>             {
<a name="302" href="#302">302</a>                 ((<a href="../../../../../org/apache/velocity/util/RuntimeServicesAware.html">RuntimeServicesAware</a>) eh).setRuntimeServices ( rs );
<a name="303" href="#303">303</a>                 initializedHandlers.add( eh );
<a name="304" href="#304">304</a>             }
<a name="305" href="#305">305</a>         }
<a name="306" href="#306">306</a> 
<a name="307" href="#307">307</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = nullSetHandlers.iterator(); i.hasNext(); )
<a name="308" href="#308">308</a>         {
<a name="309" href="#309">309</a>             <a href="../../../../../org/apache/velocity/app/event/EventHandler.html">EventHandler</a> eh = ( EventHandler ) i.next();
<a name="310" href="#310">310</a>             <strong class="jxr_keyword">if</strong> ( (eh instanceof RuntimeServicesAware) &amp;&amp;
<a name="311" href="#311">311</a>                     !initializedHandlers.contains(eh) )
<a name="312" href="#312">312</a>             {
<a name="313" href="#313">313</a>                 ((<a href="../../../../../org/apache/velocity/util/RuntimeServicesAware.html">RuntimeServicesAware</a>) eh).setRuntimeServices ( rs );
<a name="314" href="#314">314</a>                 initializedHandlers.add( eh );
<a name="315" href="#315">315</a>             }
<a name="316" href="#316">316</a>         }
<a name="317" href="#317">317</a> 
<a name="318" href="#318">318</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = methodExceptionHandlers.iterator(); i.hasNext(); )
<a name="319" href="#319">319</a>         {
<a name="320" href="#320">320</a>             <a href="../../../../../org/apache/velocity/app/event/EventHandler.html">EventHandler</a> eh = ( EventHandler ) i.next();
<a name="321" href="#321">321</a>             <strong class="jxr_keyword">if</strong> ( (eh instanceof RuntimeServicesAware) &amp;&amp;
<a name="322" href="#322">322</a>                     !initializedHandlers.contains(eh) )
<a name="323" href="#323">323</a>             {
<a name="324" href="#324">324</a>                 ((<a href="../../../../../org/apache/velocity/util/RuntimeServicesAware.html">RuntimeServicesAware</a>) eh).setRuntimeServices ( rs );
<a name="325" href="#325">325</a>                 initializedHandlers.add( eh );
<a name="326" href="#326">326</a>             }
<a name="327" href="#327">327</a>         }
<a name="328" href="#328">328</a> 
<a name="329" href="#329">329</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = includeHandlers.iterator(); i.hasNext(); )
<a name="330" href="#330">330</a>         {
<a name="331" href="#331">331</a>             <a href="../../../../../org/apache/velocity/app/event/EventHandler.html">EventHandler</a> eh = ( EventHandler ) i.next();
<a name="332" href="#332">332</a>             <strong class="jxr_keyword">if</strong> ( (eh instanceof RuntimeServicesAware) &amp;&amp;
<a name="333" href="#333">333</a>                     !initializedHandlers.contains(eh) )
<a name="334" href="#334">334</a>             {
<a name="335" href="#335">335</a>                 ((<a href="../../../../../org/apache/velocity/util/RuntimeServicesAware.html">RuntimeServicesAware</a>) eh).setRuntimeServices ( rs );
<a name="336" href="#336">336</a>                 initializedHandlers.add( eh );
<a name="337" href="#337">337</a>             }
<a name="338" href="#338">338</a>         }
<a name="339" href="#339">339</a> 
<a name="340" href="#340">340</a>         <strong class="jxr_keyword">for</strong> ( Iterator i = invalidReferenceHandlers.iterator(); i.hasNext(); )
<a name="341" href="#341">341</a>         {
<a name="342" href="#342">342</a>             <a href="../../../../../org/apache/velocity/app/event/EventHandler.html">EventHandler</a> eh = ( EventHandler ) i.next();
<a name="343" href="#343">343</a>             <strong class="jxr_keyword">if</strong> ( (eh instanceof RuntimeServicesAware) &amp;&amp;
<a name="344" href="#344">344</a>                     !initializedHandlers.contains(eh) )
<a name="345" href="#345">345</a>             {
<a name="346" href="#346">346</a>                 ((<a href="../../../../../org/apache/velocity/util/RuntimeServicesAware.html">RuntimeServicesAware</a>) eh).setRuntimeServices ( rs );
<a name="347" href="#347">347</a>                 initializedHandlers.add( eh );
<a name="348" href="#348">348</a>             }
<a name="349" href="#349">349</a>         }
<a name="350" href="#350">350</a> 
<a name="351" href="#351">351</a>     }
<a name="352" href="#352">352</a> 
<a name="353" href="#353">353</a> 
<a name="354" href="#354">354</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

