<!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>MergeRepositoriesService</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">MergeRepositoriesService</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="rest.html">REST</a> &gt;
              <ul>
                <li><a href="model.html">Data Model</a></li>
                <li><a href="rest.html">REST</a></li>
              </ul>
            </li>
            <li class="current">
              <a href="resource_MergeRepositoriesService.html">MergeRepositoriesService</a>
              <ul>
                <li><a href="resource_SystemStatusService.html">SystemStatusService</a></li>
                <li><a href="resource_ArchivaAdministrationService.html">ArchivaAdministrationService</a></li>
                <li><a href="resource_RemoteRepositoriesService.html">RemoteRepositoriesService</a></li>
                <li><a href="resource_ManagedRepositoriesService.html">ManagedRepositoriesService</a></li>
                <li><a href="resource_ReportRepositoriesService.html">ReportRepositoriesService</a></li>
                <li><a href="resource_PingService.html">PingService</a></li>
                <li><a href="resource_RepositoryGroupService.html">RepositoryGroupService</a></li>
                <li><a href="resource_ProxyConnectorService.html">ProxyConnectorService</a></li>
                <li><a href="resource_RepositoriesService.html">RepositoriesService</a></li>
                <li><a href="resource_ArchivaRuntimeConfigurationService.html">ArchivaRuntimeConfigurationService</a></li>
                <li><a href="resource_MergeRepositoriesService.html">MergeRepositoriesService</a></li>
                <li><a href="resource_ProxyConnectorRuleService.html">ProxyConnectorRuleService</a></li>
                <li><a href="resource_SearchService.html">SearchService</a></li>
                <li><a href="resource_CommonServices.html">CommonServices</a></li>
                <li><a href="resource_RedbackRuntimeConfigurationService.html">RedbackRuntimeConfigurationService</a></li>
                <li><a href="resource_NetworkProxyService.html">NetworkProxyService</a></li>
                <li><a href="resource_BrowseService.html">BrowseService</a></li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </header>
    <div id="main" class="column first last span-20">
      <h1>MergeRepositoriesService</h1>

      <p>provide REST services on the top of stage merge repository plugin</p>
      <p>The following resources are part of this group:</p>
      <ul>
        <li><a href="#path__mergeRepositoriesService_mergeConflictedArtifacts_-sourceRepositoryId-_-targetRepositoryId-.html">/mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}</a></li>
        <li><a href="#path__mergeRepositoriesService_mergeRepositories_-sourceRepositoryId-_-targetRepositoryId-_-skipConflicts-.html">/mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}</a></li>
      </ul>
      <a name="path__mergeRepositoriesService_mergeConflictedArtifacts_-sourceRepositoryId-_-targetRepositoryId-.html"></a>
      <h1>/mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}</h1>
      <p class="note">Mount Point: <a href="../restServices/mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}">/restServices/mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}</a></p>
      <a name="GET"></a>
      <h2>GET</h2>
      <p class="note">Available Since: 1.4-M3</p>
      <p>
            <b>permissions are checked in impl</b>
          </p>
      <h3>Parameters</h3>
      <table>
        <tr>
          <th>name</th>
          <th>description</th>
          <th>type</th>
          <th>default</th>
        </tr>
        <tr>
          <td>sourceRepositoryId</td>
          <td>
            (no documentation provided)
          </td>
          <td>path</td>
          <td></td>
        </tr>
        <tr>
          <td>targetRepositoryId</td>
          <td>
            (no documentation provided)
          </td>
          <td>path</td>
          <td></td>
        </tr>
      </table>
      <h3>Response Body</h3>
      <table>
        <tr>
          <td align="right">element:</td>
          <td>(custom)</td>
        </tr>
        <tr>
          <td align="right">media types:</td>
          <td>application/xml<br/>application/json</td>
        </tr>
      </table>
      <p>(no documentation provided)</p>
      <a name="path__mergeRepositoriesService_mergeRepositories_-sourceRepositoryId-_-targetRepositoryId-_-skipConflicts-.html"></a>
      <h1>/mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}</h1>
      <p class="note">Mount Point: <a href="../restServices/mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}">/restServices/mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}</a></p>
      <a name="GET"></a>
      <h2>GET</h2>
      <p class="note">Available Since: 1.4-M3</p>
      <p>
            <b>permissions are checked in impl</b>
          </p>
      <h3>Parameters</h3>
      <table>
        <tr>
          <th>name</th>
          <th>description</th>
          <th>type</th>
          <th>default</th>
        </tr>
        <tr>
          <td>sourceRepositoryId</td>
          <td>
            (no documentation provided)
          </td>
          <td>path</td>
          <td></td>
        </tr>
        <tr>
          <td>targetRepositoryId</td>
          <td>
            (no documentation provided)
          </td>
          <td>path</td>
          <td></td>
        </tr>
        <tr>
          <td>skipConflicts</td>
          <td>
            (no documentation provided)
          </td>
          <td>path</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>