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

<a name="1" href="#1">1</a>   <em class="comment">/*</em>
<a name="2" href="#2">2</a>   <em class="comment"> * Copyright 2004,2005 The Apache Software Foundation.</em>
<a name="3" href="#3">3</a>   <em class="comment"> *</em>
<a name="4" href="#4">4</a>   <em class="comment"> * Licensed under the Apache License, Version 2.0 (the "License");</em>
<a name="5" href="#5">5</a>   <em class="comment"> * you may not use this file except in compliance with the License.</em>
<a name="6" href="#6">6</a>   <em class="comment"> * You may obtain a copy of the License at</em>
<a name="7" href="#7">7</a>   <em class="comment"> *</em>
<a name="8" href="#8">8</a>   <em class="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="9" href="#9">9</a>   <em class="comment"> *</em>
<a name="10" href="#10">10</a>  <em class="comment"> * Unless required by applicable law or agreed to in writing, software</em>
<a name="11" href="#11">11</a>  <em class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a name="12" href="#12">12</a>  <em class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a name="13" href="#13">13</a>  <em class="comment"> * See the License for the specific language governing permissions and</em>
<a name="14" href="#14">14</a>  <em class="comment"> * limitations under the License.</em>
<a name="15" href="#15">15</a>  <em class="comment"> */</em>
<a name="16" href="#16">16</a>  
<a name="17" href="#17">17</a>  <strong>package</strong> org.apache.savan.eventing.subscribers;
<a name="18" href="#18">18</a>  
<a name="19" href="#19">19</a>  <strong>import</strong> org.apache.axis2.addressing.EndpointReference;
<a name="20" href="#20">20</a>  <strong>import</strong> org.apache.savan.eventing.Delivery;
<a name="21" href="#21">21</a>  <strong>import</strong> org.apache.savan.subscribers.CompositeSubscriber;
<a name="22" href="#22">22</a>  
<a name="23" href="#23">23</a>  <strong>public</strong> <strong>class</strong> <a href="../../../../../org/apache/savan/eventing/subscribers/EventingTopicSubscriber.html">EventingTopicSubscriber</a> <strong>extends</strong> <a href="../../../../../org/apache/savan/subscribers/CompositeSubscriber.html">CompositeSubscriber</a> implements <a href="../../../../../org/apache/savan/eventing/subscribers/EventingSubscriber.html">EventingSubscriber</a> {
<a name="24" href="#24">24</a>  	
<a name="25" href="#25">25</a>  	<strong>private</strong> EndpointReference endToEPr;
<a name="26" href="#26">26</a>  	
<a name="27" href="#27">27</a>  	<strong>private</strong> <a href="../../../../../org/apache/savan/eventing/Delivery.html">Delivery</a> delivery;
<a name="28" href="#28">28</a>  	
<a name="29" href="#29">29</a>  	<strong>public</strong> <a href="../../../../../org/apache/savan/eventing/Delivery.html">Delivery</a> getDelivery() {
<a name="30" href="#30">30</a>  		<strong>return</strong> delivery;
<a name="31" href="#31">31</a>  	}
<a name="32" href="#32">32</a>  
<a name="33" href="#33">33</a>  	<strong>public</strong> EndpointReference getEndToEPr() {
<a name="34" href="#34">34</a>  		<strong>return</strong> endToEPr;
<a name="35" href="#35">35</a>  	}
<a name="36" href="#36">36</a>  
<a name="37" href="#37">37</a>  	<strong>public</strong> <strong>void</strong> setDelivery(<a href="../../../../../org/apache/savan/eventing/Delivery.html">Delivery</a> delivery) {
<a name="38" href="#38">38</a>  		<strong>this</strong>.delivery = delivery;
<a name="39" href="#39">39</a>  	}
<a name="40" href="#40">40</a>  
<a name="41" href="#41">41</a>  	<strong>public</strong> <strong>void</strong> setEndToEPr(EndpointReference errorReportingEPR) {
<a name="42" href="#42">42</a>  		<strong>this</strong>.endToEPr = errorReportingEPR;
<a name="43" href="#43">43</a>  	}
<a name="44" href="#44">44</a>  	
<a name="45" href="#45">45</a>  	
<a name="46" href="#46">46</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

