<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Index (Archiva Components :: Spring Registry 3.0-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Index (Archiva Components :: Spring Registry 3.0-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a name="I:A">
<!--   -->
</a>
<h2 class="title">A</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#addChangeListener-org.apache.archiva.components.registry.RegistryListener-">addChangeListener(RegistryListener)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#addChangeListener-org.apache.archiva.components.registry.RegistryListener-">addChangeListener(RegistryListener)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Add a change listener.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#addConfigurationFromFile-java.io.File-">addConfigurationFromFile(File)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#addConfigurationFromFile-java.io.File-java.lang.String-">addConfigurationFromFile(File, String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#addConfigurationFromFile-java.io.File-">addConfigurationFromFile(File)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Load configuration from the given file.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#addConfigurationFromFile-java.io.File-java.lang.String-">addConfigurationFromFile(File, String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Load configuration from the given file.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#addConfigurationFromResource-java.lang.String-">addConfigurationFromResource(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#addConfigurationFromResource-java.lang.String-java.lang.String-">addConfigurationFromResource(String, String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#addConfigurationFromResource-java.lang.String-">addConfigurationFromResource(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Load configuration from the given classloader resource.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#addConfigurationFromResource-java.lang.String-java.lang.String-">addConfigurationFromResource(String, String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Load configuration from the given classloader resource.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/RegistryListener.html#afterConfigurationChange-org.apache.archiva.components.registry.Registry-java.lang.String-java.lang.Object-">afterConfigurationChange(Registry, String, Object)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/RegistryListener.html" title="interface in org.apache.archiva.components.registry">RegistryListener</a></dt>
<dd>
<div class="block">Notify the object that there has been a configuration change.</div>
</dd>
</dl>
<a name="I:B">
<!--   -->
</a>
<h2 class="title">B</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/RegistryListener.html#beforeConfigurationChange-org.apache.archiva.components.registry.Registry-java.lang.String-java.lang.Object-">beforeConfigurationChange(Registry, String, Object)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/RegistryListener.html" title="interface in org.apache.archiva.components.registry">RegistryListener</a></dt>
<dd>
<div class="block">Notify the object that there is about to be a configuration change.</div>
</dd>
</dl>
<a name="I:C">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons"><span class="typeNameLink">CommonsConfigurationRegistry</span></a> - Class in <a href="org/apache/archiva/components/registry/commons/package-summary.html">org.apache.archiva.components.registry.commons</a></dt>
<dd>
<div class="block">Implementation of the registry component using
 <a href="http://commons.apache.org/commons/configuration">Commons Configuration</a>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#CommonsConfigurationRegistry--">CommonsConfigurationRegistry()</a></span> - Constructor for class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#CommonsConfigurationRegistry-org.apache.commons.configuration.Configuration-">CommonsConfigurationRegistry(Configuration)</a></span> - Constructor for class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html#configurationChanged-org.apache.commons.configuration.event.ConfigurationEvent-">configurationChanged(ConfigurationEvent)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html" title="class in org.apache.archiva.components.registry.commons">ConfigurationListenerDelegate</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html" title="class in org.apache.archiva.components.registry.commons"><span class="typeNameLink">ConfigurationListenerDelegate</span></a> - Class in <a href="org/apache/archiva/components/registry/commons/package-summary.html">org.apache.archiva.components.registry.commons</a></dt>
<dd>
<div class="block">Commons configuration listener that delegates to the given registry listener.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html#ConfigurationListenerDelegate-org.apache.archiva.components.registry.RegistryListener-org.apache.archiva.components.registry.Registry-">ConfigurationListenerDelegate(RegistryListener, Registry)</a></span> - Constructor for class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html" title="class in org.apache.archiva.components.registry.commons">ConfigurationListenerDelegate</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:D">
<!--   -->
</a>
<h2 class="title">D</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#dump--">dump()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#dump--">dump()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Dump the entire registry to a string, for debugging purposes.</div>
</dd>
</dl>
<a name="I:E">
<!--   -->
</a>
<h2 class="title">E</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html#equals-java.lang.Object-">equals(Object)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html" title="class in org.apache.archiva.components.registry.commons">ConfigurationListenerDelegate</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:G">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getBoolean-java.lang.String-boolean-">getBoolean(String, boolean)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getBoolean-java.lang.String-">getBoolean(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a boolean value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getBoolean-java.lang.String-boolean-">getBoolean(String, boolean)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a boolean value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getChangeListenersSize--">getChangeListenersSize()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getFullKeys--">getFullKeys()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getFullKeys--">getFullKeys()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get all the keys in this registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getInt-java.lang.String-int-">getInt(String, int)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getInt-java.lang.String-">getInt(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get an integer value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getInt-java.lang.String-int-">getInt(String, int)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get an integer value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getKeys--">getKeys()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getKeys--">getKeys()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get all the keys in this registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getList-java.lang.String-">getList(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getList-java.lang.String-">getList(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a list of strings at the given key in the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getProperties-java.lang.String-">getProperties(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getProperties-java.lang.String-">getProperties(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">TODO move to Map which is more generic ?</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getPropertyDelimiter--">getPropertyDelimiter()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getSection-java.lang.String-">getSection(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getSection-java.lang.String-">getSection(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a subsection of the registry, identified by the given name.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getString-java.lang.String-">getString(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getString-java.lang.String-java.lang.String-">getString(String, String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getString-java.lang.String-">getString(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a string value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getString-java.lang.String-java.lang.String-">getString(String, String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a string value from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getSubset-java.lang.String-">getSubset(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getSubset-java.lang.String-">getSubset(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a subset of the registry, for all keys descended from the given key.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#getSubsetList-java.lang.String-">getSubsetList(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#getSubsetList-java.lang.String-">getSubsetList(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Get a list of subsets of the registry, for all keys descended from the given key.</div>
</dd>
</dl>
<a name="I:H">
<!--   -->
</a>
<h2 class="title">H</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html#hashCode--">hashCode()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/ConfigurationListenerDelegate.html" title="class in org.apache.archiva.components.registry.commons">ConfigurationListenerDelegate</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:I">
<!--   -->
</a>
<h2 class="title">I</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#initialize--">initialize()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#initialize--">initialize()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#isEmpty--">isEmpty()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#isEmpty--">isEmpty()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Determine if the registry contains any elements.</div>
</dd>
</dl>
<a name="I:O">
<!--   -->
</a>
<h2 class="title">O</h2>
<dl>
<dt><a href="org/apache/archiva/components/registry/package-summary.html">org.apache.archiva.components.registry</a> - package org.apache.archiva.components.registry</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/registry/commons/package-summary.html">org.apache.archiva.components.registry.commons</a> - package org.apache.archiva.components.registry.commons</dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:R">
<!--   -->
</a>
<h2 class="title">R</h2>
<dl>
<dt><a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry"><span class="typeNameLink">Registry</span></a> - Interface in <a href="org/apache/archiva/components/registry/package-summary.html">org.apache.archiva.components.registry</a></dt>
<dd>
<div class="block">The Plexus registry is a single source of external configuration for Plexus components and applications.</div>
</dd>
<dt><a href="org/apache/archiva/components/registry/RegistryException.html" title="class in org.apache.archiva.components.registry"><span class="typeNameLink">RegistryException</span></a> - Exception in <a href="org/apache/archiva/components/registry/package-summary.html">org.apache.archiva.components.registry</a></dt>
<dd>
<div class="block">Exception occurring in the registry component.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/RegistryException.html#RegistryException-java.lang.String-">RegistryException(String)</a></span> - Constructor for exception org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/RegistryException.html" title="class in org.apache.archiva.components.registry">RegistryException</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/RegistryException.html#RegistryException-java.lang.String-java.lang.Throwable-">RegistryException(String, Throwable)</a></span> - Constructor for exception org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/RegistryException.html" title="class in org.apache.archiva.components.registry">RegistryException</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/registry/RegistryListener.html" title="interface in org.apache.archiva.components.registry"><span class="typeNameLink">RegistryListener</span></a> - Interface in <a href="org/apache/archiva/components/registry/package-summary.html">org.apache.archiva.components.registry</a></dt>
<dd>
<div class="block">Receives notifications of configuration changes in thre registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#remove-java.lang.String-">remove(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#remove-java.lang.String-">remove(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Remove a keyed element from the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#removeChangeListener-org.apache.archiva.components.registry.RegistryListener-">removeChangeListener(RegistryListener)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#removeChangeListener-org.apache.archiva.components.registry.RegistryListener-">removeChangeListener(RegistryListener)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#removeSubset-java.lang.String-">removeSubset(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#removeSubset-java.lang.String-">removeSubset(String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Remove a keyed subset of the registry.</div>
</dd>
</dl>
<a name="I:S">
<!--   -->
</a>
<h2 class="title">S</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#save--">save()</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#save--">save()</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Save any changes to the registry since it was loaded.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#setBoolean-java.lang.String-boolean-">setBoolean(String, boolean)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#setBoolean-java.lang.String-boolean-">setBoolean(String, boolean)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Set a boolean value in the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#setInt-java.lang.String-int-">setInt(String, int)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#setInt-java.lang.String-int-">setInt(String, int)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Set an integer value in the registry.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#setProperties-java.lang.String-">setProperties(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#setPropertyDelimiter-java.lang.String-">setPropertyDelimiter(String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html#setString-java.lang.String-java.lang.String-">setString(String, String)</a></span> - Method in class org.apache.archiva.components.registry.commons.<a href="org/apache/archiva/components/registry/commons/CommonsConfigurationRegistry.html" title="class in org.apache.archiva.components.registry.commons">CommonsConfigurationRegistry</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/registry/Registry.html#setString-java.lang.String-java.lang.String-">setString(String, String)</a></span> - Method in interface org.apache.archiva.components.registry.<a href="org/apache/archiva/components/registry/Registry.html" title="interface in org.apache.archiva.components.registry">Registry</a></dt>
<dd>
<div class="block">Set a string value in the registry.</div>
</dd>
</dl>
<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2006&#x2013;2019 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>