<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>AbstractRepositoryAdminTest xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../testapidocs/org/apache/archiva/admin/repository/AbstractRepositoryAdminTest.html">View Javadoc</a></div><pre>
<a class="jxr_linenumber" name="L1" href="#L1">1</a>   <strong class="jxr_keyword">package</strong> org.apache.archiva.admin.repository;
<a class="jxr_linenumber" name="L2" href="#L2">2</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="L3" href="#L3">3</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="L4" href="#L4">4</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="L5" href="#L5">5</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a class="jxr_linenumber" name="L6" href="#L6">6</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="L7" href="#L7">7</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="L8" href="#L8">8</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="L9" href="#L9">9</a>   <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="L10" href="#L10">10</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L11" href="#L11">11</a>  <em class="jxr_comment"> *   <a href="http://www.apache.org/licenses/LICENSE-2." target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.</a>0</em>
<a class="jxr_linenumber" name="L12" href="#L12">12</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L13" href="#L13">13</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="L14" href="#L14">14</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="L15" href="#L15">15</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="L16" href="#L16">16</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="L17" href="#L17">17</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="L18" href="#L18">18</a>  <em class="jxr_comment"> * under the License.</em>
<a class="jxr_linenumber" name="L19" href="#L19">19</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="L20" href="#L20">20</a>  
<a class="jxr_linenumber" name="L21" href="#L21">21</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
<a class="jxr_linenumber" name="L22" href="#L22">22</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.mock.MockAuditListener;
<a class="jxr_linenumber" name="L23" href="#L23">23</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.AuditInformation;
<a class="jxr_linenumber" name="L24" href="#L24">24</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.beans.ManagedRepository;
<a class="jxr_linenumber" name="L25" href="#L25">25</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.beans.RemoteRepository;
<a class="jxr_linenumber" name="L26" href="#L26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.managed.ManagedRepositoryAdmin;
<a class="jxr_linenumber" name="L27" href="#L27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.proxyconnector.ProxyConnectorAdmin;
<a class="jxr_linenumber" name="L28" href="#L28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.proxyconnectorrule.ProxyConnectorRuleAdmin;
<a class="jxr_linenumber" name="L29" href="#L29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.remote.RemoteRepositoryAdmin;
<a class="jxr_linenumber" name="L30" href="#L30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.configuration.ArchivaConfiguration;
<a class="jxr_linenumber" name="L31" href="#L31">31</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.role.RoleManager;
<a class="jxr_linenumber" name="L32" href="#L32">32</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.users.User;
<a class="jxr_linenumber" name="L33" href="#L33">33</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.users.memory.SimpleUser;
<a class="jxr_linenumber" name="L34" href="#L34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner;
<a class="jxr_linenumber" name="L35" href="#L35">35</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.io.FileUtils;
<a class="jxr_linenumber" name="L36" href="#L36">36</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.StringUtils;
<a class="jxr_linenumber" name="L37" href="#L37">37</a>  <strong class="jxr_keyword">import</strong> org.junit.Before;
<a class="jxr_linenumber" name="L38" href="#L38">38</a>  <strong class="jxr_keyword">import</strong> org.junit.BeforeClass;
<a class="jxr_linenumber" name="L39" href="#L39">39</a>  <strong class="jxr_keyword">import</strong> org.junit.runner.RunWith;
<a class="jxr_linenumber" name="L40" href="#L40">40</a>  <strong class="jxr_keyword">import</strong> org.slf4j.Logger;
<a class="jxr_linenumber" name="L41" href="#L41">41</a>  <strong class="jxr_keyword">import</strong> org.slf4j.LoggerFactory;
<a class="jxr_linenumber" name="L42" href="#L42">42</a>  <strong class="jxr_keyword">import</strong> org.springframework.test.context.ContextConfiguration;
<a class="jxr_linenumber" name="L43" href="#L43">43</a>  
<a class="jxr_linenumber" name="L44" href="#L44">44</a>  <strong class="jxr_keyword">import</strong> javax.inject.Inject;
<a class="jxr_linenumber" name="L45" href="#L45">45</a>  <strong class="jxr_keyword">import</strong> javax.inject.Named;
<a class="jxr_linenumber" name="L46" href="#L46">46</a>  <strong class="jxr_keyword">import</strong> java.io.File;
<a class="jxr_linenumber" name="L47" href="#L47">47</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
<a class="jxr_linenumber" name="L48" href="#L48">48</a>  <strong class="jxr_keyword">import</strong> java.nio.file.Files;
<a class="jxr_linenumber" name="L49" href="#L49">49</a>  <strong class="jxr_keyword">import</strong> java.nio.file.Path;
<a class="jxr_linenumber" name="L50" href="#L50">50</a>  <strong class="jxr_keyword">import</strong> java.nio.file.Paths;
<a class="jxr_linenumber" name="L51" href="#L51">51</a>  <strong class="jxr_keyword">import</strong> java.util.HashMap;
<a class="jxr_linenumber" name="L52" href="#L52">52</a>  <strong class="jxr_keyword">import</strong> java.util.List;
<a class="jxr_linenumber" name="L53" href="#L53">53</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a class="jxr_linenumber" name="L54" href="#L54">54</a>  
<a class="jxr_linenumber" name="L55" href="#L55">55</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L56" href="#L56">56</a>  <em class="jxr_javadoccomment"> * @author Olivier Lamy</em>
<a class="jxr_linenumber" name="L57" href="#L57">57</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="L58" href="#L58">58</a>  @RunWith (ArchivaSpringJUnit4ClassRunner.<strong class="jxr_keyword">class</strong>)
<a class="jxr_linenumber" name="L59" href="#L59">59</a>  @ContextConfiguration (locations = { <span class="jxr_string">"classpath*:/META-INF/spring-context.xml"</span>, <span class="jxr_string">"classpath:/spring-context.xml"</span> })
<a class="jxr_linenumber" name="L60" href="#L60">60</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">abstract</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/apache/archiva/admin/repository/AbstractRepositoryAdminTest.html">AbstractRepositoryAdminTest</a>
<a class="jxr_linenumber" name="L61" href="#L61">61</a>      <strong class="jxr_keyword">extends</strong> TestCase
<a class="jxr_linenumber" name="L62" href="#L62">62</a>  {
<a class="jxr_linenumber" name="L63" href="#L63">63</a>      <strong class="jxr_keyword">protected</strong> Logger log = LoggerFactory.getLogger( getClass() );
<a class="jxr_linenumber" name="L64" href="#L64">64</a>  
<a class="jxr_linenumber" name="L65" href="#L65">65</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String APPSERVER_BASE_PATH =
<a class="jxr_linenumber" name="L66" href="#L66">66</a>          AbstractRepositoryAdminTest.fixPath( System.getProperty( <span class="jxr_string">"appserver.base"</span> ) );
<a class="jxr_linenumber" name="L67" href="#L67">67</a>  
<a class="jxr_linenumber" name="L68" href="#L68">68</a>      @Inject
<a class="jxr_linenumber" name="L69" href="#L69">69</a>      <strong class="jxr_keyword">protected</strong> <a href="../../../../../org/apache/archiva/admin/mock/MockAuditListener.html">MockAuditListener</a> mockAuditListener;
<a class="jxr_linenumber" name="L70" href="#L70">70</a>  
<a class="jxr_linenumber" name="L71" href="#L71">71</a>      @Inject
<a class="jxr_linenumber" name="L72" href="#L72">72</a>      <strong class="jxr_keyword">protected</strong> RoleManager roleManager;
<a class="jxr_linenumber" name="L73" href="#L73">73</a>  
<a class="jxr_linenumber" name="L74" href="#L74">74</a>      @Inject
<a class="jxr_linenumber" name="L75" href="#L75">75</a>      <strong class="jxr_keyword">protected</strong> RemoteRepositoryAdmin remoteRepositoryAdmin;
<a class="jxr_linenumber" name="L76" href="#L76">76</a>  
<a class="jxr_linenumber" name="L77" href="#L77">77</a>      @Inject
<a class="jxr_linenumber" name="L78" href="#L78">78</a>      <strong class="jxr_keyword">protected</strong> ManagedRepositoryAdmin managedRepositoryAdmin;
<a class="jxr_linenumber" name="L79" href="#L79">79</a>  
<a class="jxr_linenumber" name="L80" href="#L80">80</a>      @Inject
<a class="jxr_linenumber" name="L81" href="#L81">81</a>      <strong class="jxr_keyword">protected</strong> ProxyConnectorAdmin proxyConnectorAdmin;
<a class="jxr_linenumber" name="L82" href="#L82">82</a>  
<a class="jxr_linenumber" name="L83" href="#L83">83</a>      @Inject
<a class="jxr_linenumber" name="L84" href="#L84">84</a>      <strong class="jxr_keyword">protected</strong> ProxyConnectorRuleAdmin proxyConnectorRuleAdmin;
<a class="jxr_linenumber" name="L85" href="#L85">85</a>  
<a class="jxr_linenumber" name="L86" href="#L86">86</a>      @Inject
<a class="jxr_linenumber" name="L87" href="#L87">87</a>      <strong class="jxr_keyword">private</strong> ArchivaConfiguration archivaConfiguration;
<a class="jxr_linenumber" name="L88" href="#L88">88</a>  
<a class="jxr_linenumber" name="L89" href="#L89">89</a>      @Before
<a class="jxr_linenumber" name="L90" href="#L90">90</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> initialize() {
<a class="jxr_linenumber" name="L91" href="#L91">91</a>          Path confFile = Paths.get(System.getProperty( <span class="jxr_string">"appserver.base"</span> ), <span class="jxr_string">"conf/archiva.xml"</span>);
<a class="jxr_linenumber" name="L92" href="#L92">92</a>          <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L93" href="#L93">93</a>          {
<a class="jxr_linenumber" name="L94" href="#L94">94</a>              Files.deleteIfExists( confFile );
<a class="jxr_linenumber" name="L95" href="#L95">95</a>              archivaConfiguration.reload();
<a class="jxr_linenumber" name="L96" href="#L96">96</a>          }
<a class="jxr_linenumber" name="L97" href="#L97">97</a>          <strong class="jxr_keyword">catch</strong> ( IOException e )
<a class="jxr_linenumber" name="L98" href="#L98">98</a>          {
<a class="jxr_linenumber" name="L99" href="#L99">99</a>              <em class="jxr_comment">// ignore</em>
<a class="jxr_linenumber" name="L100" href="#L100">100</a>         }
<a class="jxr_linenumber" name="L101" href="#L101">101</a>     }
<a class="jxr_linenumber" name="L102" href="#L102">102</a> 
<a class="jxr_linenumber" name="L103" href="#L103">103</a>     <strong class="jxr_keyword">protected</strong> AuditInformation getFakeAuditInformation()
<a class="jxr_linenumber" name="L104" href="#L104">104</a>     {
<a class="jxr_linenumber" name="L105" href="#L105">105</a>         AuditInformation auditInformation = <strong class="jxr_keyword">new</strong> AuditInformation( getFakeUser(), <span class="jxr_string">"archiva-localhost"</span> );
<a class="jxr_linenumber" name="L106" href="#L106">106</a>         <strong class="jxr_keyword">return</strong> auditInformation;
<a class="jxr_linenumber" name="L107" href="#L107">107</a>     }
<a class="jxr_linenumber" name="L108" href="#L108">108</a> 
<a class="jxr_linenumber" name="L109" href="#L109">109</a>     <em class="jxr_comment">// make a nice repo path to allow unit test to run</em>
<a class="jxr_linenumber" name="L110" href="#L110">110</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> String fixPath( String path )
<a class="jxr_linenumber" name="L111" href="#L111">111</a>     {
<a class="jxr_linenumber" name="L112" href="#L112">112</a>         String SPACE = <span class="jxr_string">" "</span>;
<a class="jxr_linenumber" name="L113" href="#L113">113</a>         <strong class="jxr_keyword">if</strong> ( path.contains( SPACE ) )
<a class="jxr_linenumber" name="L114" href="#L114">114</a>         {
<a class="jxr_linenumber" name="L115" href="#L115">115</a>             LoggerFactory.getLogger( AbstractRepositoryAdminTest.<strong class="jxr_keyword">class</strong>.getName() ).error(
<a class="jxr_linenumber" name="L116" href="#L116">116</a>                 <span class="jxr_string">"You are building and testing  with {appserver.base}: \n "</span> + path
<a class="jxr_linenumber" name="L117" href="#L117">117</a>                     + <span class="jxr_string">" containing space. Consider relocating."</span> );
<a class="jxr_linenumber" name="L118" href="#L118">118</a>         }
<a class="jxr_linenumber" name="L119" href="#L119">119</a>         <strong class="jxr_keyword">return</strong> path.replaceAll( SPACE, <span class="jxr_string">"&amp;amp;20"</span> );
<a class="jxr_linenumber" name="L120" href="#L120">120</a>     }
<a class="jxr_linenumber" name="L121" href="#L121">121</a> 
<a class="jxr_linenumber" name="L122" href="#L122">122</a>     <strong class="jxr_keyword">protected</strong> User getFakeUser()
<a class="jxr_linenumber" name="L123" href="#L123">123</a>     {
<a class="jxr_linenumber" name="L124" href="#L124">124</a>         SimpleUser user = <strong class="jxr_keyword">new</strong> SimpleUser();
<a class="jxr_linenumber" name="L125" href="#L125">125</a> 
<a class="jxr_linenumber" name="L126" href="#L126">126</a>         user.setUsername( <span class="jxr_string">"root"</span> );
<a class="jxr_linenumber" name="L127" href="#L127">127</a>         user.setFullName( <span class="jxr_string">"The top user"</span> );
<a class="jxr_linenumber" name="L128" href="#L128">128</a>         <strong class="jxr_keyword">return</strong> user;
<a class="jxr_linenumber" name="L129" href="#L129">129</a>     }
<a class="jxr_linenumber" name="L130" href="#L130">130</a> 
<a class="jxr_linenumber" name="L131" href="#L131">131</a>     <strong class="jxr_keyword">protected</strong> ManagedRepository getTestManagedRepository( String repoId, String repoLocation )
<a class="jxr_linenumber" name="L132" href="#L132">132</a>     {
<a class="jxr_linenumber" name="L133" href="#L133">133</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> ManagedRepository( repoId, <span class="jxr_string">"test repo"</span>, repoLocation, <span class="jxr_string">"default"</span>, false, <strong class="jxr_keyword">true</strong>, <strong class="jxr_keyword">true</strong>, <span class="jxr_string">"0 0 * * * ?"</span>,
<a class="jxr_linenumber" name="L134" href="#L134">134</a>                                       repoLocation + <span class="jxr_string">"/.index"</span>, false, 1, 2, <strong class="jxr_keyword">true</strong>, false );
<a class="jxr_linenumber" name="L135" href="#L135">135</a>     }
<a class="jxr_linenumber" name="L136" href="#L136">136</a> 
<a class="jxr_linenumber" name="L137" href="#L137">137</a>     <strong class="jxr_keyword">protected</strong> File clearRepoLocation( String path )
<a class="jxr_linenumber" name="L138" href="#L138">138</a>         <strong class="jxr_keyword">throws</strong> Exception
<a class="jxr_linenumber" name="L139" href="#L139">139</a>     {
<a class="jxr_linenumber" name="L140" href="#L140">140</a>         File repoDir = <strong class="jxr_keyword">new</strong> File( path );
<a class="jxr_linenumber" name="L141" href="#L141">141</a>         <strong class="jxr_keyword">if</strong> ( repoDir.exists() )
<a class="jxr_linenumber" name="L142" href="#L142">142</a>         {
<a class="jxr_linenumber" name="L143" href="#L143">143</a>             FileUtils.deleteDirectory( repoDir );
<a class="jxr_linenumber" name="L144" href="#L144">144</a>         }
<a class="jxr_linenumber" name="L145" href="#L145">145</a>         assertFalse( repoDir.exists() );
<a class="jxr_linenumber" name="L146" href="#L146">146</a>         <strong class="jxr_keyword">return</strong> repoDir;
<a class="jxr_linenumber" name="L147" href="#L147">147</a>     }
<a class="jxr_linenumber" name="L148" href="#L148">148</a> 
<a class="jxr_linenumber" name="L149" href="#L149">149</a>     <strong class="jxr_keyword">protected</strong> ManagedRepository findManagedRepoById( List&lt;ManagedRepository&gt; repos, String id )
<a class="jxr_linenumber" name="L150" href="#L150">150</a>     {
<a class="jxr_linenumber" name="L151" href="#L151">151</a>         <strong class="jxr_keyword">for</strong> ( ManagedRepository repo : repos )
<a class="jxr_linenumber" name="L152" href="#L152">152</a>         {
<a class="jxr_linenumber" name="L153" href="#L153">153</a>             <strong class="jxr_keyword">if</strong> ( StringUtils.equals( id, repo.getId() ) )
<a class="jxr_linenumber" name="L154" href="#L154">154</a>             {
<a class="jxr_linenumber" name="L155" href="#L155">155</a>                 <strong class="jxr_keyword">return</strong> repo;
<a class="jxr_linenumber" name="L156" href="#L156">156</a>             }
<a class="jxr_linenumber" name="L157" href="#L157">157</a>         }
<a class="jxr_linenumber" name="L158" href="#L158">158</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L159" href="#L159">159</a>     }
<a class="jxr_linenumber" name="L160" href="#L160">160</a> 
<a class="jxr_linenumber" name="L161" href="#L161">161</a>     <strong class="jxr_keyword">protected</strong> RemoteRepository getRemoteRepository()
<a class="jxr_linenumber" name="L162" href="#L162">162</a>     {
<a class="jxr_linenumber" name="L163" href="#L163">163</a>         <strong class="jxr_keyword">return</strong> getRemoteRepository( <span class="jxr_string">"foo"</span> );
<a class="jxr_linenumber" name="L164" href="#L164">164</a>     }
<a class="jxr_linenumber" name="L165" href="#L165">165</a> 
<a class="jxr_linenumber" name="L166" href="#L166">166</a>     <strong class="jxr_keyword">protected</strong> RemoteRepository getRemoteRepository( String id )
<a class="jxr_linenumber" name="L167" href="#L167">167</a>     {
<a class="jxr_linenumber" name="L168" href="#L168">168</a>         RemoteRepository remoteRepository = <strong class="jxr_keyword">new</strong> RemoteRepository();
<a class="jxr_linenumber" name="L169" href="#L169">169</a>         remoteRepository.setUrl( <span class="jxr_string">"http://foo.com/maven-it-rocks"</span> );
<a class="jxr_linenumber" name="L170" href="#L170">170</a>         remoteRepository.setTimeout( 10 );
<a class="jxr_linenumber" name="L171" href="#L171">171</a>         remoteRepository.setName( <span class="jxr_string">"maven foo"</span> );
<a class="jxr_linenumber" name="L172" href="#L172">172</a>         remoteRepository.setUserName( <span class="jxr_string">"foo-name"</span> );
<a class="jxr_linenumber" name="L173" href="#L173">173</a>         remoteRepository.setPassword( <span class="jxr_string">"toto"</span> );
<a class="jxr_linenumber" name="L174" href="#L174">174</a>         remoteRepository.setId( id );
<a class="jxr_linenumber" name="L175" href="#L175">175</a>         remoteRepository.setRemoteDownloadNetworkProxyId( <span class="jxr_string">"foo"</span> );
<a class="jxr_linenumber" name="L176" href="#L176">176</a>         remoteRepository.setDescription( <span class="jxr_string">"cool apache repo"</span> );
<a class="jxr_linenumber" name="L177" href="#L177">177</a>         Map&lt;String, String&gt; extraParameters = <strong class="jxr_keyword">new</strong> HashMap&lt;&gt;();
<a class="jxr_linenumber" name="L178" href="#L178">178</a>         extraParameters.put( <span class="jxr_string">"foo"</span>, <span class="jxr_string">"bar"</span> );
<a class="jxr_linenumber" name="L179" href="#L179">179</a>         remoteRepository.setExtraParameters( extraParameters );
<a class="jxr_linenumber" name="L180" href="#L180">180</a>         Map&lt;String, String&gt; extraHeaders = <strong class="jxr_keyword">new</strong> HashMap&lt;&gt;();
<a class="jxr_linenumber" name="L181" href="#L181">181</a>         extraHeaders.put( <span class="jxr_string">"beer"</span>, <span class="jxr_string">"wine"</span> );
<a class="jxr_linenumber" name="L182" href="#L182">182</a>         remoteRepository.setExtraHeaders( extraHeaders );
<a class="jxr_linenumber" name="L183" href="#L183">183</a>         <strong class="jxr_keyword">return</strong> remoteRepository;
<a class="jxr_linenumber" name="L184" href="#L184">184</a>     }
<a class="jxr_linenumber" name="L185" href="#L185">185</a> }
</pre>
<hr/>
<div id="footer">Copyright &#169; 2006&#x2013;2022 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div>
</body>
</html>
