<!doctype html>
<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7 ]> <html class="no-js ie6" lang="en"> <![endif]-->
<!--[if IE 7 ]>    <html class="no-js ie7" lang="en"> <![endif]-->
<!--[if IE 8 ]>    <html class="no-js ie8" lang="en"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
  <meta charset="utf-8">

  <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame
       Remove this if you use the .htaccess -->
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

  <title>proxyConnectorRule</title>

  <!-- Mobile viewport optimized: j.mp/bplateviewport -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- CSS: implied media="all" -->
  <link rel="stylesheet" href="css/style.css?v=2">
  <link rel="stylesheet" href="css/prettify.css">

  <!-- All JavaScript at the bottom, except for Modernizr which enables HTML5 elements & feature detects -->
  <script src="js/libs/modernizr-1.7.min.js"></script>

</head>

<body class="home">

  <div class="container">
    <header>
      <div id="header" class="column first last span-20">
        <div id="site-name" class="column span-18 append-1 prepend-1 first last"><a href="index.html">proxyConnectorRule</a></div>
        <div id="primary" class="column span-18 append-1 prepend-1 first last">
          <ul class="navigation">
            <li id="nav-rest"><a href="rest.html">REST</a></li>
            <li id="nav-data"><a href="model.html">Data Model</a></li>
          </ul>
        </div>
        <div>
          <ul class="xbreadcrumbs" id="breadcrumbs">
            <li>
              <a href="index.html" class="home">Home</a> &gt;
            </li>
            <li>
              <a href="model.html">Data Model</a> &gt;
              <ul>
                <li><a href="model.html">Data Model</a></li>
                <li><a href="rest.html">REST</a></li>
              </ul>
            </li>
            <li>
              <a href="ns0.html">ns0</a> &gt;
              <ul>
                <li><a href="ns0.html">ns0</a></li>
              </ul>
            </li>
            <li class="current">
              <a href="ns0_proxyConnectorRule.html">proxyConnectorRule</a>
              <ul>
                <li><a href="ns0_abstractImplementationInformation.html">abstractImplementationInformation</a></li>
                <li><a href="ns0_abstractRepository.html">abstractRepository</a></li>
                <li><a href="ns0_abstractRepositoryConnector.html">abstractRepositoryConnector</a></li>
                <li><a href="ns0_adminRepositoryConsumer.html">adminRepositoryConsumer</a></li>
                <li><a href="ns0_archivaRepositoryStatistics.html">archivaRepositoryStatistics</a></li>
                <li><a href="ns0_archivaRuntimeConfiguration.html">archivaRuntimeConfiguration</a></li>
                <li><a href="ns0_artifact.html">artifact</a></li>
                <li><a href="ns0_artifactContent.html">artifactContent</a></li>
                <li><a href="ns0_artifactContentEntry.html">artifactContentEntry</a></li>
                <li><a href="ns0_artifactTransferRequest.html">artifactTransferRequest</a></li>
                <li><a href="ns0_browseResult.html">browseResult</a></li>
                <li><a href="ns0_browseResultEntry.html">browseResultEntry</a></li>
                <li><a href="ns0_cacheConfiguration.html">cacheConfiguration</a></li>
                <li><a href="ns0_cacheEntry.html">cacheEntry</a></li>
                <li><a href="ns0_ciManagement.html">ciManagement</a></li>
                <li><a href="ns0_consumerScanningStatistics.html">consumerScanningStatistics</a></li>
                <li><a href="ns0_dependency.html">dependency</a></li>
                <li><a href="ns0_facetedMetadata.html">facetedMetadata</a></li>
                <li><a href="ns0_fileLockConfiguration.html">fileLockConfiguration</a></li>
                <li><a href="ns0_fileType.html">fileType</a></li>
                <li><a href="ns0_groupIdList.html">groupIdList</a></li>
                <li><a href="ns0_issueManagement.html">issueManagement</a></li>
                <li><a href="ns0_ldapConfiguration.html">ldapConfiguration</a></li>
                <li><a href="ns0_ldapGroupMapping.html">ldapGroupMapping</a></li>
                <li><a href="ns0_license.html">license</a></li>
                <li><a href="ns0_mailingList.html">mailingList</a></li>
                <li><a href="ns0_managedRepository.html">managedRepository</a></li>
                <li><a href="ns0_metadataAddRequest.html">metadataAddRequest</a></li>
                <li><a href="ns0_networkConfiguration.html">networkConfiguration</a></li>
                <li><a href="ns0_networkProxy.html">networkProxy</a></li>
                <li><a href="ns0_organisationInformation.html">organisationInformation</a></li>
                <li><a href="ns0_organization.html">organization</a></li>
                <li><a href="ns0_policyInformation.html">policyInformation</a></li>
                <li><a href="ns0_projectVersionMetadata.html">projectVersionMetadata</a></li>
                <li><a href="ns0_propertyEntry.html">propertyEntry</a></li>
                <li><a href="ns0_proxyConnector.html">proxyConnector</a></li>
                <li><a href="ns0_proxyConnectorRule.html">proxyConnectorRule</a></li>
                <li><a href="ns0_proxyConnectorRuleType.html">proxyConnectorRuleType</a></li>
                <li><a href="ns0_queueEntry.html">queueEntry</a></li>
                <li><a href="ns0_RBACManagerImplementationInformation.html">RBACManagerImplementationInformation</a></li>
                <li><a href="ns0_redbackImplementationsInformations.html">redbackImplementationsInformations</a></li>
                <li><a href="ns0_redbackRuntimeConfiguration.html">redbackRuntimeConfiguration</a></li>
                <li><a href="ns0_remoteRepository.html">remoteRepository</a></li>
                <li><a href="ns0_repositoryGroup.html">repositoryGroup</a></li>
                <li><a href="ns0_repositoryScannerStatistics.html">repositoryScannerStatistics</a></li>
                <li><a href="ns0_repositoryScanStatistics.html">repositoryScanStatistics</a></li>
                <li><a href="ns0_scm.html">scm</a></li>
                <li><a href="ns0_searchRequest.html">searchRequest</a></li>
                <li><a href="ns0_stringList.html">stringList</a></li>
                <li><a href="ns0_uiConfiguration.html">uiConfiguration</a></li>
                <li><a href="ns0_userManagerImplementationInformation.html">userManagerImplementationInformation</a></li>
                <li><a href="ns0_versionsList.html">versionsList</a></li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </header>
    <div id="main" class="column first last span-20">
      <h1>proxyConnectorRule</h1>
      <table>
        <tr>
          <td align="right">Namespace:</td>
          <td>(default namespace)</td>
        </tr>
        <tr>
          <td align="right">XML Schema:</td>
          <td><a href="ns0.xsd">ns0.xsd</a></td>
        </tr>
      </table>

      <h2>XML</h2>
      <h3>Elements</h3>
      <table>
        <tr>
          <th>name (type)</th>
          <th>min/max<br/>occurs</th>
          <th>description</th>
        </tr>
        <tr>
          <td>
            pattern (string)
          </td>
          <td>0/1</td>
          <td>
          </td>
        </tr>
        <tr>
          <td>
            proxyConnectors (<a href="ns0_proxyConnector.html">proxyConnector</a>)
          </td>
          <td>0/unbounded</td>
          <td>
          </td>
        </tr>
        <tr>
          <td>
            proxyConnectorRuleType (<a href="ns0_proxyConnectorRuleType.html">proxyConnectorRuleType</a>)
          </td>
          <td>0/1</td>
          <td>
          </td>
        </tr>
      </table>


      <div class="clear" />
    </div>
    <footer>
      <div id="footer">
        Generated by <a href="http://enunciate.codehaus.org">Enunciate</a>.
      </div>
    </footer>
  </div> <!--! end of #container -->

  <!-- JavaScript at the bottom for fast page loading -->

  <!-- Grab Google CDN's jQuery, with a protocol relative URL; fall back to local if necessary -->
  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script>
  <script>window.jQuery || document.write("<script src='js/libs/jquery-1.5.1.min.js'>\x3C/script>")</script>

  <!--manage the navigation menu-->
  <script src="js/libs/xbreadcrumbs.js"></script>
  <script>
    $(function() {
      $('#breadcrumbs').xBreadcrumbs();
    });
  </script>


  <!-- prettify code blocks. see http://code.google.com/p/google-code-prettify/ -->
  <script src="js/libs/prettify/prettify.js"></script>
  <script>
    $(function() {
      prettyPrint();
    });
  </script>

  <!--[if lt IE 7 ]>
    <script src="js/libs/dd_belatedpng.js"></script>
    <script>DD_belatedPNG.fix("img, .png_bg"); // Fix any <img> or .png_bg bg-images. Also, please read goo.gl/mZiyb </script>
  <![endif]-->

</body>
</html>