<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_14) on Wed Apr 07 07:46:21 BST 2010 -->
<TITLE>
AbstractAnnotationProcessor
</TITLE>

<META NAME="date" CONTENT="2010-04-07">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="AbstractAnnotationProcessor";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbstractAnnotationProcessor.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../../index.html?org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractAnnotationProcessor.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.eclipse.jst.ws.annotations.core.processor</FONT>
<BR>
Class AbstractAnnotationProcessor</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.jst.ws.annotations.core.processor.AbstractAnnotationProcessor</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>com.sun.mirror.apt.AnnotationProcessor</DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>AbstractAnnotationProcessor</B><DT>extends java.lang.Object<DT>implements com.sun.mirror.apt.AnnotationProcessor</DL>
</PRE>

<P>
Abstract base class for processors contributed to the
 <code>org.eclipse.jst.ws.annotations.core.annotationProcessor</code> extension point.

 <p>
 <strong>Provisional API:</strong> This class/interface is part of an interim API that is still under
 development and expected to change significantly before reaching stability. It is being made available at
 this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses
 this API will almost certainly be broken (repeatedly) as the API evolves.
 </p>
<P>

<P>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;com.sun.mirror.apt.AnnotationProcessorEnvironment</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#environment">environment</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#AbstractAnnotationProcessor()">AbstractAnnotationProcessor</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printError(com.sun.mirror.util.SourcePosition, java.lang.String)">printError</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
           java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints an error message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printError(java.lang.String)">printError</A></B>(java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints an error message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableError(com.sun.mirror.util.SourcePosition, java.lang.String)">printFixableError</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                  java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print an error including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableError(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)">printFixableError</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                  java.lang.String&nbsp;message,
                  java.lang.String&nbsp;pluginId,
                  java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print an error including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableError(java.lang.String, java.lang.String, java.lang.String)">printFixableError</A></B>(java.lang.String&nbsp;message,
                  java.lang.String&nbsp;pluginId,
                  java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print an error including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableNotice(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)">printFixableNotice</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                   java.lang.String&nbsp;message,
                   java.lang.String&nbsp;pluginId,
                   java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a notice including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableNotice(java.lang.String, java.lang.String, java.lang.String)">printFixableNotice</A></B>(java.lang.String&nbsp;message,
                   java.lang.String&nbsp;pluginId,
                   java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a notice including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableWarning(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)">printFixableWarning</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                    java.lang.String&nbsp;message,
                    java.lang.String&nbsp;pluginId,
                    java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a warning including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printFixableWarning(java.lang.String, java.lang.String, java.lang.String)">printFixableWarning</A></B>(java.lang.String&nbsp;message,
                    java.lang.String&nbsp;pluginId,
                    java.lang.String&nbsp;errorId)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Print a warning including the given arguments for use in quick-fixes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printNotice(com.sun.mirror.util.SourcePosition, java.lang.String)">printNotice</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
            java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints a notice.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printNotice(java.lang.String)">printNotice</A></B>(java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints a notice.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printWarning(com.sun.mirror.util.SourcePosition, java.lang.String)">printWarning</A></B>(com.sun.mirror.util.SourcePosition&nbsp;position,
             java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints a warning message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#printWarning(java.lang.String)">printWarning</A></B>(java.lang.String&nbsp;message)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints a warning message.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#process()">process</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process all program elements supported by this annotation processor.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../../org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html#setAnnotationProcessorEnvironment(com.sun.mirror.apt.AnnotationProcessorEnvironment)">setAnnotationProcessorEnvironment</A></B>(com.sun.mirror.apt.AnnotationProcessorEnvironment&nbsp;environment)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the <CODE>AnnotationProcessorEnvironment</CODE> environment to use during processing.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="environment"><!-- --></A><H3>
environment</H3>
<PRE>
protected com.sun.mirror.apt.AnnotationProcessorEnvironment <B>environment</B></PRE>
<DL>
<DL>
</DL>
</DL>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="AbstractAnnotationProcessor()"><!-- --></A><H3>
AbstractAnnotationProcessor</H3>
<PRE>
protected <B>AbstractAnnotationProcessor</B>()</PRE>
<DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="setAnnotationProcessorEnvironment(com.sun.mirror.apt.AnnotationProcessorEnvironment)"><!-- --></A><H3>
setAnnotationProcessorEnvironment</H3>
<PRE>
public void <B>setAnnotationProcessorEnvironment</B>(com.sun.mirror.apt.AnnotationProcessorEnvironment&nbsp;environment)</PRE>
<DL>
<DD>Set the <CODE>AnnotationProcessorEnvironment</CODE> environment to use during processing.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>environment</CODE> - the annotation processor environment.</DL>
</DD>
</DL>
<HR>

<A NAME="process()"><!-- --></A><H3>
process</H3>
<PRE>
public abstract void <B>process</B>()</PRE>
<DL>
<DD>Process all program elements supported by this annotation processor.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE>process</CODE> in interface <CODE>com.sun.mirror.apt.AnnotationProcessor</CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><CODE>AnnotationProcessor</CODE></DL>
</DD>
</DL>
<HR>

<A NAME="printError(com.sun.mirror.util.SourcePosition, java.lang.String)"><!-- --></A><H3>
printError</H3>
<PRE>
protected void <B>printError</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                          java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints an error message.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - the position where the error occured, or null if it is unknown or not applicable<DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printError(java.lang.String)"><!-- --></A><H3>
printError</H3>
<PRE>
protected void <B>printError</B>(java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints an error message.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printWarning(com.sun.mirror.util.SourcePosition, java.lang.String)"><!-- --></A><H3>
printWarning</H3>
<PRE>
protected void <B>printWarning</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                            java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints a warning message.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - the position where the warning occured, or null if it is unknown or not applicable<DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printWarning(java.lang.String)"><!-- --></A><H3>
printWarning</H3>
<PRE>
protected void <B>printWarning</B>(java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints a warning message.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printNotice(com.sun.mirror.util.SourcePosition, java.lang.String)"><!-- --></A><H3>
printNotice</H3>
<PRE>
protected void <B>printNotice</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                           java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints a notice.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - the position where the notice occured, or null if it is unknown or not applicable<DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printNotice(java.lang.String)"><!-- --></A><H3>
printNotice</H3>
<PRE>
protected void <B>printNotice</B>(java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Prints a notice.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - the message, or an empty string if none</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableError(com.sun.mirror.util.SourcePosition, java.lang.String)"><!-- --></A><H3>
printFixableError</H3>
<PRE>
protected void <B>printFixableError</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                                 java.lang.String&nbsp;message)</PRE>
<DL>
<DD>Print an error including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - position of the error<DD><CODE>message</CODE> - message to display to the user</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableError(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableError</H3>
<PRE>
protected void <B>printFixableError</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                                 java.lang.String&nbsp;message,
                                 java.lang.String&nbsp;pluginId,
                                 java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print an error including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - position of the error<DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableError(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableError</H3>
<PRE>
protected void <B>printFixableError</B>(java.lang.String&nbsp;message,
                                 java.lang.String&nbsp;pluginId,
                                 java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print an error including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableWarning(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableWarning</H3>
<PRE>
protected void <B>printFixableWarning</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                                   java.lang.String&nbsp;message,
                                   java.lang.String&nbsp;pluginId,
                                   java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print a warning including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - position of the warning<DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableWarning(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableWarning</H3>
<PRE>
protected void <B>printFixableWarning</B>(java.lang.String&nbsp;message,
                                   java.lang.String&nbsp;pluginId,
                                   java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print a warning including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableNotice(com.sun.mirror.util.SourcePosition, java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableNotice</H3>
<PRE>
protected void <B>printFixableNotice</B>(com.sun.mirror.util.SourcePosition&nbsp;position,
                                  java.lang.String&nbsp;message,
                                  java.lang.String&nbsp;pluginId,
                                  java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print a notice including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>position</CODE> - position of the notice<DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<HR>

<A NAME="printFixableNotice(java.lang.String, java.lang.String, java.lang.String)"><!-- --></A><H3>
printFixableNotice</H3>
<PRE>
protected void <B>printFixableNotice</B>(java.lang.String&nbsp;message,
                                  java.lang.String&nbsp;pluginId,
                                  java.lang.String&nbsp;errorId)</PRE>
<DL>
<DD>Print a notice including the given arguments for use in quick-fixes.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>message</CODE> - message to display to the user<DD><CODE>pluginId</CODE> - plug-in which will provide a java quick fix processor for this error. Cannot be null.<DD><CODE>errorId</CODE> - a plug-in provided error code which will be meaningful to the java quick fix processor. Cannot be null.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/AbstractAnnotationProcessor.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../../index.html?org/eclipse/jst/ws/annotations/core/processor/AbstractAnnotationProcessor.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="AbstractAnnotationProcessor.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
