<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
MockInvalidRepositoryContentConsumer (Archiva :: Modules 1.4-M4 API)
</TITLE>


<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="MockInvalidRepositoryContentConsumer (Archiva :: Modules 1.4-M4 API)";
    }
}
</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/MockInvalidRepositoryContentConsumer.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-all.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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="MockInvalidRepositoryContentConsumer.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;FIELD&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;FIELD&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.apache.archiva.web.mocks</FONT>
<BR>
Class MockInvalidRepositoryContentConsumer</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.archiva.web.mocks.MockInvalidRepositoryContentConsumer</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A>, <A HREF="../../../../../org/apache/archiva/consumers/InvalidRepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">InvalidRepositoryContentConsumer</A>, <A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></DD>
</DL>
<HR>
<DL>
<DT><PRE><FONT SIZE="-1">@Service(value="InvalidRepositoryContentConsumer#mock")
</FONT>public class <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.34"><B>MockInvalidRepositoryContentConsumer</B></A><DT>extends <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A><DT>implements <A HREF="../../../../../org/apache/archiva/consumers/InvalidRepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">InvalidRepositoryContentConsumer</A></DL>
</PRE>

<P>
<DL>
<DT><B>Author:</B></DT>
  <DD>Olivier Lamy</DD>
</DL>
<HR>

<P>

<!-- ======== 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><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#MockInvalidRepositoryContentConsumer()">MockInvalidRepositoryContentConsumer</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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#addConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">addConsumerMonitor</A></B>(<A HREF="../../../../../org/apache/archiva/consumers/ConsumerMonitor.html" title="interface in org.apache.archiva.consumers">ConsumerMonitor</A>&nbsp;monitor)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add a consumer monitor to the consumer.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date)">beginScan</A></B>(<A HREF="../../../../../org/apache/archiva/admin/model/beans/ManagedRepository.html" title="class in org.apache.archiva.admin.model.beans">ManagedRepository</A>&nbsp;repository,
                   <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;whenGathered)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Event that triggers at the beginning of a scan.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date, boolean)">beginScan</A></B>(<A HREF="../../../../../org/apache/archiva/admin/model/beans/ManagedRepository.html" title="class in org.apache.archiva.admin.model.beans">ManagedRepository</A>&nbsp;repository,
                   <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;whenGathered,
                   boolean&nbsp;executeOnEntireRepo)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Event that triggers at the beginning of a scan, where you can also indicate whether the consumers will be
 executed on an entire repository or on a specific resource.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#completeScan()">completeScan</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Event that triggers on the completion of a scan.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#completeScan(boolean)">completeScan</A></B>(boolean&nbsp;executeOnEntireRepo)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#getDescription()">getDescription</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The human readable description for this consumer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#getExcludes()">getExcludes</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the list of excluded file patterns for this consumer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#getId()">getId</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This is the id for the consumer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#getIncludes()">getIncludes</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the list of included file patterns for this consumer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#isPermanent()">isPermanent</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Flag indicating permanance of consumer.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#isProcessUnmodified()">isProcessUnmodified</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether the consumer should process files that have not been modified since the time passed in to the scan
 method.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#processFile(java.lang.String)">processFile</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 Event indicating a file is to be processed by this consumer.</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#processFile(java.lang.String, boolean)">processFile</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path,
                       boolean&nbsp;executeOnEntireRepo)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#removeConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">removeConsumerMonitor</A></B>(<A HREF="../../../../../org/apache/archiva/consumers/ConsumerMonitor.html" title="interface in org.apache.archiva.consumers">ConsumerMonitor</A>&nbsp;monitor)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove a consumer monitor.</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.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.5.0/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://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= 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="MockInvalidRepositoryContentConsumer()"><!-- --></A><H3>
MockInvalidRepositoryContentConsumer</H3>
<PRE>
public <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.34"><B>MockInvalidRepositoryContentConsumer</B></A>()</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="getId()"><!-- --></A><H3>
getId</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.37"><B>getId</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#getId()">Consumer</A></CODE></B></DD>
<DD>This is the id for the consumer.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#getId()">getId</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the consumer id.</DL>
</DD>
</DL>
<HR>

