<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>EventSource (Apache CXF JavaDoc 3.1.0 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="EventSource (Apache CXF JavaDoc 3.1.0 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventSource.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Apache CXF API</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/cxf/ws/eventing/EventSource.html" target="_top">Frames</a></li>
<li><a href="EventSource.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.cxf.ws.eventing</div>
<h2 title="Class EventSource" class="title">Class EventSource</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.cxf.ws.eventing.EventSource</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">EventSource</span>
extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block"><p>Java class for anonymous complex type.
 
 <p>The following schema fragment specifies the expected content contained within this class.
 
 <pre>
 &lt;complexType>
   &lt;complexContent>
     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
       &lt;sequence>
         &lt;element name="FilterDialect" maxOccurs="unbounded" minOccurs="0">
           &lt;complexType>
             &lt;complexContent>
               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
                 &lt;sequence>
                   &lt;any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
                 &lt;/sequence>
                 &lt;attribute name="URI" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
                 &lt;anyAttribute processContents='lax' namespace='##other'/>
               &lt;/restriction>
             &lt;/complexContent>
           &lt;/complexType>
         &lt;/element>
         &lt;element name="FormatName" maxOccurs="unbounded" minOccurs="0">
           &lt;complexType>
             &lt;complexContent>
               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
                 &lt;sequence>
                   &lt;any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
                 &lt;/sequence>
                 &lt;attribute name="URI" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
                 &lt;anyAttribute processContents='lax' namespace='##other'/>
               &lt;/restriction>
             &lt;/complexContent>
           &lt;/complexType>
         &lt;/element>
         &lt;element name="DateTimeSupported" type="{http://www.w3.org/2011/03/ws-evt}Empty" minOccurs="0"/>
         &lt;element name="Expires" minOccurs="0">
           &lt;complexType>
             &lt;complexContent>
               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
                 &lt;attribute name="min" type="{http://www.w3.org/2001/XMLSchema}duration" />
                 &lt;attribute name="max" type="{http://www.w3.org/2001/XMLSchema}duration" />
               &lt;/restriction>
             &lt;/complexContent>
           &lt;/complexType>
         &lt;/element>
         &lt;element name="EndToSupported" type="{http://www.w3.org/2011/03/ws-evt}Empty" minOccurs="0"/>
         &lt;element name="NotificationPolicy" type="{http://www.w3.org/2011/03/ws-evt}NotificationPolicy" minOccurs="0"/>
         &lt;any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
       &lt;/sequence>
       &lt;anyAttribute processContents='lax' namespace='##other'/>
     &lt;/restriction>
   &lt;/complexContent>
 &lt;/complexType>
 </pre></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a></strong></code>
<div class="block">Java class for anonymous complex type.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing">EventSource.FilterDialect</a></strong></code>
<div class="block">Java class for anonymous complex type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing">EventSource.FormatName</a></strong></code>
<div class="block">Java class for anonymous complex type.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#any">any</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#dateTimeSupported">dateTimeSupported</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#endToSupported">endToSupported</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#expires">expires</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing">EventSource.FilterDialect</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#filterDialect">filterDialect</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing">EventSource.FormatName</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#formatName">formatName</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#notificationPolicy">notificationPolicy</a></strong></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#EventSource()">EventSource</a></strong>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getAny()">getAny</a></strong>()</code>
<div class="block">Gets the value of the any property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getDateTimeSupported()">getDateTimeSupported</a></strong>()</code>
<div class="block">Gets the value of the dateTimeSupported property.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getEndToSupported()">getEndToSupported</a></strong>()</code>
<div class="block">Gets the value of the endToSupported property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getExpires()">getExpires</a></strong>()</code>
<div class="block">Gets the value of the expires property.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing">EventSource.FilterDialect</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getFilterDialect()">getFilterDialect</a></strong>()</code>
<div class="block">Gets the value of the filterDialect property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing">EventSource.FormatName</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getFormatName()">getFormatName</a></strong>()</code>
<div class="block">Gets the value of the formatName property.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getNotificationPolicy()">getNotificationPolicy</a></strong>()</code>
<div class="block">Gets the value of the notificationPolicy property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#getOtherAttributes()">getOtherAttributes</a></strong>()</code>
<div class="block">Gets a map that contains attributes that aren't bound to any typed property on this class.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#setDateTimeSupported(org.apache.cxf.ws.eventing.Empty)">setDateTimeSupported</a></strong>(<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;value)</code>
<div class="block">Sets the value of the dateTimeSupported property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#setEndToSupported(org.apache.cxf.ws.eventing.Empty)">setEndToSupported</a></strong>(<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;value)</code>
<div class="block">Sets the value of the endToSupported property.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#setExpires(org.apache.cxf.ws.eventing.EventSource.Expires)">setExpires</a></strong>(<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a>&nbsp;value)</code>
<div class="block">Sets the value of the expires property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.html#setNotificationPolicy(org.apache.cxf.ws.eventing.NotificationPolicy)">setNotificationPolicy</a></strong>(<a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a>&nbsp;value)</code>
<div class="block">Sets the value of the notificationPolicy property.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="filterDialect">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filterDialect</h4>
<pre>protected&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing">EventSource.FilterDialect</a>&gt; filterDialect</pre>
</li>
</ul>
<a name="formatName">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>formatName</h4>
<pre>protected&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing">EventSource.FormatName</a>&gt; formatName</pre>
</li>
</ul>
<a name="dateTimeSupported">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dateTimeSupported</h4>
<pre>protected&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a> dateTimeSupported</pre>
</li>
</ul>
<a name="expires">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expires</h4>
<pre>protected&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a> expires</pre>
</li>
</ul>
<a name="endToSupported">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>endToSupported</h4>
<pre>protected&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a> endToSupported</pre>
</li>
</ul>
<a name="notificationPolicy">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notificationPolicy</h4>
<pre>protected&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a> notificationPolicy</pre>
</li>
</ul>
<a name="any">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>any</h4>
<pre>protected&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt; any</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="EventSource()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>EventSource</h4>
<pre>public&nbsp;EventSource()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getFilterDialect()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFilterDialect</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing">EventSource.FilterDialect</a>&gt;&nbsp;getFilterDialect()</pre>
<div class="block">Gets the value of the filterDialect property.
 
 <p>
 This accessor method returns a reference to the live list,
 not a snapshot. Therefore any modification you make to the
 returned list will be present inside the JAXB object.
 This is why there is not a <CODE>set</CODE> method for the filterDialect property.
 
 <p>
 For example, to add a new item, do as follows:
 <pre>
    getFilterDialect().add(newItem);
 </pre>
 
 
 <p>
 Objects of the following type(s) are allowed in the list
 <a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FilterDialect.html" title="class in org.apache.cxf.ws.eventing"><code>EventSource.FilterDialect</code></a></div>
</li>
</ul>
<a name="getFormatName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFormatName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing">EventSource.FormatName</a>&gt;&nbsp;getFormatName()</pre>
<div class="block">Gets the value of the formatName property.
 
 <p>
 This accessor method returns a reference to the live list,
 not a snapshot. Therefore any modification you make to the
 returned list will be present inside the JAXB object.
 This is why there is not a <CODE>set</CODE> method for the formatName property.
 
 <p>
 For example, to add a new item, do as follows:
 <pre>
    getFormatName().add(newItem);
 </pre>
 
 
 <p>
 Objects of the following type(s) are allowed in the list
 <a href="../../../../../org/apache/cxf/ws/eventing/EventSource.FormatName.html" title="class in org.apache.cxf.ws.eventing"><code>EventSource.FormatName</code></a></div>
</li>
</ul>
<a name="getDateTimeSupported()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDateTimeSupported</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;getDateTimeSupported()</pre>
<div class="block">Gets the value of the dateTimeSupported property.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>possible object is
     <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><code>Empty</code></a></dd></dl>
</li>
</ul>
<a name="setDateTimeSupported(org.apache.cxf.ws.eventing.Empty)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDateTimeSupported</h4>
<pre>public&nbsp;void&nbsp;setDateTimeSupported(<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;value)</pre>
<div class="block">Sets the value of the dateTimeSupported property.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - allowed object is
     <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><code>Empty</code></a></dd></dl>
</li>
</ul>
<a name="getExpires()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExpires</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a>&nbsp;getExpires()</pre>
<div class="block">Gets the value of the expires property.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>possible object is
     <a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing"><code>EventSource.Expires</code></a></dd></dl>
</li>
</ul>
<a name="setExpires(org.apache.cxf.ws.eventing.EventSource.Expires)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExpires</h4>
<pre>public&nbsp;void&nbsp;setExpires(<a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing">EventSource.Expires</a>&nbsp;value)</pre>
<div class="block">Sets the value of the expires property.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - allowed object is
     <a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing"><code>EventSource.Expires</code></a></dd></dl>
</li>
</ul>
<a name="getEndToSupported()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEndToSupported</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;getEndToSupported()</pre>
<div class="block">Gets the value of the endToSupported property.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>possible object is
     <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><code>Empty</code></a></dd></dl>
</li>
</ul>
<a name="setEndToSupported(org.apache.cxf.ws.eventing.Empty)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEndToSupported</h4>
<pre>public&nbsp;void&nbsp;setEndToSupported(<a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing">Empty</a>&nbsp;value)</pre>
<div class="block">Sets the value of the endToSupported property.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - allowed object is
     <a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><code>Empty</code></a></dd></dl>
</li>
</ul>
<a name="getNotificationPolicy()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNotificationPolicy</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a>&nbsp;getNotificationPolicy()</pre>
<div class="block">Gets the value of the notificationPolicy property.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>possible object is
     <a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing"><code>NotificationPolicy</code></a></dd></dl>
</li>
</ul>
<a name="setNotificationPolicy(org.apache.cxf.ws.eventing.NotificationPolicy)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNotificationPolicy</h4>
<pre>public&nbsp;void&nbsp;setNotificationPolicy(<a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing">NotificationPolicy</a>&nbsp;value)</pre>
<div class="block">Sets the value of the notificationPolicy property.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - allowed object is
     <a href="../../../../../org/apache/cxf/ws/eventing/NotificationPolicy.html" title="class in org.apache.cxf.ws.eventing"><code>NotificationPolicy</code></a></dd></dl>
</li>
</ul>
<a name="getAny()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAny</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;getAny()</pre>
<div class="block">Gets the value of the any property.
 
 <p>
 This accessor method returns a reference to the live list,
 not a snapshot. Therefore any modification you make to the
 returned list will be present inside the JAXB object.
 This is why there is not a <CODE>set</CODE> method for the any property.
 
 <p>
 For example, to add a new item, do as follows:
 <pre>
    getAny().add(newItem);
 </pre>
 
 
 <p>
 Objects of the following type(s) are allowed in the list
 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang"><code>Object</code></a>
 <a href="http://docs.oracle.com/javase/7/docs/api/org/w3c/dom/Element.html?is-external=true" title="class or interface in org.w3c.dom"><code>Element</code></a></div>
</li>
</ul>
<a name="getOtherAttributes()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getOtherAttributes</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/javax/xml/namespace/QName.html?is-external=true" title="class or interface in javax.xml.namespace">QName</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getOtherAttributes()</pre>
<div class="block">Gets a map that contains attributes that aren't bound to any typed property on this class.
 
 <p>
 the map is keyed by the name of the attribute and 
 the value is the string value of the attribute.
 
 the map returned by this method is live, and you can add new attribute
 by updating the map directly. Because of this design, there's no setter.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>always non-null</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventSource.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Apache CXF API</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/cxf/ws/eventing/Empty.html" title="class in org.apache.cxf.ws.eventing"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/cxf/ws/eventing/EventSource.Expires.html" title="class in org.apache.cxf.ws.eventing"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/cxf/ws/eventing/EventSource.html" target="_top">Frames</a></li>
<li><a href="EventSource.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Apache CXF</small></p>
</body>
</html>
