<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->

  <title>Archiva Web :: Web Common: MergeRepositoriesService</title>

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

  <!-- Bootstrap core CSS -->
  <!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css"> -->

  <!--custom css for these pages-->
  <link rel="stylesheet" href="css/style.css">

  <link href="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/prettify.css" type="text/css">

  <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
  <!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->
</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">Archiva Web :: Web Common: 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="resources.html">REST</a></li>
            <li id="nav-data"><a href="data.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="resources.html">Resources</a> &gt;

            </li>
<li class="current">
 <a href="resource_MergeRepositoriesService.html">MergeRepositoriesService</a>

            </li>
          </ul>
        </div>
      </div>
  <!--<nav class="navbar navbar-inverse navbar-fixed-top">
    <div class="container-fluid">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="index.html">Archiva Web :: Web Common: MergeRepositoriesService</a>
      </div>
      <div id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav navbar-right">
          <li><a href="resources.html">Resources</a></li>
          <li><a href="data.html">Data Types</a></li>
          <li><a href="downloads.html">Files and Libraries</a></li>
        </ul>
      </div>
    </div>
  </nav>-->
 </header>
  <div id="main" class="column first last span-20">
  
      <h1 class="page-header">MergeRepositoriesService <small>Resource</small></h1>

      <p>provide REST services on the top of stage merge repository plugin</p>
      <ul>
<li><a href="#resource_MergeRepositoriesService_getMergeConflictedArtifacts_GET">./mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}</a></li>
<li><a href="#resource_MergeRepositoriesService_mergeRepositories_GET">./mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}</a></li>
      </ul>

      <dl class="dl-horizontal">
        <dt>Available Since</dt>
        <dd>1.4-M3</dd>
      </dl>

      <div id="resource_MergeRepositoriesService_getMergeConflictedArtifacts_GET">
        <h2>GET <small>/mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId} <a href="./mergeRepositoriesService/mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p><b>permissions are checked in impl</b></p>

        <dl class="dl-horizontal">
          <dt>Available Since</dt>
          <dd>1.4-M3</dd>
        </dl>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>sourceRepositoryId</td>
            <td>path</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>targetRepositoryId</td>
            <td>path</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>

        <table class="table">
          <caption>Response Body</caption>
          <thead>
          <tr>
            <th>media type</th>
            <th>data type</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/json&quot; HTTP header to request that this media type be provided by the server.">application/json</abbr></td>
            <td>array of <a href="json_artifact.html">Artifact</a>
 (JSON)</td>
          </tr>
          <tr>
            <td><abbr data-toggle="tooltip" data-placement="top" title="Use the &quot;Accept: application/xml&quot; HTTP header to request that this media type be provided by the server.">application/xml</abbr></td>
            <td>list of <a href="xml_ns0_artifact.html">artifact</a>
 (XML)</td>
          </tr>
          </tbody>
        </table>
      </div>

      <dl class="dl-horizontal">
        <dt>Available Since</dt>
        <dd>1.4-M3</dd>
      </dl>

      <div id="resource_MergeRepositoriesService_mergeRepositories_GET">
        <h2>GET <small>/mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts} <a href="./mergeRepositoriesService/mergeRepositories/{sourceRepositoryId}/{targetRepositoryId}/{skipConflicts}" class="glyphicon glyphicon-new-window" target="_blank"></a></small></h2>

        <p><b>permissions are checked in impl</b></p>

        <dl class="dl-horizontal">
          <dt>Available Since</dt>
          <dd>1.4-M3</dd>
        </dl>

        <table class="table">
          <caption>Request Parameters</caption>
          <thead>
          <tr>
            <th>name</th>
            <th>type</th>
            <th>description</th>
            <th>default</th>
          </tr>
          </thead>
          <tbody>
          <tr>
            <td>skipConflicts</td>
            <td>path</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>sourceRepositoryId</td>
            <td>path</td>
            <td></td>
            <td>n/a</td>
          </tr>
          <tr>
            <td>targetRepositoryId</td>
            <td>path</td>
            <td></td>
            <td>n/a</td>
          </tr>
          </tbody>
        </table>
      </div>
        
        <footer>
          <div class="footer">
            Generated by <a href="http://enunciate.webcohesion.com">Enunciate</a>.
          </div>
        </footer>

      </div>
    
  </div>


  <!-- JavaScript placed at the end of the document so the pages load faster. -->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

  
  <!-- prettify code blocks. see http://code.google.com/p/google-code-prettify/ -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/prettify/r298/run_prettify.js" type="text/javascript"></script>
  

</body>
</html>