<A NAME="getDescription()"><!-- --></A><H3>
getDescription</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.42"><B>getDescription</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#getDescription()">Consumer</A></CODE></B></DD>
<DD>The human readable description for this consumer.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#getDescription()">getDescription</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the human readable description for this consumer.</DL>
</DD>
</DL>
<HR>

<A NAME="isPermanent()"><!-- --></A><H3>
isPermanent</H3>
<PRE>
public boolean <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.47"><B>isPermanent</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#isPermanent()">Consumer</A></CODE></B></DD>
<DD>Flag indicating permanance of consumer. (if it can be disabled or not)
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#isPermanent()">isPermanent</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>true indicating that consumer is permanent and cannot be disabled.</DL>
</DD>
</DL>
<HR>

<A NAME="addConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)"><!-- --></A><H3>
addConsumerMonitor</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.52"><B>addConsumerMonitor</B></A>(<A HREF="../../../../../org/apache/archiva/consumers/ConsumerMonitor.html" title="interface in org.apache.archiva.consumers">ConsumerMonitor</A>&nbsp;monitor)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#addConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">Consumer</A></CODE></B></DD>
<DD>Add a consumer monitor to the consumer.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#addConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">addConsumerMonitor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>monitor</CODE> - the monitor to add.</DL>
</DD>
</DL>
<HR>

<A NAME="removeConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)"><!-- --></A><H3>
removeConsumerMonitor</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.57"><B>removeConsumerMonitor</B></A>(<A HREF="../../../../../org/apache/archiva/consumers/ConsumerMonitor.html" title="interface in org.apache.archiva.consumers">ConsumerMonitor</A>&nbsp;monitor)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#removeConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">Consumer</A></CODE></B></DD>
<DD>Remove a consumer monitor.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html#removeConsumerMonitor(org.apache.archiva.consumers.ConsumerMonitor)">removeConsumerMonitor</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/Consumer.html" title="interface in org.apache.archiva.consumers">Consumer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>monitor</CODE> - the monitor to remove.</DL>
</DD>
</DL>
<HR>

<A NAME="getIncludes()"><!-- --></A><H3>
getIncludes</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&gt; <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.62"><B>getIncludes</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#getIncludes()">RepositoryContentConsumer</A></CODE></B></DD>
<DD>Get the list of included file patterns for this consumer.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#getIncludes()">getIncludes</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the list of <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A> patterns. (example: <code>"**<span />/*.pom"</code>)</DL>
</DD>
</DL>
<HR>

<A NAME="getExcludes()"><!-- --></A><H3>
getExcludes</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&gt; <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.67"><B>getExcludes</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#getExcludes()">RepositoryContentConsumer</A></CODE></B></DD>
<DD>Get the list of excluded file patterns for this consumer.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#getExcludes()">getExcludes</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the list of <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><CODE>String</CODE></A> patterns. (example: <code>"**<span />/*.pom"</code>) - (can be null for no exclusions)</DL>
</DD>
</DL>
<HR>

<A NAME="beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date)"><!-- --></A><H3>
beginScan</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.72"><B>beginScan</B></A>(<A HREF="../../../../../org/apache/archiva/admin/model/beans/ManagedRepository.html" title="class in org.apache.archiva.admin.model.beans">ManagedRepository</A>&nbsp;repository,
                      <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;whenGathered)
               throws <A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date)">RepositoryContentConsumer</A></CODE></B></DD>
<DD><p>
 Event that triggers at the beginning of a scan.
 </p>
 <p/>
 <p>
 NOTE: This would be a good place to initialize the consumer, to lock any resources, and to
 generally start tracking the scan as a whole.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date)">beginScan</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>repository</CODE> - the repository that this consumer is being used for.<DD><CODE>whenGathered</CODE> - the start of the repository scan
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></CODE> - if there was a problem with using the provided repository with the consumer.</DL>
</DD>
</DL>
<HR>

