<!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>
ManagedRepositoryConfiguration (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="ManagedRepositoryConfiguration (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/ManagedRepositoryConfiguration.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;<A HREF="../../../../org/apache/archiva/configuration/LegacyArtifactPath.html" title="class in org.apache.archiva.configuration"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/archiva/configuration/MavenProxyPropertyLoader.html" title="class in org.apache.archiva.configuration"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/archiva/configuration/ManagedRepositoryConfiguration.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ManagedRepositoryConfiguration.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.apache.archiva.configuration</FONT>
<BR>
Class ManagedRepositoryConfiguration</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 "><A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html" title="class in org.apache.archiva.configuration">org.apache.archiva.configuration.AbstractRepositoryConfiguration</A>
      <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.archiva.configuration.ManagedRepositoryConfiguration</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../org/apache/archiva/configuration/V1RepositoryConfiguration.html" title="class in org.apache.archiva.configuration">V1RepositoryConfiguration</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.14"><B>ManagedRepositoryConfiguration</B></A><DT>extends <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html" title="class in org.apache.archiva.configuration">AbstractRepositoryConfiguration</A><DT>implements <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A></DL>
</PRE>

<P>
Class ManagedRepositoryConfiguration.
<P>

<P>
<DL>
<DT><B>Version:</B></DT>
  <DD>$Revision$ $Date$</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#org.apache.archiva.configuration.ManagedRepositoryConfiguration">Serialized Form</A></DL>
<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>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#blockRedeployments">blockRedeployments</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if re-deployment of artifacts already in the repository
 will be blocked.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#daysOlder">daysOlder</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The number of days old which will be the basis
 for removing a snapshot.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#deleteReleasedSnapshots">deleteReleasedSnapshots</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if the released snapshots are to be removed
 from the repo during repository purge.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &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/configuration/ManagedRepositoryConfiguration.html#location">location</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The file system location for this repository.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &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/configuration/ManagedRepositoryConfiguration.html#refreshCronExpression">refreshCronExpression</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When to run the refresh task.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#releases">releases</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if this repository contains release versioned artifacts.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#retentionCount">retentionCount</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The total count of the artifact to be retained
 for each snapshot.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#scanned">scanned</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if this repository should be scanned and processed.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#skipPackedIndexCreation">skipPackedIndexCreation</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True to not generate packed index (note you
 won't be able to export your index.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#snapshots">snapshots</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;True if this repository contains snapshot versioned artifacts</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#stageRepoNeeded">stageRepoNeeded</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Need a staging repository
           .</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><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#ManagedRepositoryConfiguration()">ManagedRepositoryConfiguration</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;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#getDaysOlder()">getDaysOlder</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the number of days old which will be the basis for
 removing a snapshot.</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/configuration/ManagedRepositoryConfiguration.html#getLocation()">getLocation</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the file system location for this repository.</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/configuration/ManagedRepositoryConfiguration.html#getRefreshCronExpression()">getRefreshCronExpression</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get when to run the refresh task.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#getRetentionCount()">getRetentionCount</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the total count of the artifact to be retained for each
 snapshot.</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/configuration/ManagedRepositoryConfiguration.html#isBlockRedeployments()">isBlockRedeployments</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true if re-deployment of artifacts already in the
 repository will be blocked.</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/configuration/ManagedRepositoryConfiguration.html#isDeleteReleasedSnapshots()">isDeleteReleasedSnapshots</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true if the released snapshots are to be removed from
 the repo during repository purge.</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/configuration/ManagedRepositoryConfiguration.html#isReleases()">isReleases</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true if this repository contains release versioned
 artifacts.</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/configuration/ManagedRepositoryConfiguration.html#isScanned()">isScanned</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true if this repository should be scanned and processed.</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/configuration/ManagedRepositoryConfiguration.html#isSkipPackedIndexCreation()">isSkipPackedIndexCreation</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true to not generate packed index (note you won't be
 able to export your index.</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/configuration/ManagedRepositoryConfiguration.html#isSnapshots()">isSnapshots</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get true if this repository contains snapshot versioned
 artifacts.</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/configuration/ManagedRepositoryConfiguration.html#isStageRepoNeeded()">isStageRepoNeeded</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get need a staging repository.</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/configuration/ManagedRepositoryConfiguration.html#setBlockRedeployments(boolean)">setBlockRedeployments</A></B>(boolean&nbsp;blockRedeployments)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true if re-deployment of artifacts already in the
 repository will be blocked.</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/configuration/ManagedRepositoryConfiguration.html#setDaysOlder(int)">setDaysOlder</A></B>(int&nbsp;daysOlder)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the number of days old which will be the basis for
 removing a snapshot.</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/configuration/ManagedRepositoryConfiguration.html#setDeleteReleasedSnapshots(boolean)">setDeleteReleasedSnapshots</A></B>(boolean&nbsp;deleteReleasedSnapshots)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true if the released snapshots are to be removed from
 the repo during repository purge.</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/configuration/ManagedRepositoryConfiguration.html#setLocation(java.lang.String)">setLocation</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;location)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the file system location for this repository.</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/configuration/ManagedRepositoryConfiguration.html#setRefreshCronExpression(java.lang.String)">setRefreshCronExpression</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;refreshCronExpression)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set when to run the refresh task.</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/configuration/ManagedRepositoryConfiguration.html#setReleases(boolean)">setReleases</A></B>(boolean&nbsp;releases)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true if this repository contains release versioned
 artifacts.</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/configuration/ManagedRepositoryConfiguration.html#setRetentionCount(int)">setRetentionCount</A></B>(int&nbsp;retentionCount)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the total count of the artifact to be retained for each
 snapshot.</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/configuration/ManagedRepositoryConfiguration.html#setScanned(boolean)">setScanned</A></B>(boolean&nbsp;scanned)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true if this repository should be scanned and processed.</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/configuration/ManagedRepositoryConfiguration.html#setSkipPackedIndexCreation(boolean)">setSkipPackedIndexCreation</A></B>(boolean&nbsp;skipPackedIndexCreation)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true to not generate packed index (note you won't be
 able to export your index.</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/configuration/ManagedRepositoryConfiguration.html#setSnapshots(boolean)">setSnapshots</A></B>(boolean&nbsp;snapshots)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set true if this repository contains snapshot versioned
 artifacts.</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/configuration/ManagedRepositoryConfiguration.html#setStageRepoNeeded(boolean)">setStageRepoNeeded</A></B>(boolean&nbsp;stageRepoNeeded)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set need a staging repository.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.archiva.configuration.AbstractRepositoryConfiguration"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.archiva.configuration.<A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html" title="class in org.apache.archiva.configuration">AbstractRepositoryConfiguration</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#equals(java.lang.Object)">equals</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#getDescription()">getDescription</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#getId()">getId</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#getIndexDir()">getIndexDir</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#getLayout()">getLayout</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#getName()">getName</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#hashCode()">hashCode</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#setDescription(java.lang.String)">setDescription</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#setId(java.lang.String)">setId</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#setIndexDir(java.lang.String)">setIndexDir</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#setLayout(java.lang.String)">setLayout</A>, <A HREF="../../../../org/apache/archiva/configuration/AbstractRepositoryConfiguration.html#setName(java.lang.String)">setName</A></CODE></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#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#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>

<!-- ============ 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="location"><!-- --></A><H3>
location</H3>
<PRE>
private <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/configuration/ManagedRepositoryConfiguration.html#line.28"><B>location</B></A></PRE>
<DL>
<DD>The file system location for this repository.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="releases"><!-- --></A><H3>
releases</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.33"><B>releases</B></A></PRE>
<DL>
<DD>True if this repository contains release versioned artifacts.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="blockRedeployments"><!-- --></A><H3>
blockRedeployments</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.39"><B>blockRedeployments</B></A></PRE>
<DL>
<DD>True if re-deployment of artifacts already in the repository
 will be blocked.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="snapshots"><!-- --></A><H3>
snapshots</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.44"><B>snapshots</B></A></PRE>
<DL>
<DD>True if this repository contains snapshot versioned artifacts
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="scanned"><!-- --></A><H3>
scanned</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.49"><B>scanned</B></A></PRE>
<DL>
<DD>True if this repository should be scanned and processed.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="refreshCronExpression"><!-- --></A><H3>
refreshCronExpression</H3>
<PRE>
private <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/configuration/ManagedRepositoryConfiguration.html#line.57"><B>refreshCronExpression</B></A></PRE>
<DL>
<DD>When to run the refresh task.
             Default is every hour
           .
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="retentionCount"><!-- --></A><H3>
retentionCount</H3>
<PRE>
private int <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.65"><B>retentionCount</B></A></PRE>
<DL>
<DD>The total count of the artifact to be retained
 for each snapshot.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="daysOlder"><!-- --></A><H3>
daysOlder</H3>
<PRE>
private int <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.73"><B>daysOlder</B></A></PRE>
<DL>
<DD>The number of days old which will be the basis
 for removing a snapshot.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="deleteReleasedSnapshots"><!-- --></A><H3>
deleteReleasedSnapshots</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.81"><B>deleteReleasedSnapshots</B></A></PRE>
<DL>
<DD>True if the released snapshots are to be removed
 from the repo during repository purge.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="skipPackedIndexCreation"><!-- --></A><H3>
skipPackedIndexCreation</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.89"><B>skipPackedIndexCreation</B></A></PRE>
<DL>
<DD>True to not generate packed index (note you
 won't be able to export your index.
<P>
<DL>
</DL>
</DL>
<HR>

<A NAME="stageRepoNeeded"><!-- --></A><H3>
stageRepoNeeded</H3>
<PRE>
private boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.96"><B>stageRepoNeeded</B></A></PRE>
<DL>
<DD>Need a staging repository
           .
<P>
<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="ManagedRepositoryConfiguration()"><!-- --></A><H3>
ManagedRepositoryConfiguration</H3>
<PRE>
public <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.14"><B>ManagedRepositoryConfiguration</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="getDaysOlder()"><!-- --></A><H3>
getDaysOlder</H3>
<PRE>
public int <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.109"><B>getDaysOlder</B></A>()</PRE>
<DL>
<DD>Get the number of days old which will be the basis for
 removing a snapshot.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>int</DL>
</DD>
</DL>
<HR>

<A NAME="getLocation()"><!-- --></A><H3>
getLocation</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/configuration/ManagedRepositoryConfiguration.html#line.119"><B>getLocation</B></A>()</PRE>
<DL>
<DD>Get the file system location for this repository.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>String</DL>
</DD>
</DL>
<HR>

<A NAME="getRefreshCronExpression()"><!-- --></A><H3>
getRefreshCronExpression</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/configuration/ManagedRepositoryConfiguration.html#line.130"><B>getRefreshCronExpression</B></A>()</PRE>
<DL>
<DD>Get when to run the refresh task.
             Default is every hour.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>String</DL>
</DD>
</DL>
<HR>

<A NAME="getRetentionCount()"><!-- --></A><H3>
getRetentionCount</H3>
<PRE>
public int <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.141"><B>getRetentionCount</B></A>()</PRE>
<DL>
<DD>Get the total count of the artifact to be retained for each
 snapshot.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>int</DL>
</DD>
</DL>
<HR>

<A NAME="isBlockRedeployments()"><!-- --></A><H3>
isBlockRedeployments</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.152"><B>isBlockRedeployments</B></A>()</PRE>
<DL>
<DD>Get true if re-deployment of artifacts already in the
 repository will be blocked.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isDeleteReleasedSnapshots()"><!-- --></A><H3>
isDeleteReleasedSnapshots</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.163"><B>isDeleteReleasedSnapshots</B></A>()</PRE>
<DL>
<DD>Get true if the released snapshots are to be removed from
 the repo during repository purge.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isReleases()"><!-- --></A><H3>
isReleases</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.174"><B>isReleases</B></A>()</PRE>
<DL>
<DD>Get true if this repository contains release versioned
 artifacts.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isScanned()"><!-- --></A><H3>
isScanned</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.184"><B>isScanned</B></A>()</PRE>
<DL>
<DD>Get true if this repository should be scanned and processed.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isSkipPackedIndexCreation()"><!-- --></A><H3>
isSkipPackedIndexCreation</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.195"><B>isSkipPackedIndexCreation</B></A>()</PRE>
<DL>
<DD>Get true to not generate packed index (note you won't be
 able to export your index.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isSnapshots()"><!-- --></A><H3>
isSnapshots</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.206"><B>isSnapshots</B></A>()</PRE>
<DL>
<DD>Get true if this repository contains snapshot versioned
 artifacts.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="isStageRepoNeeded()"><!-- --></A><H3>
isStageRepoNeeded</H3>
<PRE>
public boolean <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.216"><B>isStageRepoNeeded</B></A>()</PRE>
<DL>
<DD>Get need a staging repository.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>boolean</DL>
</DD>
</DL>
<HR>

<A NAME="setBlockRedeployments(boolean)"><!-- --></A><H3>
setBlockRedeployments</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.227"><B>setBlockRedeployments</B></A>(boolean&nbsp;blockRedeployments)</PRE>
<DL>
<DD>Set true if re-deployment of artifacts already in the
 repository will be blocked.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>blockRedeployments</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setDaysOlder(int)"><!-- --></A><H3>
setDaysOlder</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.238"><B>setDaysOlder</B></A>(int&nbsp;daysOlder)</PRE>
<DL>
<DD>Set the number of days old which will be the basis for
 removing a snapshot.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>daysOlder</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setDeleteReleasedSnapshots(boolean)"><!-- --></A><H3>
setDeleteReleasedSnapshots</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.249"><B>setDeleteReleasedSnapshots</B></A>(boolean&nbsp;deleteReleasedSnapshots)</PRE>
<DL>
<DD>Set true if the released snapshots are to be removed from
 the repo during repository purge.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>deleteReleasedSnapshots</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setLocation(java.lang.String)"><!-- --></A><H3>
setLocation</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.259"><B>setLocation</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;location)</PRE>
<DL>
<DD>Set the file system location for this repository.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>location</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setRefreshCronExpression(java.lang.String)"><!-- --></A><H3>
setRefreshCronExpression</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.270"><B>setRefreshCronExpression</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;refreshCronExpression)</PRE>
<DL>
<DD>Set when to run the refresh task.
             Default is every hour.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>refreshCronExpression</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setReleases(boolean)"><!-- --></A><H3>
setReleases</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.281"><B>setReleases</B></A>(boolean&nbsp;releases)</PRE>
<DL>
<DD>Set true if this repository contains release versioned
 artifacts.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>releases</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setRetentionCount(int)"><!-- --></A><H3>
setRetentionCount</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.292"><B>setRetentionCount</B></A>(int&nbsp;retentionCount)</PRE>
<DL>
<DD>Set the total count of the artifact to be retained for each
 snapshot.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>retentionCount</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setScanned(boolean)"><!-- --></A><H3>
setScanned</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.302"><B>setScanned</B></A>(boolean&nbsp;scanned)</PRE>
<DL>
<DD>Set true if this repository should be scanned and processed.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>scanned</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setSkipPackedIndexCreation(boolean)"><!-- --></A><H3>
setSkipPackedIndexCreation</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.313"><B>setSkipPackedIndexCreation</B></A>(boolean&nbsp;skipPackedIndexCreation)</PRE>
<DL>
<DD>Set true to not generate packed index (note you won't be
 able to export your index.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>skipPackedIndexCreation</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setSnapshots(boolean)"><!-- --></A><H3>
setSnapshots</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.324"><B>setSnapshots</B></A>(boolean&nbsp;snapshots)</PRE>
<DL>
<DD>Set true if this repository contains snapshot versioned
 artifacts.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>snapshots</CODE> - </DL>
</DD>
</DL>
<HR>

<A NAME="setStageRepoNeeded(boolean)"><!-- --></A><H3>
setStageRepoNeeded</H3>
<PRE>
public void <A HREF="../../../../src-html/org/apache/archiva/configuration/ManagedRepositoryConfiguration.html#line.334"><B>setStageRepoNeeded</B></A>(boolean&nbsp;stageRepoNeeded)</PRE>
<DL>
<DD>Set need a staging repository.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>stageRepoNeeded</CODE> - </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/ManagedRepositoryConfiguration.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;<A HREF="../../../../org/apache/archiva/configuration/LegacyArtifactPath.html" title="class in org.apache.archiva.configuration"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/archiva/configuration/MavenProxyPropertyLoader.html" title="class in org.apache.archiva.configuration"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/archiva/configuration/ManagedRepositoryConfiguration.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ManagedRepositoryConfiguration.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>
Copyright &#169; 2006-2013 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>