<A NAME="beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date, boolean)"><!-- --></A><H3>
beginScan</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.78"><B>beginScan</B></A>(<A HREF="../../../../../org/apache/archiva/admin/model/beans/ManagedRepository.html" title="class in org.apache.archiva.admin.model.beans">ManagedRepository</A>&nbsp;repository,
                      <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util">Date</A>&nbsp;whenGathered,
                      boolean&nbsp;executeOnEntireRepo)
               throws <A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date, boolean)">RepositoryContentConsumer</A></CODE></B></DD>
<DD><p>
 Event that triggers at the beginning of a scan, where you can also indicate whether the consumers will be
 executed on an entire repository or on a specific resource.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date, boolean)">beginScan</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>repository</CODE> - the repository that this consumer is being used for.<DD><CODE>whenGathered</CODE> - the start of the repository scan<DD><CODE>executeOnEntireRepo</CODE> - flags whether the consumer will be executed on an entire repository or just on a specific resource
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></CODE> - if there was a problem with using the provided repository with the consumer.<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#beginScan(org.apache.archiva.admin.model.beans.ManagedRepository, java.util.Date)"><CODE>RepositoryContentConsumer.beginScan(ManagedRepository, java.util.Date)</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="processFile(java.lang.String)"><!-- --></A><H3>
processFile</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.84"><B>processFile</B></A>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path)
                 throws <A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#processFile(java.lang.String)">RepositoryContentConsumer</A></CODE></B></DD>
<DD><p>
 Event indicating a file is to be processed by this consumer.
 </p>
 <p/>
 <p>
 NOTE: The consumer does not need to process the file immediately, can can opt to queue and/or track
 the files to be processed in batch.  Just be sure to complete the processing by the <A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#completeScan()"><CODE>RepositoryContentConsumer.completeScan()</CODE></A>
 event.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#processFile(java.lang.String)">processFile</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>path</CODE> - the relative file path (in the repository) to process.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/ConsumerException.html" title="class in org.apache.archiva.consumers">ConsumerException</A></CODE> - if there was a problem processing this file.</DL>
</DD>
</DL>
<HR>

<A NAME="processFile(java.lang.String, boolean)"><!-- --></A><H3>
processFile</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.90"><B>processFile</B></A>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path,
                        boolean&nbsp;executeOnEntireRepo)
                 throws <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#processFile(java.lang.String, boolean)">processFile</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="completeScan()"><!-- --></A><H3>
completeScan</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.96"><B>completeScan</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#completeScan()">RepositoryContentConsumer</A></CODE></B></DD>
<DD><p>
 Event that triggers on the completion of a scan.
 </p>
 <p/>
 <p>
 NOTE: If the consumer opted to batch up processing requests in the <A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#processFile(java.lang.String)"><CODE>RepositoryContentConsumer.processFile(String)</CODE></A> event
 this would be the last opportunity to drain any processing queue's.
 </p>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#completeScan()">completeScan</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="completeScan(boolean)"><!-- --></A><H3>
completeScan</H3>
<PRE>
public void <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.101"><B>completeScan</B></A>(boolean&nbsp;executeOnEntireRepo)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#completeScan(boolean)">completeScan</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isProcessUnmodified()"><!-- --></A><H3>
isProcessUnmodified</H3>
<PRE>
public boolean <A HREF="../../../../../src-html/org/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html#line.106"><B>isProcessUnmodified</B></A>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#isProcessUnmodified()">RepositoryContentConsumer</A></CODE></B></DD>
<DD>Whether the consumer should process files that have not been modified since the time passed in to the scan
 method.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html#isProcessUnmodified()">isProcessUnmodified</A></CODE> in interface <CODE><A HREF="../../../../../org/apache/archiva/consumers/RepositoryContentConsumer.html" title="interface in org.apache.archiva.consumers">RepositoryContentConsumer</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>whether to process the unmodified files</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/MockInvalidRepositoryContentConsumer.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-all.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/apache/archiva/web/mocks/MockInvalidRepositoryContentConsumer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="MockInvalidRepositoryContentConsumer.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;FIELD&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;FIELD&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>
Copyright &#169; 2006-2013 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>