<!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>ArchivaDavResourceFactory xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/archiva/webdav/ArchivaDavResourceFactory.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.webdav;
<a class="jxr_linenumber" name="L2" href="#L2">2</a>   
<a class="jxr_linenumber" name="L3" href="#L3">3</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="L4" href="#L4">4</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="L5" href="#L5">5</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="L6" href="#L6">6</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a class="jxr_linenumber" name="L7" href="#L7">7</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="L8" href="#L8">8</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="L9" href="#L9">9</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="L10" href="#L10">10</a>  <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="L11" href="#L11">11</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L12" href="#L12">12</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="L13" href="#L13">13</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L14" href="#L14">14</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="L15" href="#L15">15</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="L16" href="#L16">16</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="L17" href="#L17">17</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="L18" href="#L18">18</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="L19" href="#L19">19</a>  <em class="jxr_comment"> * under the License.</em>
<a class="jxr_linenumber" name="L20" href="#L20">20</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="L21" href="#L21">21</a>  
<a class="jxr_linenumber" name="L22" href="#L22">22</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.RepositoryAdminException;
<a class="jxr_linenumber" name="L23" href="#L23">23</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.beans.ManagedRepository;
<a class="jxr_linenumber" name="L24" href="#L24">24</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.beans.RemoteRepository;
<a class="jxr_linenumber" name="L25" href="#L25">25</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.managed.ManagedRepositoryAdmin;
<a class="jxr_linenumber" name="L26" href="#L26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.admin.model.remote.RemoteRepositoryAdmin;
<a class="jxr_linenumber" name="L27" href="#L27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.audit.Auditable;
<a class="jxr_linenumber" name="L28" href="#L28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.common.filelock.FileLockManager;
<a class="jxr_linenumber" name="L29" href="#L29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.common.plexusbridge.PlexusSisuBridge;
<a class="jxr_linenumber" name="L30" href="#L30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.common.plexusbridge.PlexusSisuBridgeException;
<a class="jxr_linenumber" name="L31" href="#L31">31</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.common.utils.PathUtil;
<a class="jxr_linenumber" name="L32" href="#L32">32</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.common.utils.VersionUtil;
<a class="jxr_linenumber" name="L33" href="#L33">33</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.configuration.ArchivaConfiguration;
<a class="jxr_linenumber" name="L34" href="#L34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.configuration.RepositoryGroupConfiguration;
<a class="jxr_linenumber" name="L35" href="#L35">35</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.IndexMerger;
<a class="jxr_linenumber" name="L36" href="#L36">36</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.IndexMergerException;
<a class="jxr_linenumber" name="L37" href="#L37">37</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.IndexMergerRequest;
<a class="jxr_linenumber" name="L38" href="#L38">38</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.MergedRemoteIndexesTask;
<a class="jxr_linenumber" name="L39" href="#L39">39</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.MergedRemoteIndexesTaskRequest;
<a class="jxr_linenumber" name="L40" href="#L40">40</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.merger.TemporaryGroupIndex;
<a class="jxr_linenumber" name="L41" href="#L41">41</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.indexer.search.RepositorySearch;
<a class="jxr_linenumber" name="L42" href="#L42">42</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.maven2.metadata.MavenMetadataReader;
<a class="jxr_linenumber" name="L43" href="#L43">43</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.metadata.model.facets.AuditEvent;
<a class="jxr_linenumber" name="L44" href="#L44">44</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.metadata.repository.storage.RelocationException;
<a class="jxr_linenumber" name="L45" href="#L45">45</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.metadata.repository.storage.RepositoryStorage;
<a class="jxr_linenumber" name="L46" href="#L46">46</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.model.ArchivaRepositoryMetadata;
<a class="jxr_linenumber" name="L47" href="#L47">47</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.model.ArtifactReference;
<a class="jxr_linenumber" name="L48" href="#L48">48</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.policies.ProxyDownloadException;
<a class="jxr_linenumber" name="L49" href="#L49">49</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.proxy.model.RepositoryProxyConnectors;
<a class="jxr_linenumber" name="L50" href="#L50">50</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.authentication.AuthenticationException;
<a class="jxr_linenumber" name="L51" href="#L51">51</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.authentication.AuthenticationResult;
<a class="jxr_linenumber" name="L52" href="#L52">52</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.authorization.AuthorizationException;
<a class="jxr_linenumber" name="L53" href="#L53">53</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.authorization.UnauthorizedException;
<a class="jxr_linenumber" name="L54" href="#L54">54</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.integration.filter.authentication.HttpAuthenticator;
<a class="jxr_linenumber" name="L55" href="#L55">55</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.policy.AccountLockedException;
<a class="jxr_linenumber" name="L56" href="#L56">56</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.policy.MustChangePasswordException;
<a class="jxr_linenumber" name="L57" href="#L57">57</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.system.SecuritySession;
<a class="jxr_linenumber" name="L58" href="#L58">58</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.users.User;
<a class="jxr_linenumber" name="L59" href="#L59">59</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.redback.users.UserManager;
<a class="jxr_linenumber" name="L60" href="#L60">60</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.ManagedRepositoryContent;
<a class="jxr_linenumber" name="L61" href="#L61">61</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.RepositoryContentFactory;
<a class="jxr_linenumber" name="L62" href="#L62">62</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.RepositoryException;
<a class="jxr_linenumber" name="L63" href="#L63">63</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.RepositoryNotFoundException;
<a class="jxr_linenumber" name="L64" href="#L64">64</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.content.maven2.RepositoryRequest;
<a class="jxr_linenumber" name="L65" href="#L65">65</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.events.AuditListener;
<a class="jxr_linenumber" name="L66" href="#L66">66</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.layout.LayoutException;
<a class="jxr_linenumber" name="L67" href="#L67">67</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.metadata.MetadataTools;
<a class="jxr_linenumber" name="L68" href="#L68">68</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.metadata.RepositoryMetadataException;
<a class="jxr_linenumber" name="L69" href="#L69">69</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.metadata.RepositoryMetadataMerge;
<a class="jxr_linenumber" name="L70" href="#L70">70</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.repository.metadata.RepositoryMetadataWriter;
<a class="jxr_linenumber" name="L71" href="#L71">71</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.scheduler.repository.model.RepositoryArchivaTaskScheduler;
<a class="jxr_linenumber" name="L72" href="#L72">72</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.security.ServletAuthenticator;
<a class="jxr_linenumber" name="L73" href="#L73">73</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.webdav.util.MimeTypes;
<a class="jxr_linenumber" name="L74" href="#L74">74</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.webdav.util.TemporaryGroupIndexSessionCleaner;
<a class="jxr_linenumber" name="L75" href="#L75">75</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.webdav.util.WebdavMethodUtil;
<a class="jxr_linenumber" name="L76" href="#L76">76</a>  <strong class="jxr_keyword">import</strong> org.apache.archiva.xml.XMLException;
<a class="jxr_linenumber" name="L77" href="#L77">77</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.io.FileUtils;
<a class="jxr_linenumber" name="L78" href="#L78">78</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.io.FilenameUtils;
<a class="jxr_linenumber" name="L79" href="#L79">79</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.StringUtils;
<a class="jxr_linenumber" name="L80" href="#L80">80</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.SystemUtils;
<a class="jxr_linenumber" name="L81" href="#L81">81</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavException;
<a class="jxr_linenumber" name="L82" href="#L82">82</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavResource;
<a class="jxr_linenumber" name="L83" href="#L83">83</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavResourceFactory;
<a class="jxr_linenumber" name="L84" href="#L84">84</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavResourceLocator;
<a class="jxr_linenumber" name="L85" href="#L85">85</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavServletRequest;
<a class="jxr_linenumber" name="L86" href="#L86">86</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavServletResponse;
<a class="jxr_linenumber" name="L87" href="#L87">87</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.DavSession;
<a class="jxr_linenumber" name="L88" href="#L88">88</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.lock.LockManager;
<a class="jxr_linenumber" name="L89" href="#L89">89</a>  <strong class="jxr_keyword">import</strong> org.apache.jackrabbit.webdav.lock.SimpleLockManager;
<a class="jxr_linenumber" name="L90" href="#L90">90</a>  <strong class="jxr_keyword">import</strong> org.apache.maven.index.context.IndexingContext;
<a class="jxr_linenumber" name="L91" href="#L91">91</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.digest.ChecksumFile;
<a class="jxr_linenumber" name="L92" href="#L92">92</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.digest.Digester;
<a class="jxr_linenumber" name="L93" href="#L93">93</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.digest.DigesterException;
<a class="jxr_linenumber" name="L94" href="#L94">94</a>  <strong class="jxr_keyword">import</strong> org.slf4j.Logger;
<a class="jxr_linenumber" name="L95" href="#L95">95</a>  <strong class="jxr_keyword">import</strong> org.slf4j.LoggerFactory;
<a class="jxr_linenumber" name="L96" href="#L96">96</a>  <strong class="jxr_keyword">import</strong> org.slf4j.MarkerFactory;
<a class="jxr_linenumber" name="L97" href="#L97">97</a>  <strong class="jxr_keyword">import</strong> org.springframework.context.ApplicationContext;
<a class="jxr_linenumber" name="L98" href="#L98">98</a>  <strong class="jxr_keyword">import</strong> org.springframework.stereotype.Service;
<a class="jxr_linenumber" name="L99" href="#L99">99</a>  
<a class="jxr_linenumber" name="L100" href="#L100">100</a> <strong class="jxr_keyword">import</strong> javax.annotation.PostConstruct;
<a class="jxr_linenumber" name="L101" href="#L101">101</a> <strong class="jxr_keyword">import</strong> javax.inject.Inject;
<a class="jxr_linenumber" name="L102" href="#L102">102</a> <strong class="jxr_keyword">import</strong> javax.inject.Named;
<a class="jxr_linenumber" name="L103" href="#L103">103</a> <strong class="jxr_keyword">import</strong> javax.servlet.http.HttpServletResponse;
<a class="jxr_linenumber" name="L104" href="#L104">104</a> <strong class="jxr_keyword">import</strong> javax.servlet.http.HttpSession;
<a class="jxr_linenumber" name="L105" href="#L105">105</a> <strong class="jxr_keyword">import</strong> java.io.File;
<a class="jxr_linenumber" name="L106" href="#L106">106</a> <strong class="jxr_keyword">import</strong> java.io.IOException;
<a class="jxr_linenumber" name="L107" href="#L107">107</a> <strong class="jxr_keyword">import</strong> java.nio.file.Files;
<a class="jxr_linenumber" name="L108" href="#L108">108</a> <strong class="jxr_keyword">import</strong> java.util.ArrayList;
<a class="jxr_linenumber" name="L109" href="#L109">109</a> <strong class="jxr_keyword">import</strong> java.util.Date;
<a class="jxr_linenumber" name="L110" href="#L110">110</a> <strong class="jxr_keyword">import</strong> java.util.HashMap;
<a class="jxr_linenumber" name="L111" href="#L111">111</a> <strong class="jxr_keyword">import</strong> java.util.HashSet;
<a class="jxr_linenumber" name="L112" href="#L112">112</a> <strong class="jxr_keyword">import</strong> java.util.List;
<a class="jxr_linenumber" name="L113" href="#L113">113</a> <strong class="jxr_keyword">import</strong> java.util.Map;
<a class="jxr_linenumber" name="L114" href="#L114">114</a> <strong class="jxr_keyword">import</strong> java.util.Set;
<a class="jxr_linenumber" name="L115" href="#L115">115</a> 
<a class="jxr_linenumber" name="L116" href="#L116">116</a> <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L117" href="#L117">117</a> <em class="jxr_javadoccomment"> *</em>
<a class="jxr_linenumber" name="L118" href="#L118">118</a> <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="L119" href="#L119">119</a> @Service( <span class="jxr_string">"davResourceFactory#archiva"</span> )
<a class="jxr_linenumber" name="L120" href="#L120">120</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceFactory.html">ArchivaDavResourceFactory</a>
<a class="jxr_linenumber" name="L121" href="#L121">121</a>     <strong class="jxr_keyword">implements</strong> DavResourceFactory, Auditable
<a class="jxr_linenumber" name="L122" href="#L122">122</a> {
<a class="jxr_linenumber" name="L123" href="#L123">123</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String PROXIED_SUFFIX = <span class="jxr_string">" (proxied)"</span>;
<a class="jxr_linenumber" name="L124" href="#L124">124</a> 
<a class="jxr_linenumber" name="L125" href="#L125">125</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String HTTP_PUT_METHOD = <span class="jxr_string">"PUT"</span>;
<a class="jxr_linenumber" name="L126" href="#L126">126</a> 
<a class="jxr_linenumber" name="L127" href="#L127">127</a>     <strong class="jxr_keyword">private</strong> Logger log = LoggerFactory.getLogger( ArchivaDavResourceFactory.<strong class="jxr_keyword">class</strong> );
<a class="jxr_linenumber" name="L128" href="#L128">128</a> 
<a class="jxr_linenumber" name="L129" href="#L129">129</a>     @Inject
<a class="jxr_linenumber" name="L130" href="#L130">130</a>     <strong class="jxr_keyword">private</strong> List&lt;AuditListener&gt; auditListeners = <strong class="jxr_keyword">new</strong> ArrayList&lt;&gt;();
<a class="jxr_linenumber" name="L131" href="#L131">131</a> 
<a class="jxr_linenumber" name="L132" href="#L132">132</a>     @Inject
<a class="jxr_linenumber" name="L133" href="#L133">133</a>     <strong class="jxr_keyword">private</strong> RepositoryContentFactory repositoryFactory;
<a class="jxr_linenumber" name="L134" href="#L134">134</a> 
<a class="jxr_linenumber" name="L135" href="#L135">135</a>     <strong class="jxr_keyword">private</strong> RepositoryRequest repositoryRequest;
<a class="jxr_linenumber" name="L136" href="#L136">136</a> 
<a class="jxr_linenumber" name="L137" href="#L137">137</a>     @Inject
<a class="jxr_linenumber" name="L138" href="#L138">138</a>     @Named( value = <span class="jxr_string">"repositoryProxyConnectors#default"</span> )
<a class="jxr_linenumber" name="L139" href="#L139">139</a>     <strong class="jxr_keyword">private</strong> RepositoryProxyConnectors connectors;
<a class="jxr_linenumber" name="L140" href="#L140">140</a> 
<a class="jxr_linenumber" name="L141" href="#L141">141</a>     @Inject
<a class="jxr_linenumber" name="L142" href="#L142">142</a>     <strong class="jxr_keyword">private</strong> MetadataTools metadataTools;
<a class="jxr_linenumber" name="L143" href="#L143">143</a> 
<a class="jxr_linenumber" name="L144" href="#L144">144</a>     @Inject
<a class="jxr_linenumber" name="L145" href="#L145">145</a>     <strong class="jxr_keyword">private</strong> <a href="../../../../org/apache/archiva/webdav/util/MimeTypes.html">MimeTypes</a> mimeTypes;
<a class="jxr_linenumber" name="L146" href="#L146">146</a> 
<a class="jxr_linenumber" name="L147" href="#L147">147</a>     <strong class="jxr_keyword">private</strong> ArchivaConfiguration archivaConfiguration;
<a class="jxr_linenumber" name="L148" href="#L148">148</a> 
<a class="jxr_linenumber" name="L149" href="#L149">149</a>     @Inject
<a class="jxr_linenumber" name="L150" href="#L150">150</a>     <strong class="jxr_keyword">private</strong> ServletAuthenticator servletAuth;
<a class="jxr_linenumber" name="L151" href="#L151">151</a> 
<a class="jxr_linenumber" name="L152" href="#L152">152</a>     @Inject
<a class="jxr_linenumber" name="L153" href="#L153">153</a>     @Named( value = <span class="jxr_string">"httpAuthenticator#basic"</span> )
<a class="jxr_linenumber" name="L154" href="#L154">154</a>     <strong class="jxr_keyword">private</strong> HttpAuthenticator httpAuth;
<a class="jxr_linenumber" name="L155" href="#L155">155</a> 
<a class="jxr_linenumber" name="L156" href="#L156">156</a>     @Inject
<a class="jxr_linenumber" name="L157" href="#L157">157</a>     <strong class="jxr_keyword">private</strong> RemoteRepositoryAdmin remoteRepositoryAdmin;
<a class="jxr_linenumber" name="L158" href="#L158">158</a> 
<a class="jxr_linenumber" name="L159" href="#L159">159</a>     @Inject
<a class="jxr_linenumber" name="L160" href="#L160">160</a>     <strong class="jxr_keyword">private</strong> ManagedRepositoryAdmin managedRepositoryAdmin;
<a class="jxr_linenumber" name="L161" href="#L161">161</a> 
<a class="jxr_linenumber" name="L162" href="#L162">162</a>     @Inject
<a class="jxr_linenumber" name="L163" href="#L163">163</a>     <strong class="jxr_keyword">private</strong> IndexMerger indexMerger;
<a class="jxr_linenumber" name="L164" href="#L164">164</a> 
<a class="jxr_linenumber" name="L165" href="#L165">165</a>     @Inject
<a class="jxr_linenumber" name="L166" href="#L166">166</a>     <strong class="jxr_keyword">private</strong> RepositorySearch repositorySearch;
<a class="jxr_linenumber" name="L167" href="#L167">167</a> 
<a class="jxr_linenumber" name="L168" href="#L168">168</a>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L169" href="#L169">169</a> <em class="jxr_javadoccomment">     * Lock Manager - use simple implementation from JackRabbit</em>
<a class="jxr_linenumber" name="L170" href="#L170">170</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="L171" href="#L171">171</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> LockManager lockManager = <strong class="jxr_keyword">new</strong> SimpleLockManager();
<a class="jxr_linenumber" name="L172" href="#L172">172</a> 
<a class="jxr_linenumber" name="L173" href="#L173">173</a>     <strong class="jxr_keyword">private</strong> ChecksumFile checksum;
<a class="jxr_linenumber" name="L174" href="#L174">174</a> 
<a class="jxr_linenumber" name="L175" href="#L175">175</a>     <strong class="jxr_keyword">private</strong> Digester digestSha1;
<a class="jxr_linenumber" name="L176" href="#L176">176</a> 
<a class="jxr_linenumber" name="L177" href="#L177">177</a>     <strong class="jxr_keyword">private</strong> Digester digestMd5;
<a class="jxr_linenumber" name="L178" href="#L178">178</a> 
<a class="jxr_linenumber" name="L179" href="#L179">179</a>     @Inject
<a class="jxr_linenumber" name="L180" href="#L180">180</a>     @Named( value = <span class="jxr_string">"archivaTaskScheduler#repository"</span> )
<a class="jxr_linenumber" name="L181" href="#L181">181</a>     <strong class="jxr_keyword">private</strong> RepositoryArchivaTaskScheduler scheduler;
<a class="jxr_linenumber" name="L182" href="#L182">182</a> 
<a class="jxr_linenumber" name="L183" href="#L183">183</a>     @Inject
<a class="jxr_linenumber" name="L184" href="#L184">184</a>     @Named( value = <span class="jxr_string">"fileLockManager#default"</span> )
<a class="jxr_linenumber" name="L185" href="#L185">185</a>     <strong class="jxr_keyword">private</strong> FileLockManager fileLockManager;
<a class="jxr_linenumber" name="L186" href="#L186">186</a> 
<a class="jxr_linenumber" name="L187" href="#L187">187</a>     <strong class="jxr_keyword">private</strong> ApplicationContext applicationContext;
<a class="jxr_linenumber" name="L188" href="#L188">188</a> 
<a class="jxr_linenumber" name="L189" href="#L189">189</a>     @Inject
<a class="jxr_linenumber" name="L190" href="#L190">190</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceFactory.html">ArchivaDavResourceFactory</a>( ApplicationContext applicationContext, PlexusSisuBridge plexusSisuBridge,
<a class="jxr_linenumber" name="L191" href="#L191">191</a>                                       ArchivaConfiguration archivaConfiguration )
<a class="jxr_linenumber" name="L192" href="#L192">192</a>         <strong class="jxr_keyword">throws</strong> PlexusSisuBridgeException
<a class="jxr_linenumber" name="L193" href="#L193">193</a>     {
<a class="jxr_linenumber" name="L194" href="#L194">194</a>         <strong class="jxr_keyword">this</strong>.archivaConfiguration = archivaConfiguration;
<a class="jxr_linenumber" name="L195" href="#L195">195</a>         <strong class="jxr_keyword">this</strong>.applicationContext = applicationContext;
<a class="jxr_linenumber" name="L196" href="#L196">196</a>         <strong class="jxr_keyword">this</strong>.checksum = plexusSisuBridge.lookup( ChecksumFile.<strong class="jxr_keyword">class</strong> );
<a class="jxr_linenumber" name="L197" href="#L197">197</a> 
<a class="jxr_linenumber" name="L198" href="#L198">198</a>         <strong class="jxr_keyword">this</strong>.digestMd5 = plexusSisuBridge.lookup( Digester.<strong class="jxr_keyword">class</strong>, <span class="jxr_string">"md5"</span> );
<a class="jxr_linenumber" name="L199" href="#L199">199</a>         <strong class="jxr_keyword">this</strong>.digestSha1 = plexusSisuBridge.lookup( Digester.<strong class="jxr_keyword">class</strong>, <span class="jxr_string">"sha1"</span> );
<a class="jxr_linenumber" name="L200" href="#L200">200</a> 
<a class="jxr_linenumber" name="L201" href="#L201">201</a>         <em class="jxr_comment">// TODO remove this hard dependency on maven !!</em>
<a class="jxr_linenumber" name="L202" href="#L202">202</a>         repositoryRequest = <strong class="jxr_keyword">new</strong> RepositoryRequest( );
<a class="jxr_linenumber" name="L203" href="#L203">203</a>     }
<a class="jxr_linenumber" name="L204" href="#L204">204</a> 
<a class="jxr_linenumber" name="L205" href="#L205">205</a>     @PostConstruct
<a class="jxr_linenumber" name="L206" href="#L206">206</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> initialize()
<a class="jxr_linenumber" name="L207" href="#L207">207</a>     {
<a class="jxr_linenumber" name="L208" href="#L208">208</a>         <em class="jxr_comment">// no op</em>
<a class="jxr_linenumber" name="L209" href="#L209">209</a>     }
<a class="jxr_linenumber" name="L210" href="#L210">210</a> 
<a class="jxr_linenumber" name="L211" href="#L211">211</a>     @Override
<a class="jxr_linenumber" name="L212" href="#L212">212</a>     <strong class="jxr_keyword">public</strong> DavResource createResource( <strong class="jxr_keyword">final</strong> DavResourceLocator locator, <strong class="jxr_keyword">final</strong> DavServletRequest request,
<a class="jxr_linenumber" name="L213" href="#L213">213</a>                                        <strong class="jxr_keyword">final</strong> DavServletResponse response )
<a class="jxr_linenumber" name="L214" href="#L214">214</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L215" href="#L215">215</a>     {
<a class="jxr_linenumber" name="L216" href="#L216">216</a>         <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> archivaLocator = checkLocatorIsInstanceOfRepositoryLocator( locator );
<a class="jxr_linenumber" name="L217" href="#L217">217</a> 
<a class="jxr_linenumber" name="L218" href="#L218">218</a>         RepositoryGroupConfiguration repoGroupConfig =
<a class="jxr_linenumber" name="L219" href="#L219">219</a>             archivaConfiguration.getConfiguration().getRepositoryGroupsAsMap().get( archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L220" href="#L220">220</a> 
<a class="jxr_linenumber" name="L221" href="#L221">221</a>         String activePrincipal = getActivePrincipal( request );
<a class="jxr_linenumber" name="L222" href="#L222">222</a> 
<a class="jxr_linenumber" name="L223" href="#L223">223</a>         List&lt;String&gt; resourcesInAbsolutePath = <strong class="jxr_keyword">new</strong> ArrayList&lt;&gt;();
<a class="jxr_linenumber" name="L224" href="#L224">224</a> 
<a class="jxr_linenumber" name="L225" href="#L225">225</a>         <strong class="jxr_keyword">boolean</strong> readMethod = WebdavMethodUtil.isReadMethod( request.getMethod() );
<a class="jxr_linenumber" name="L226" href="#L226">226</a>         DavResource resource;
<a class="jxr_linenumber" name="L227" href="#L227">227</a>         <strong class="jxr_keyword">if</strong> ( repoGroupConfig != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L228" href="#L228">228</a>         {
<a class="jxr_linenumber" name="L229" href="#L229">229</a>             <strong class="jxr_keyword">if</strong> ( !readMethod )
<a class="jxr_linenumber" name="L230" href="#L230">230</a>             {
<a class="jxr_linenumber" name="L231" href="#L231">231</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_METHOD_NOT_ALLOWED,
<a class="jxr_linenumber" name="L232" href="#L232">232</a>                                         <span class="jxr_string">"Write method not allowed for repository groups."</span> );
<a class="jxr_linenumber" name="L233" href="#L233">233</a>             }
<a class="jxr_linenumber" name="L234" href="#L234">234</a> 
<a class="jxr_linenumber" name="L235" href="#L235">235</a>             log.debug( <span class="jxr_string">"Repository group '{}' accessed by '{}"</span>, repoGroupConfig.getId(), activePrincipal );
<a class="jxr_linenumber" name="L236" href="#L236">236</a> 
<a class="jxr_linenumber" name="L237" href="#L237">237</a>             <em class="jxr_comment">// handle browse requests for virtual repos</em>
<a class="jxr_linenumber" name="L238" href="#L238">238</a>             <strong class="jxr_keyword">if</strong> ( getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">true</strong> ).endsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L239" href="#L239">239</a>             {
<a class="jxr_linenumber" name="L240" href="#L240">240</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L241" href="#L241">241</a>                 {
<a class="jxr_linenumber" name="L242" href="#L242">242</a>                     DavResource davResource =
<a class="jxr_linenumber" name="L243" href="#L243">243</a>                         getResourceFromGroup( request, repoGroupConfig.getRepositories(), archivaLocator,
<a class="jxr_linenumber" name="L244" href="#L244">244</a>                                               repoGroupConfig );
<a class="jxr_linenumber" name="L245" href="#L245">245</a> 
<a class="jxr_linenumber" name="L246" href="#L246">246</a>                     setHeaders( response, locator, davResource, <strong class="jxr_keyword">true</strong> );
<a class="jxr_linenumber" name="L247" href="#L247">247</a> 
<a class="jxr_linenumber" name="L248" href="#L248">248</a>                     <strong class="jxr_keyword">return</strong> davResource;
<a class="jxr_linenumber" name="L249" href="#L249">249</a> 
<a class="jxr_linenumber" name="L250" href="#L250">250</a>                 }
<a class="jxr_linenumber" name="L251" href="#L251">251</a>                 <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L252" href="#L252">252</a>                 {
<a class="jxr_linenumber" name="L253" href="#L253">253</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L254" href="#L254">254</a>                 }
<a class="jxr_linenumber" name="L255" href="#L255">255</a>             }
<a class="jxr_linenumber" name="L256" href="#L256">256</a>             <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L257" href="#L257">257</a>             {
<a class="jxr_linenumber" name="L258" href="#L258">258</a>                 <em class="jxr_comment">// make a copy to avoid potential concurrent modifications (eg. by configuration)</em>
<a class="jxr_linenumber" name="L259" href="#L259">259</a>                 <em class="jxr_comment">// TODO: ultimately, locking might be more efficient than copying in this fashion since updates are</em>
<a class="jxr_linenumber" name="L260" href="#L260">260</a>                 <em class="jxr_comment">//  infrequent</em>
<a class="jxr_linenumber" name="L261" href="#L261">261</a>                 List&lt;String&gt; repositories = <strong class="jxr_keyword">new</strong> ArrayList&lt;&gt;( repoGroupConfig.getRepositories() );
<a class="jxr_linenumber" name="L262" href="#L262">262</a>                 resource = processRepositoryGroup( request, archivaLocator, repositories, activePrincipal,
<a class="jxr_linenumber" name="L263" href="#L263">263</a>                                                    resourcesInAbsolutePath, repoGroupConfig );
<a class="jxr_linenumber" name="L264" href="#L264">264</a>             }
<a class="jxr_linenumber" name="L265" href="#L265">265</a>         }
<a class="jxr_linenumber" name="L266" href="#L266">266</a>         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L267" href="#L267">267</a>         {
<a class="jxr_linenumber" name="L268" href="#L268">268</a> 
<a class="jxr_linenumber" name="L269" href="#L269">269</a>             <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L270" href="#L270">270</a>             {
<a class="jxr_linenumber" name="L271" href="#L271">271</a>                 RemoteRepository remoteRepository =
<a class="jxr_linenumber" name="L272" href="#L272">272</a>                     remoteRepositoryAdmin.getRemoteRepository( archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L273" href="#L273">273</a> 
<a class="jxr_linenumber" name="L274" href="#L274">274</a>                 <strong class="jxr_keyword">if</strong> ( remoteRepository != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L275" href="#L275">275</a>                 {
<a class="jxr_linenumber" name="L276" href="#L276">276</a>                     String logicalResource = getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, false );
<a class="jxr_linenumber" name="L277" href="#L277">277</a>                     IndexingContext indexingContext = remoteRepositoryAdmin.createIndexContext( remoteRepository );
<a class="jxr_linenumber" name="L278" href="#L278">278</a>                     File resourceFile = StringUtils.equals( logicalResource, <span class="jxr_string">"/"</span> )
<a class="jxr_linenumber" name="L279" href="#L279">279</a>                         ? <strong class="jxr_keyword">new</strong> File( indexingContext.getIndexDirectoryFile().getParent() )
<a class="jxr_linenumber" name="L280" href="#L280">280</a>                         : <strong class="jxr_keyword">new</strong> File( indexingContext.getIndexDirectoryFile().getParent(), logicalResource );
<a class="jxr_linenumber" name="L281" href="#L281">281</a>                     resource = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L282" href="#L282">282</a>                                                        locator.getResourcePath(), <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L283" href="#L283">283</a>                                                        <strong class="jxr_keyword">null</strong>, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L284" href="#L284">284</a>                                                        request.getRemoteAddr(), <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L285" href="#L285">285</a>                                                        activePrincipal, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L286" href="#L286">286</a>                                                        request.getDavSession(), <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L287" href="#L287">287</a>                                                        archivaLocator, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L288" href="#L288">288</a>                                                        <strong class="jxr_keyword">this</strong>, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L289" href="#L289">289</a>                                                        mimeTypes, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L290" href="#L290">290</a>                                                        auditListeners, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L291" href="#L291">291</a>                                                        scheduler, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L292" href="#L292">292</a>                                                        fileLockManager );
<a class="jxr_linenumber" name="L293" href="#L293">293</a>                     setHeaders( response, locator, resource, false );
<a class="jxr_linenumber" name="L294" href="#L294">294</a>                     <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L295" href="#L295">295</a>                 }
<a class="jxr_linenumber" name="L296" href="#L296">296</a>             }
<a class="jxr_linenumber" name="L297" href="#L297">297</a>             <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L298" href="#L298">298</a>             {
<a class="jxr_linenumber" name="L299" href="#L299">299</a>                 log.debug( <span class="jxr_string">"RepositoryException remote repository with d'{}' not found, msg: {}"</span>,
<a class="jxr_linenumber" name="L300" href="#L300">300</a>                            archivaLocator.getRepositoryId(), e.getMessage() );
<a class="jxr_linenumber" name="L301" href="#L301">301</a>             }
<a class="jxr_linenumber" name="L302" href="#L302">302</a> 
<a class="jxr_linenumber" name="L303" href="#L303">303</a>             ManagedRepositoryContent managedRepositoryContent = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L304" href="#L304">304</a> 
<a class="jxr_linenumber" name="L305" href="#L305">305</a>             <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L306" href="#L306">306</a>             {
<a class="jxr_linenumber" name="L307" href="#L307">307</a>                 managedRepositoryContent =
<a class="jxr_linenumber" name="L308" href="#L308">308</a>                     repositoryFactory.getManagedRepositoryContent( archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L309" href="#L309">309</a>             }
<a class="jxr_linenumber" name="L310" href="#L310">310</a>             <strong class="jxr_keyword">catch</strong> ( RepositoryNotFoundException e )
<a class="jxr_linenumber" name="L311" href="#L311">311</a>             {
<a class="jxr_linenumber" name="L312" href="#L312">312</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND,
<a class="jxr_linenumber" name="L313" href="#L313">313</a>                                         <span class="jxr_string">"Invalid repository: "</span> + archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L314" href="#L314">314</a>             }
<a class="jxr_linenumber" name="L315" href="#L315">315</a>             <strong class="jxr_keyword">catch</strong> ( RepositoryException e )
<a class="jxr_linenumber" name="L316" href="#L316">316</a>             {
<a class="jxr_linenumber" name="L317" href="#L317">317</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L318" href="#L318">318</a>             }
<a class="jxr_linenumber" name="L319" href="#L319">319</a> 
<a class="jxr_linenumber" name="L320" href="#L320">320</a>             log.debug( <span class="jxr_string">"Managed repository '{}' accessed by '{}'"</span>, managedRepositoryContent.getId(), activePrincipal );
<a class="jxr_linenumber" name="L321" href="#L321">321</a> 
<a class="jxr_linenumber" name="L322" href="#L322">322</a>             <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L323" href="#L323">323</a>             {
<a class="jxr_linenumber" name="L324" href="#L324">324</a>                 resource = processRepository( request, archivaLocator, activePrincipal, managedRepositoryContent,
<a class="jxr_linenumber" name="L325" href="#L325">325</a>                                               managedRepositoryAdmin.getManagedRepository(
<a class="jxr_linenumber" name="L326" href="#L326">326</a>                                                   archivaLocator.getRepositoryId() ) );
<a class="jxr_linenumber" name="L327" href="#L327">327</a> 
<a class="jxr_linenumber" name="L328" href="#L328">328</a>                 String logicalResource = getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, false );
<a class="jxr_linenumber" name="L329" href="#L329">329</a>                 resourcesInAbsolutePath.add(
<a class="jxr_linenumber" name="L330" href="#L330">330</a>                     <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot(), logicalResource ).getAbsolutePath() );
<a class="jxr_linenumber" name="L331" href="#L331">331</a> 
<a class="jxr_linenumber" name="L332" href="#L332">332</a>             }
<a class="jxr_linenumber" name="L333" href="#L333">333</a>             <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L334" href="#L334">334</a>             {
<a class="jxr_linenumber" name="L335" href="#L335">335</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L336" href="#L336">336</a>             }
<a class="jxr_linenumber" name="L337" href="#L337">337</a>         }
<a class="jxr_linenumber" name="L338" href="#L338">338</a> 
<a class="jxr_linenumber" name="L339" href="#L339">339</a>         String requestedResource = request.getRequestURI();
<a class="jxr_linenumber" name="L340" href="#L340">340</a> 
<a class="jxr_linenumber" name="L341" href="#L341">341</a>         <em class="jxr_comment">// MRM-872 : merge all available metadata</em>
<a class="jxr_linenumber" name="L342" href="#L342">342</a>         <em class="jxr_comment">// merge metadata only when requested via the repo group</em>
<a class="jxr_linenumber" name="L343" href="#L343">343</a>         <strong class="jxr_keyword">if</strong> ( ( repositoryRequest.isMetadata( requestedResource ) || repositoryRequest.isMetadataSupportFile(
<a class="jxr_linenumber" name="L344" href="#L344">344</a>             requestedResource ) ) &amp;&amp; repoGroupConfig != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L345" href="#L345">345</a>         {
<a class="jxr_linenumber" name="L346" href="#L346">346</a>             <em class="jxr_comment">// this should only be at the project level not version level!</em>
<a class="jxr_linenumber" name="L347" href="#L347">347</a>             <strong class="jxr_keyword">if</strong> ( isProjectReference( requestedResource ) )
<a class="jxr_linenumber" name="L348" href="#L348">348</a>             {
<a class="jxr_linenumber" name="L349" href="#L349">349</a> 
<a class="jxr_linenumber" name="L350" href="#L350">350</a>                 <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a> res = (ArchivaDavResource) resource;
<a class="jxr_linenumber" name="L351" href="#L351">351</a>                 String filePath =
<a class="jxr_linenumber" name="L352" href="#L352">352</a>                     StringUtils.substringBeforeLast( res.getLocalResource().getAbsolutePath().replace( '&#92;&#92;', '/' ),
<a class="jxr_linenumber" name="L353" href="#L353">353</a>                                                      <span class="jxr_string">"/"</span> );
<a class="jxr_linenumber" name="L354" href="#L354">354</a>                 filePath = filePath + <span class="jxr_string">"/maven-metadata-"</span> + repoGroupConfig.getId() + <span class="jxr_string">".xml"</span>;
<a class="jxr_linenumber" name="L355" href="#L355">355</a> 
<a class="jxr_linenumber" name="L356" href="#L356">356</a>                 <em class="jxr_comment">// for MRM-872 handle checksums of the merged metadata files</em>
<a class="jxr_linenumber" name="L357" href="#L357">357</a>                 <strong class="jxr_keyword">if</strong> ( repositoryRequest.isSupportFile( requestedResource ) )
<a class="jxr_linenumber" name="L358" href="#L358">358</a>                 {
<a class="jxr_linenumber" name="L359" href="#L359">359</a>                     File metadataChecksum =
<a class="jxr_linenumber" name="L360" href="#L360">360</a>                         <strong class="jxr_keyword">new</strong> File( filePath + <span class="jxr_string">"."</span> + StringUtils.substringAfterLast( requestedResource, <span class="jxr_string">"."</span> ) );
<a class="jxr_linenumber" name="L361" href="#L361">361</a> 
<a class="jxr_linenumber" name="L362" href="#L362">362</a>                     <strong class="jxr_keyword">if</strong> ( metadataChecksum.exists() )
<a class="jxr_linenumber" name="L363" href="#L363">363</a>                     {
<a class="jxr_linenumber" name="L364" href="#L364">364</a>                         <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a> logicalResource =
<a class="jxr_linenumber" name="L365" href="#L365">365</a>                             <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>( getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, false ) );
<a class="jxr_linenumber" name="L366" href="#L366">366</a> 
<a class="jxr_linenumber" name="L367" href="#L367">367</a>                         resource =
<a class="jxr_linenumber" name="L368" href="#L368">368</a>                             <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( metadataChecksum.getAbsolutePath(), logicalResource.getPath(), <strong class="jxr_keyword">null</strong>,
<a class="jxr_linenumber" name="L369" href="#L369">369</a>                                                     request.getRemoteAddr(), activePrincipal, request.getDavSession(),
<a class="jxr_linenumber" name="L370" href="#L370">370</a>                                                     archivaLocator, <strong class="jxr_keyword">this</strong>, mimeTypes, auditListeners, scheduler,
<a class="jxr_linenumber" name="L371" href="#L371">371</a>                                                     fileLockManager );
<a class="jxr_linenumber" name="L372" href="#L372">372</a>                     }
<a class="jxr_linenumber" name="L373" href="#L373">373</a>                 }
<a class="jxr_linenumber" name="L374" href="#L374">374</a>                 <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L375" href="#L375">375</a>                 {
<a class="jxr_linenumber" name="L376" href="#L376">376</a>                     <strong class="jxr_keyword">if</strong> ( resourcesInAbsolutePath != <strong class="jxr_keyword">null</strong> &amp;&amp; resourcesInAbsolutePath.size() &gt; 1 )
<a class="jxr_linenumber" name="L377" href="#L377">377</a>                     {
<a class="jxr_linenumber" name="L378" href="#L378">378</a>                         <em class="jxr_comment">// merge the metadata of all repos under group</em>
<a class="jxr_linenumber" name="L379" href="#L379">379</a>                         ArchivaRepositoryMetadata mergedMetadata = <strong class="jxr_keyword">new</strong> ArchivaRepositoryMetadata();
<a class="jxr_linenumber" name="L380" href="#L380">380</a>                         <strong class="jxr_keyword">for</strong> ( String resourceAbsPath : resourcesInAbsolutePath )
<a class="jxr_linenumber" name="L381" href="#L381">381</a>                         {
<a class="jxr_linenumber" name="L382" href="#L382">382</a>                             <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L383" href="#L383">383</a>                             {
<a class="jxr_linenumber" name="L384" href="#L384">384</a>                                 File metadataFile = <strong class="jxr_keyword">new</strong> File( resourceAbsPath );
<a class="jxr_linenumber" name="L385" href="#L385">385</a>                                 ArchivaRepositoryMetadata repoMetadata = MavenMetadataReader.read( metadataFile );
<a class="jxr_linenumber" name="L386" href="#L386">386</a>                                 mergedMetadata = RepositoryMetadataMerge.merge( mergedMetadata, repoMetadata );
<a class="jxr_linenumber" name="L387" href="#L387">387</a>                             }
<a class="jxr_linenumber" name="L388" href="#L388">388</a>                             <strong class="jxr_keyword">catch</strong> ( XMLException e )
<a class="jxr_linenumber" name="L389" href="#L389">389</a>                             {
<a class="jxr_linenumber" name="L390" href="#L390">390</a>                                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L391" href="#L391">391</a>                                                         <span class="jxr_string">"Error occurred while reading metadata file."</span> );
<a class="jxr_linenumber" name="L392" href="#L392">392</a>                             }
<a class="jxr_linenumber" name="L393" href="#L393">393</a>                             <strong class="jxr_keyword">catch</strong> ( RepositoryMetadataException r )
<a class="jxr_linenumber" name="L394" href="#L394">394</a>                             {
<a class="jxr_linenumber" name="L395" href="#L395">395</a>                                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L396" href="#L396">396</a>                                                         <span class="jxr_string">"Error occurred while merging metadata file."</span> );
<a class="jxr_linenumber" name="L397" href="#L397">397</a>                             }
<a class="jxr_linenumber" name="L398" href="#L398">398</a>                         }
<a class="jxr_linenumber" name="L399" href="#L399">399</a> 
<a class="jxr_linenumber" name="L400" href="#L400">400</a>                         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L401" href="#L401">401</a>                         {
<a class="jxr_linenumber" name="L402" href="#L402">402</a>                             File resourceFile = writeMergedMetadataToFile( mergedMetadata, filePath );
<a class="jxr_linenumber" name="L403" href="#L403">403</a> 
<a class="jxr_linenumber" name="L404" href="#L404">404</a>                             <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a> logicalResource =
<a class="jxr_linenumber" name="L405" href="#L405">405</a>                                 <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>( getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, false ) );
<a class="jxr_linenumber" name="L406" href="#L406">406</a> 
<a class="jxr_linenumber" name="L407" href="#L407">407</a>                             resource =
<a class="jxr_linenumber" name="L408" href="#L408">408</a>                                 <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), logicalResource.getPath(), <strong class="jxr_keyword">null</strong>,
<a class="jxr_linenumber" name="L409" href="#L409">409</a>                                                         request.getRemoteAddr(), activePrincipal,
<a class="jxr_linenumber" name="L410" href="#L410">410</a>                                                         request.getDavSession(), archivaLocator, <strong class="jxr_keyword">this</strong>, mimeTypes,
<a class="jxr_linenumber" name="L411" href="#L411">411</a>                                                         auditListeners, scheduler, fileLockManager );
<a class="jxr_linenumber" name="L412" href="#L412">412</a>                         }
<a class="jxr_linenumber" name="L413" href="#L413">413</a>                         <strong class="jxr_keyword">catch</strong> ( RepositoryMetadataException r )
<a class="jxr_linenumber" name="L414" href="#L414">414</a>                         {
<a class="jxr_linenumber" name="L415" href="#L415">415</a>                             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L416" href="#L416">416</a>                                                     <span class="jxr_string">"Error occurred while writing metadata file."</span> );
<a class="jxr_linenumber" name="L417" href="#L417">417</a>                         }
<a class="jxr_linenumber" name="L418" href="#L418">418</a>                         <strong class="jxr_keyword">catch</strong> ( IOException ie )
<a class="jxr_linenumber" name="L419" href="#L419">419</a>                         {
<a class="jxr_linenumber" name="L420" href="#L420">420</a>                             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L421" href="#L421">421</a>                                                     <span class="jxr_string">"Error occurred while generating checksum files."</span> );
<a class="jxr_linenumber" name="L422" href="#L422">422</a>                         }
<a class="jxr_linenumber" name="L423" href="#L423">423</a>                         <strong class="jxr_keyword">catch</strong> ( DigesterException de )
<a class="jxr_linenumber" name="L424" href="#L424">424</a>                         {
<a class="jxr_linenumber" name="L425" href="#L425">425</a>                             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L426" href="#L426">426</a>                                                     <span class="jxr_string">"Error occurred while generating checksum files."</span>
<a class="jxr_linenumber" name="L427" href="#L427">427</a>                                                         + de.getMessage() );
<a class="jxr_linenumber" name="L428" href="#L428">428</a>                         }
<a class="jxr_linenumber" name="L429" href="#L429">429</a>                     }
<a class="jxr_linenumber" name="L430" href="#L430">430</a>                 }
<a class="jxr_linenumber" name="L431" href="#L431">431</a>             }
<a class="jxr_linenumber" name="L432" href="#L432">432</a>         }
<a class="jxr_linenumber" name="L433" href="#L433">433</a> 
<a class="jxr_linenumber" name="L434" href="#L434">434</a>         setHeaders( response, locator, resource, false );
<a class="jxr_linenumber" name="L435" href="#L435">435</a> 
<a class="jxr_linenumber" name="L436" href="#L436">436</a>         <em class="jxr_comment">// compatibility with MRM-440 to ensure browsing the repository works ok</em>
<a class="jxr_linenumber" name="L437" href="#L437">437</a>         <strong class="jxr_keyword">if</strong> ( resource.isCollection() &amp;&amp; !request.getRequestURI().endsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L438" href="#L438">438</a>         {
<a class="jxr_linenumber" name="L439" href="#L439">439</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/BrowserRedirectException.html">BrowserRedirectException</a>( resource.getHref() );
<a class="jxr_linenumber" name="L440" href="#L440">440</a>         }
<a class="jxr_linenumber" name="L441" href="#L441">441</a>         resource.addLockManager( lockManager );
<a class="jxr_linenumber" name="L442" href="#L442">442</a>         <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L443" href="#L443">443</a>     }
<a class="jxr_linenumber" name="L444" href="#L444">444</a> 
<a class="jxr_linenumber" name="L445" href="#L445">445</a>     <strong class="jxr_keyword">private</strong> DavResource processRepositoryGroup( <strong class="jxr_keyword">final</strong> DavServletRequest request,
<a class="jxr_linenumber" name="L446" href="#L446">446</a>                                                 <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> archivaLocator, List&lt;String&gt; repositories,
<a class="jxr_linenumber" name="L447" href="#L447">447</a>                                                 String activePrincipal, List&lt;String&gt; resourcesInAbsolutePath,
<a class="jxr_linenumber" name="L448" href="#L448">448</a>                                                 RepositoryGroupConfiguration repoGroupConfig )
<a class="jxr_linenumber" name="L449" href="#L449">449</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L450" href="#L450">450</a>     {
<a class="jxr_linenumber" name="L451" href="#L451">451</a>         DavResource resource = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L452" href="#L452">452</a>         List&lt;DavException&gt; storedExceptions = <strong class="jxr_keyword">new</strong> ArrayList&lt;&gt;();
<a class="jxr_linenumber" name="L453" href="#L453">453</a> 
<a class="jxr_linenumber" name="L454" href="#L454">454</a>         String pathInfo = StringUtils.removeEnd( request.getPathInfo(), <span class="jxr_string">"/"</span> );
<a class="jxr_linenumber" name="L455" href="#L455">455</a> 
<a class="jxr_linenumber" name="L456" href="#L456">456</a>         String rootPath = StringUtils.substringBeforeLast( pathInfo, <span class="jxr_string">"/"</span> );
<a class="jxr_linenumber" name="L457" href="#L457">457</a> 
<a class="jxr_linenumber" name="L458" href="#L458">458</a>         <strong class="jxr_keyword">if</strong> ( StringUtils.endsWith( rootPath, repoGroupConfig.getMergedIndexPath() ) )
<a class="jxr_linenumber" name="L459" href="#L459">459</a>         {
<a class="jxr_linenumber" name="L460" href="#L460">460</a>             <em class="jxr_comment">// we are in the case of index file request</em>
<a class="jxr_linenumber" name="L461" href="#L461">461</a>             String requestedFileName = StringUtils.substringAfterLast( pathInfo, <span class="jxr_string">"/"</span> );
<a class="jxr_linenumber" name="L462" href="#L462">462</a>             File temporaryIndexDirectory =
<a class="jxr_linenumber" name="L463" href="#L463">463</a>                 buildMergedIndexDirectory( repositories, activePrincipal, request, repoGroupConfig );
<a class="jxr_linenumber" name="L464" href="#L464">464</a> 
<a class="jxr_linenumber" name="L465" href="#L465">465</a>             File resourceFile = <strong class="jxr_keyword">new</strong> File( temporaryIndexDirectory, requestedFileName );
<a class="jxr_linenumber" name="L466" href="#L466">466</a>             resource = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), requestedFileName, <strong class="jxr_keyword">null</strong>,
<a class="jxr_linenumber" name="L467" href="#L467">467</a>                                                request.getRemoteAddr(), activePrincipal, request.getDavSession(),
<a class="jxr_linenumber" name="L468" href="#L468">468</a>                                                archivaLocator, <strong class="jxr_keyword">this</strong>, mimeTypes, auditListeners, scheduler,
<a class="jxr_linenumber" name="L469" href="#L469">469</a>                                                fileLockManager );
<a class="jxr_linenumber" name="L470" href="#L470">470</a> 
<a class="jxr_linenumber" name="L471" href="#L471">471</a>         }
<a class="jxr_linenumber" name="L472" href="#L472">472</a>         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L473" href="#L473">473</a>         {
<a class="jxr_linenumber" name="L474" href="#L474">474</a>             <strong class="jxr_keyword">for</strong> ( String repositoryId : repositories )
<a class="jxr_linenumber" name="L475" href="#L475">475</a>             {
<a class="jxr_linenumber" name="L476" href="#L476">476</a>                 ManagedRepositoryContent managedRepositoryContent;
<a class="jxr_linenumber" name="L477" href="#L477">477</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L478" href="#L478">478</a>                 {
<a class="jxr_linenumber" name="L479" href="#L479">479</a>                     managedRepositoryContent = repositoryFactory.getManagedRepositoryContent( repositoryId );
<a class="jxr_linenumber" name="L480" href="#L480">480</a>                 }
<a class="jxr_linenumber" name="L481" href="#L481">481</a>                 <strong class="jxr_keyword">catch</strong> ( RepositoryNotFoundException e )
<a class="jxr_linenumber" name="L482" href="#L482">482</a>                 {
<a class="jxr_linenumber" name="L483" href="#L483">483</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L484" href="#L484">484</a>                 }
<a class="jxr_linenumber" name="L485" href="#L485">485</a>                 <strong class="jxr_keyword">catch</strong> ( RepositoryException e )
<a class="jxr_linenumber" name="L486" href="#L486">486</a>                 {
<a class="jxr_linenumber" name="L487" href="#L487">487</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L488" href="#L488">488</a>                 }
<a class="jxr_linenumber" name="L489" href="#L489">489</a> 
<a class="jxr_linenumber" name="L490" href="#L490">490</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L491" href="#L491">491</a>                 {
<a class="jxr_linenumber" name="L492" href="#L492">492</a>                     ManagedRepository managedRepository = managedRepositoryAdmin.getManagedRepository( repositoryId );
<a class="jxr_linenumber" name="L493" href="#L493">493</a>                     DavResource updatedResource =
<a class="jxr_linenumber" name="L494" href="#L494">494</a>                         processRepository( request, archivaLocator, activePrincipal, managedRepositoryContent,
<a class="jxr_linenumber" name="L495" href="#L495">495</a>                                            managedRepository );
<a class="jxr_linenumber" name="L496" href="#L496">496</a>                     <strong class="jxr_keyword">if</strong> ( resource == <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L497" href="#L497">497</a>                     {
<a class="jxr_linenumber" name="L498" href="#L498">498</a>                         resource = updatedResource;
<a class="jxr_linenumber" name="L499" href="#L499">499</a>                     }
<a class="jxr_linenumber" name="L500" href="#L500">500</a> 
<a class="jxr_linenumber" name="L501" href="#L501">501</a>                     String logicalResource = getLogicalResource( archivaLocator, <strong class="jxr_keyword">null</strong>, false );
<a class="jxr_linenumber" name="L502" href="#L502">502</a>                     <strong class="jxr_keyword">if</strong> ( logicalResource.endsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L503" href="#L503">503</a>                     {
<a class="jxr_linenumber" name="L504" href="#L504">504</a>                         logicalResource = logicalResource.substring( 1 );
<a class="jxr_linenumber" name="L505" href="#L505">505</a>                     }
<a class="jxr_linenumber" name="L506" href="#L506">506</a>                     resourcesInAbsolutePath.add(
<a class="jxr_linenumber" name="L507" href="#L507">507</a>                         <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot(), logicalResource ).getAbsolutePath() );
<a class="jxr_linenumber" name="L508" href="#L508">508</a>                 }
<a class="jxr_linenumber" name="L509" href="#L509">509</a>                 <strong class="jxr_keyword">catch</strong> ( DavException e )
<a class="jxr_linenumber" name="L510" href="#L510">510</a>                 {
<a class="jxr_linenumber" name="L511" href="#L511">511</a>                     storedExceptions.add( e );
<a class="jxr_linenumber" name="L512" href="#L512">512</a>                 }
<a class="jxr_linenumber" name="L513" href="#L513">513</a>                 <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L514" href="#L514">514</a>                 {
<a class="jxr_linenumber" name="L515" href="#L515">515</a>                     storedExceptions.add( <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e ) );
<a class="jxr_linenumber" name="L516" href="#L516">516</a>                 }
<a class="jxr_linenumber" name="L517" href="#L517">517</a>             }
<a class="jxr_linenumber" name="L518" href="#L518">518</a>         }
<a class="jxr_linenumber" name="L519" href="#L519">519</a>         <strong class="jxr_keyword">if</strong> ( resource == <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L520" href="#L520">520</a>         {
<a class="jxr_linenumber" name="L521" href="#L521">521</a>             <strong class="jxr_keyword">if</strong> ( !storedExceptions.isEmpty() )
<a class="jxr_linenumber" name="L522" href="#L522">522</a>             {
<a class="jxr_linenumber" name="L523" href="#L523">523</a>                 <em class="jxr_comment">// MRM-1232</em>
<a class="jxr_linenumber" name="L524" href="#L524">524</a>                 <strong class="jxr_keyword">for</strong> ( DavException e : storedExceptions )
<a class="jxr_linenumber" name="L525" href="#L525">525</a>                 {
<a class="jxr_linenumber" name="L526" href="#L526">526</a>                     <strong class="jxr_keyword">if</strong> ( 401 == e.getErrorCode() )
<a class="jxr_linenumber" name="L527" href="#L527">527</a>                     {
<a class="jxr_linenumber" name="L528" href="#L528">528</a>                         <strong class="jxr_keyword">throw</strong> e;
<a class="jxr_linenumber" name="L529" href="#L529">529</a>                     }
<a class="jxr_linenumber" name="L530" href="#L530">530</a>                 }
<a class="jxr_linenumber" name="L531" href="#L531">531</a> 
<a class="jxr_linenumber" name="L532" href="#L532">532</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND );
<a class="jxr_linenumber" name="L533" href="#L533">533</a>             }
<a class="jxr_linenumber" name="L534" href="#L534">534</a>             <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L535" href="#L535">535</a>             {
<a class="jxr_linenumber" name="L536" href="#L536">536</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND );
<a class="jxr_linenumber" name="L537" href="#L537">537</a>             }
<a class="jxr_linenumber" name="L538" href="#L538">538</a>         }
<a class="jxr_linenumber" name="L539" href="#L539">539</a>         <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L540" href="#L540">540</a>     }
<a class="jxr_linenumber" name="L541" href="#L541">541</a> 
<a class="jxr_linenumber" name="L542" href="#L542">542</a>     <strong class="jxr_keyword">private</strong> String getLogicalResource( ArchivaDavResourceLocator archivaLocator, ManagedRepository managedRepository,
<a class="jxr_linenumber" name="L543" href="#L543">543</a>                                        <strong class="jxr_keyword">boolean</strong> useOrigResourcePath )
<a class="jxr_linenumber" name="L544" href="#L544">544</a>     {
<a class="jxr_linenumber" name="L545" href="#L545">545</a>         <em class="jxr_comment">// FIXME remove this hack</em>
<a class="jxr_linenumber" name="L546" href="#L546">546</a>         <em class="jxr_comment">// but currently managedRepository can be null in case of group</em>
<a class="jxr_linenumber" name="L547" href="#L547">547</a>         String layout = managedRepository == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">new</strong> ManagedRepository().getLayout() : managedRepository.getLayout();
<a class="jxr_linenumber" name="L548" href="#L548">548</a>         RepositoryStorage repositoryStorage =
<a class="jxr_linenumber" name="L549" href="#L549">549</a>             <strong class="jxr_keyword">this</strong>.applicationContext.getBean( <span class="jxr_string">"repositoryStorage#"</span> + layout, RepositoryStorage.<strong class="jxr_keyword">class</strong> );
<a class="jxr_linenumber" name="L550" href="#L550">550</a>         String path = repositoryStorage.getFilePath(
<a class="jxr_linenumber" name="L551" href="#L551">551</a>             useOrigResourcePath ? archivaLocator.getOrigResourcePath() : archivaLocator.getResourcePath(),
<a class="jxr_linenumber" name="L552" href="#L552">552</a>             managedRepository );
<a class="jxr_linenumber" name="L553" href="#L553">553</a>         log.debug( <span class="jxr_string">"found path {} for resourcePath: '{}' with managedRepo '{}' and layout '{}'"</span>, path,
<a class="jxr_linenumber" name="L554" href="#L554">554</a>                    archivaLocator.getResourcePath(), managedRepository == <strong class="jxr_keyword">null</strong> ? <span class="jxr_string">"null"</span> : managedRepository.getId(),
<a class="jxr_linenumber" name="L555" href="#L555">555</a>                    layout );
<a class="jxr_linenumber" name="L556" href="#L556">556</a>         <strong class="jxr_keyword">return</strong> path;
<a class="jxr_linenumber" name="L557" href="#L557">557</a>     }
<a class="jxr_linenumber" name="L558" href="#L558">558</a> 
<a class="jxr_linenumber" name="L559" href="#L559">559</a>     <strong class="jxr_keyword">private</strong> String evaluatePathWithVersion( ArchivaDavResourceLocator archivaLocator, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L560" href="#L560">560</a>                                             ManagedRepositoryContent managedRepositoryContent, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L561" href="#L561">561</a>                                             String contextPath )
<a class="jxr_linenumber" name="L562" href="#L562">562</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L563" href="#L563">563</a>     {
<a class="jxr_linenumber" name="L564" href="#L564">564</a>         String layout = managedRepositoryContent.getRepository() == <strong class="jxr_keyword">null</strong>
<a class="jxr_linenumber" name="L565" href="#L565">565</a>             ? <strong class="jxr_keyword">new</strong> ManagedRepository().getLayout()
<a class="jxr_linenumber" name="L566" href="#L566">566</a>             : managedRepositoryContent.getRepository().getLayout();
<a class="jxr_linenumber" name="L567" href="#L567">567</a>         RepositoryStorage repositoryStorage =
<a class="jxr_linenumber" name="L568" href="#L568">568</a>             <strong class="jxr_keyword">this</strong>.applicationContext.getBean( <span class="jxr_string">"repositoryStorage#"</span> + layout, RepositoryStorage.<strong class="jxr_keyword">class</strong> );
<a class="jxr_linenumber" name="L569" href="#L569">569</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L570" href="#L570">570</a>         {
<a class="jxr_linenumber" name="L571" href="#L571">571</a>             <strong class="jxr_keyword">return</strong> repositoryStorage.getFilePathWithVersion( archivaLocator.getResourcePath(), <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L572" href="#L572">572</a>                                                              managedRepositoryContent );
<a class="jxr_linenumber" name="L573" href="#L573">573</a>         }
<a class="jxr_linenumber" name="L574" href="#L574">574</a>         <strong class="jxr_keyword">catch</strong> ( RelocationException e )
<a class="jxr_linenumber" name="L575" href="#L575">575</a>         {
<a class="jxr_linenumber" name="L576" href="#L576">576</a>             String path = e.getPath();
<a class="jxr_linenumber" name="L577" href="#L577">577</a>             log.debug( <span class="jxr_string">"Relocation to {}"</span>, path );
<a class="jxr_linenumber" name="L578" href="#L578">578</a> 
<a class="jxr_linenumber" name="L579" href="#L579">579</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/BrowserRedirectException.html">BrowserRedirectException</a>( addHrefPrefix( contextPath, path ), e.getRelocationType() );
<a class="jxr_linenumber" name="L580" href="#L580">580</a>         }
<a class="jxr_linenumber" name="L581" href="#L581">581</a>         <strong class="jxr_keyword">catch</strong> ( XMLException e )
<a class="jxr_linenumber" name="L582" href="#L582">582</a>         {
<a class="jxr_linenumber" name="L583" href="#L583">583</a>             log.error( e.getMessage(), e );
<a class="jxr_linenumber" name="L584" href="#L584">584</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L585" href="#L585">585</a>         }
<a class="jxr_linenumber" name="L586" href="#L586">586</a>     }
<a class="jxr_linenumber" name="L587" href="#L587">587</a> 
<a class="jxr_linenumber" name="L588" href="#L588">588</a>     <strong class="jxr_keyword">private</strong> DavResource processRepository( <strong class="jxr_keyword">final</strong> DavServletRequest request, ArchivaDavResourceLocator archivaLocator,
<a class="jxr_linenumber" name="L589" href="#L589">589</a>                                            String activePrincipal, ManagedRepositoryContent managedRepositoryContent,
<a class="jxr_linenumber" name="L590" href="#L590">590</a>                                            ManagedRepository managedRepository )
<a class="jxr_linenumber" name="L591" href="#L591">591</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L592" href="#L592">592</a>     {
<a class="jxr_linenumber" name="L593" href="#L593">593</a>         DavResource resource = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L594" href="#L594">594</a>         <strong class="jxr_keyword">if</strong> ( isAuthorized( request, managedRepositoryContent.getId() ) )
<a class="jxr_linenumber" name="L595" href="#L595">595</a>         {
<a class="jxr_linenumber" name="L596" href="#L596">596</a>             <strong class="jxr_keyword">boolean</strong> readMethod = WebdavMethodUtil.isReadMethod( request.getMethod() );
<a class="jxr_linenumber" name="L597" href="#L597">597</a>             <em class="jxr_comment">// Maven Centric part ask evaluation if -SNAPSHOT</em>
<a class="jxr_linenumber" name="L598" href="#L598">598</a>             <em class="jxr_comment">// MRM-1846 test if read method to prevent issue with maven 2.2.1 and uniqueVersion false</em>
<a class="jxr_linenumber" name="L599" href="#L599">599</a> 
<a class="jxr_linenumber" name="L600" href="#L600">600</a>             String path = readMethod
<a class="jxr_linenumber" name="L601" href="#L601">601</a>                 ? evaluatePathWithVersion( archivaLocator, managedRepositoryContent, request.getContextPath() )
<a class="jxr_linenumber" name="L602" href="#L602">602</a>                 : getLogicalResource( archivaLocator, managedRepository, false );
<a class="jxr_linenumber" name="L603" href="#L603">603</a>             <strong class="jxr_keyword">if</strong> ( path.startsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L604" href="#L604">604</a>             {
<a class="jxr_linenumber" name="L605" href="#L605">605</a>                 path = path.substring( 1 );
<a class="jxr_linenumber" name="L606" href="#L606">606</a>             }
<a class="jxr_linenumber" name="L607" href="#L607">607</a>             <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a> logicalResource = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>( path );
<a class="jxr_linenumber" name="L608" href="#L608">608</a>             File resourceFile = <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot(), path );
<a class="jxr_linenumber" name="L609" href="#L609">609</a>             resource =
<a class="jxr_linenumber" name="L610" href="#L610">610</a>                 <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), path, managedRepositoryContent.getRepository(),
<a class="jxr_linenumber" name="L611" href="#L611">611</a>                                         request.getRemoteAddr(), activePrincipal, request.getDavSession(),
<a class="jxr_linenumber" name="L612" href="#L612">612</a>                                         archivaLocator, <strong class="jxr_keyword">this</strong>, mimeTypes, auditListeners, scheduler, fileLockManager );
<a class="jxr_linenumber" name="L613" href="#L613">613</a> 
<a class="jxr_linenumber" name="L614" href="#L614">614</a>             <strong class="jxr_keyword">if</strong> ( WebdavMethodUtil.isReadMethod( request.getMethod() ) )
<a class="jxr_linenumber" name="L615" href="#L615">615</a>             {
<a class="jxr_linenumber" name="L616" href="#L616">616</a>                 <strong class="jxr_keyword">if</strong> ( archivaLocator.getHref( false ).endsWith( <span class="jxr_string">"/"</span> ) &amp;&amp; !resourceFile.isDirectory() )
<a class="jxr_linenumber" name="L617" href="#L617">617</a>                 {
<a class="jxr_linenumber" name="L618" href="#L618">618</a>                     <em class="jxr_comment">// force a resource not found</em>
<a class="jxr_linenumber" name="L619" href="#L619">619</a>                     <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND, <span class="jxr_string">"Resource does not exist"</span> );
<a class="jxr_linenumber" name="L620" href="#L620">620</a>                 }
<a class="jxr_linenumber" name="L621" href="#L621">621</a>                 <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L622" href="#L622">622</a>                 {
<a class="jxr_linenumber" name="L623" href="#L623">623</a>                     <strong class="jxr_keyword">if</strong> ( !resource.isCollection() )
<a class="jxr_linenumber" name="L624" href="#L624">624</a>                     {
<a class="jxr_linenumber" name="L625" href="#L625">625</a>                         <strong class="jxr_keyword">boolean</strong> previouslyExisted = resourceFile.exists();
<a class="jxr_linenumber" name="L626" href="#L626">626</a> 
<a class="jxr_linenumber" name="L627" href="#L627">627</a>                         <strong class="jxr_keyword">boolean</strong> fromProxy = fetchContentFromProxies( managedRepositoryContent, request, logicalResource );
<a class="jxr_linenumber" name="L628" href="#L628">628</a> 
<a class="jxr_linenumber" name="L629" href="#L629">629</a>                         <em class="jxr_comment">// At this point the incoming request can either be in default or</em>
<a class="jxr_linenumber" name="L630" href="#L630">630</a>                         <em class="jxr_comment">// legacy layout format.</em>
<a class="jxr_linenumber" name="L631" href="#L631">631</a>                         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L632" href="#L632">632</a>                         {
<a class="jxr_linenumber" name="L633" href="#L633">633</a>                             <em class="jxr_comment">// Perform an adjustment of the resource to the managed</em>
<a class="jxr_linenumber" name="L634" href="#L634">634</a>                             <em class="jxr_comment">// repository expected path.</em>
<a class="jxr_linenumber" name="L635" href="#L635">635</a>                             String localResourcePath =
<a class="jxr_linenumber" name="L636" href="#L636">636</a>                                 repositoryRequest.toNativePath( logicalResource.getPath(), managedRepositoryContent );
<a class="jxr_linenumber" name="L637" href="#L637">637</a>                             resourceFile = <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot(), localResourcePath );
<a class="jxr_linenumber" name="L638" href="#L638">638</a>                             resource =
<a class="jxr_linenumber" name="L639" href="#L639">639</a>                                 <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), logicalResource.getPath(),
<a class="jxr_linenumber" name="L640" href="#L640">640</a>                                                         managedRepositoryContent.getRepository(),
<a class="jxr_linenumber" name="L641" href="#L641">641</a>                                                         request.getRemoteAddr(), activePrincipal,
<a class="jxr_linenumber" name="L642" href="#L642">642</a>                                                         request.getDavSession(), archivaLocator, <strong class="jxr_keyword">this</strong>, mimeTypes,
<a class="jxr_linenumber" name="L643" href="#L643">643</a>                                                         auditListeners, scheduler, fileLockManager );
<a class="jxr_linenumber" name="L644" href="#L644">644</a>                         }
<a class="jxr_linenumber" name="L645" href="#L645">645</a>                         <strong class="jxr_keyword">catch</strong> ( LayoutException e )
<a class="jxr_linenumber" name="L646" href="#L646">646</a>                         {
<a class="jxr_linenumber" name="L647" href="#L647">647</a>                             <strong class="jxr_keyword">if</strong> ( !resourceFile.exists() )
<a class="jxr_linenumber" name="L648" href="#L648">648</a>                             {
<a class="jxr_linenumber" name="L649" href="#L649">649</a>                                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND, e );
<a class="jxr_linenumber" name="L650" href="#L650">650</a>                             }
<a class="jxr_linenumber" name="L651" href="#L651">651</a>                         }
<a class="jxr_linenumber" name="L652" href="#L652">652</a> 
<a class="jxr_linenumber" name="L653" href="#L653">653</a>                         <strong class="jxr_keyword">if</strong> ( fromProxy )
<a class="jxr_linenumber" name="L654" href="#L654">654</a>                         {
<a class="jxr_linenumber" name="L655" href="#L655">655</a>                             String action = ( previouslyExisted ? AuditEvent.MODIFY_FILE : AuditEvent.CREATE_FILE )
<a class="jxr_linenumber" name="L656" href="#L656">656</a>                                 + PROXIED_SUFFIX;
<a class="jxr_linenumber" name="L657" href="#L657">657</a> 
<a class="jxr_linenumber" name="L658" href="#L658">658</a>                             log.debug( <span class="jxr_string">"Proxied artifact '{}' in repository '{}' (current user '{}')"</span>,
<a class="jxr_linenumber" name="L659" href="#L659">659</a>                                        resourceFile.getName(), managedRepositoryContent.getId(), activePrincipal );
<a class="jxr_linenumber" name="L660" href="#L660">660</a> 
<a class="jxr_linenumber" name="L661" href="#L661">661</a>                             triggerAuditEvent( request.getRemoteAddr(), archivaLocator.getRepositoryId(),
<a class="jxr_linenumber" name="L662" href="#L662">662</a>                                                logicalResource.getPath(), action, activePrincipal );
<a class="jxr_linenumber" name="L663" href="#L663">663</a>                         }
<a class="jxr_linenumber" name="L664" href="#L664">664</a> 
<a class="jxr_linenumber" name="L665" href="#L665">665</a>                         <strong class="jxr_keyword">if</strong> ( !resourceFile.exists() )
<a class="jxr_linenumber" name="L666" href="#L666">666</a>                         {
<a class="jxr_linenumber" name="L667" href="#L667">667</a>                             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND, <span class="jxr_string">"Resource does not exist"</span> );
<a class="jxr_linenumber" name="L668" href="#L668">668</a>                         }
<a class="jxr_linenumber" name="L669" href="#L669">669</a>                     }
<a class="jxr_linenumber" name="L670" href="#L670">670</a>                 }
<a class="jxr_linenumber" name="L671" href="#L671">671</a>             }
<a class="jxr_linenumber" name="L672" href="#L672">672</a> 
<a class="jxr_linenumber" name="L673" href="#L673">673</a>             <strong class="jxr_keyword">if</strong> ( request.getMethod().equals( HTTP_PUT_METHOD ) )
<a class="jxr_linenumber" name="L674" href="#L674">674</a>             {
<a class="jxr_linenumber" name="L675" href="#L675">675</a>                 String resourcePath = logicalResource.getPath();
<a class="jxr_linenumber" name="L676" href="#L676">676</a> 
<a class="jxr_linenumber" name="L677" href="#L677">677</a>                 <em class="jxr_comment">// check if target repo is enabled for releases</em>
<a class="jxr_linenumber" name="L678" href="#L678">678</a>                 <em class="jxr_comment">// we suppose that release-artifacts can be deployed only to repos enabled for releases</em>
<a class="jxr_linenumber" name="L679" href="#L679">679</a>                 <strong class="jxr_keyword">if</strong> ( managedRepositoryContent.getRepository().isReleases() &amp;&amp; !repositoryRequest.isMetadata(
<a class="jxr_linenumber" name="L680" href="#L680">680</a>                     resourcePath ) &amp;&amp; !repositoryRequest.isSupportFile( resourcePath ) )
<a class="jxr_linenumber" name="L681" href="#L681">681</a>                 {
<a class="jxr_linenumber" name="L682" href="#L682">682</a>                     ArtifactReference artifact = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L683" href="#L683">683</a>                     <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L684" href="#L684">684</a>                     {
<a class="jxr_linenumber" name="L685" href="#L685">685</a>                         artifact = managedRepositoryContent.toArtifactReference( resourcePath );
<a class="jxr_linenumber" name="L686" href="#L686">686</a> 
<a class="jxr_linenumber" name="L687" href="#L687">687</a>                         <strong class="jxr_keyword">if</strong> ( !VersionUtil.isSnapshot( artifact.getVersion() ) )
<a class="jxr_linenumber" name="L688" href="#L688">688</a>                         {
<a class="jxr_linenumber" name="L689" href="#L689">689</a>                             <em class="jxr_comment">// check if artifact already exists and if artifact re-deployment to the repository is allowed</em>
<a class="jxr_linenumber" name="L690" href="#L690">690</a>                             <strong class="jxr_keyword">if</strong> ( managedRepositoryContent.hasContent( artifact )
<a class="jxr_linenumber" name="L691" href="#L691">691</a>                                 &amp;&amp; managedRepositoryContent.getRepository().isBlockRedeployments() )
<a class="jxr_linenumber" name="L692" href="#L692">692</a>                             {
<a class="jxr_linenumber" name="L693" href="#L693">693</a>                                 log.warn( <span class="jxr_string">"Overwriting released artifacts in repository '{}' is not allowed."</span>,
<a class="jxr_linenumber" name="L694" href="#L694">694</a>                                           managedRepositoryContent.getId() );
<a class="jxr_linenumber" name="L695" href="#L695">695</a>                                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_CONFLICT,
<a class="jxr_linenumber" name="L696" href="#L696">696</a>                                                         <span class="jxr_string">"Overwriting released artifacts is not allowed."</span> );
<a class="jxr_linenumber" name="L697" href="#L697">697</a>                             }
<a class="jxr_linenumber" name="L698" href="#L698">698</a>                         }
<a class="jxr_linenumber" name="L699" href="#L699">699</a>                     }
<a class="jxr_linenumber" name="L700" href="#L700">700</a>                     <strong class="jxr_keyword">catch</strong> ( LayoutException e )
<a class="jxr_linenumber" name="L701" href="#L701">701</a>                     {
<a class="jxr_linenumber" name="L702" href="#L702">702</a>                         log.warn( <span class="jxr_string">"Artifact path '{}' is invalid."</span>, resourcePath );
<a class="jxr_linenumber" name="L703" href="#L703">703</a>                     }
<a class="jxr_linenumber" name="L704" href="#L704">704</a>                 }
<a class="jxr_linenumber" name="L705" href="#L705">705</a> 
<a class="jxr_linenumber" name="L706" href="#L706">706</a>                 <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="L707" href="#L707">707</a> <em class="jxr_comment">                 * Create parent directories that don't exist when writing a file This actually makes this</em>
<a class="jxr_linenumber" name="L708" href="#L708">708</a> <em class="jxr_comment">                 * implementation not compliant to the WebDAV RFC - but we have enough knowledge about how the</em>
<a class="jxr_linenumber" name="L709" href="#L709">709</a> <em class="jxr_comment">                 * collection is being used to do this reasonably and some versions of Maven's WebDAV don't correctly</em>
<a class="jxr_linenumber" name="L710" href="#L710">710</a> <em class="jxr_comment">                 * create the collections themselves.</em>
<a class="jxr_linenumber" name="L711" href="#L711">711</a> <em class="jxr_comment">                 */</em>
<a class="jxr_linenumber" name="L712" href="#L712">712</a> 
<a class="jxr_linenumber" name="L713" href="#L713">713</a>                 File rootDirectory = <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot() );
<a class="jxr_linenumber" name="L714" href="#L714">714</a>                 File destDir = <strong class="jxr_keyword">new</strong> File( rootDirectory, logicalResource.getPath() ).getParentFile();
<a class="jxr_linenumber" name="L715" href="#L715">715</a> 
<a class="jxr_linenumber" name="L716" href="#L716">716</a>                 <strong class="jxr_keyword">if</strong> ( !destDir.exists() )
<a class="jxr_linenumber" name="L717" href="#L717">717</a>                 {
<a class="jxr_linenumber" name="L718" href="#L718">718</a>                     destDir.mkdirs();
<a class="jxr_linenumber" name="L719" href="#L719">719</a>                     String relPath = PathUtil.getRelative( rootDirectory.getAbsolutePath(), destDir );
<a class="jxr_linenumber" name="L720" href="#L720">720</a> 
<a class="jxr_linenumber" name="L721" href="#L721">721</a>                     log.debug( <span class="jxr_string">"Creating destination directory '{}' (current user '{}')"</span>, destDir.getName(),
<a class="jxr_linenumber" name="L722" href="#L722">722</a>                                activePrincipal );
<a class="jxr_linenumber" name="L723" href="#L723">723</a> 
<a class="jxr_linenumber" name="L724" href="#L724">724</a>                     triggerAuditEvent( request.getRemoteAddr(), managedRepositoryContent.getId(), relPath,
<a class="jxr_linenumber" name="L725" href="#L725">725</a>                                        AuditEvent.CREATE_DIR, activePrincipal );
<a class="jxr_linenumber" name="L726" href="#L726">726</a>                 }
<a class="jxr_linenumber" name="L727" href="#L727">727</a>             }
<a class="jxr_linenumber" name="L728" href="#L728">728</a>         }
<a class="jxr_linenumber" name="L729" href="#L729">729</a>         <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L730" href="#L730">730</a>     }
<a class="jxr_linenumber" name="L731" href="#L731">731</a> 
<a class="jxr_linenumber" name="L732" href="#L732">732</a>     @Override
<a class="jxr_linenumber" name="L733" href="#L733">733</a>     <strong class="jxr_keyword">public</strong> DavResource createResource( <strong class="jxr_keyword">final</strong> DavResourceLocator locator, <strong class="jxr_keyword">final</strong> DavSession davSession )
<a class="jxr_linenumber" name="L734" href="#L734">734</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L735" href="#L735">735</a>     {
<a class="jxr_linenumber" name="L736" href="#L736">736</a>         <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> archivaLocator = checkLocatorIsInstanceOfRepositoryLocator( locator );
<a class="jxr_linenumber" name="L737" href="#L737">737</a> 
<a class="jxr_linenumber" name="L738" href="#L738">738</a>         ManagedRepositoryContent managedRepositoryContent;
<a class="jxr_linenumber" name="L739" href="#L739">739</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L740" href="#L740">740</a>         {
<a class="jxr_linenumber" name="L741" href="#L741">741</a>             managedRepositoryContent =
<a class="jxr_linenumber" name="L742" href="#L742">742</a>                 repositoryFactory.getManagedRepositoryContent( archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L743" href="#L743">743</a>         }
<a class="jxr_linenumber" name="L744" href="#L744">744</a>         <strong class="jxr_keyword">catch</strong> ( RepositoryNotFoundException e )
<a class="jxr_linenumber" name="L745" href="#L745">745</a>         {
<a class="jxr_linenumber" name="L746" href="#L746">746</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND,
<a class="jxr_linenumber" name="L747" href="#L747">747</a>                                     <span class="jxr_string">"Invalid repository: "</span> + archivaLocator.getRepositoryId() );
<a class="jxr_linenumber" name="L748" href="#L748">748</a>         }
<a class="jxr_linenumber" name="L749" href="#L749">749</a>         <strong class="jxr_keyword">catch</strong> ( RepositoryException e )
<a class="jxr_linenumber" name="L750" href="#L750">750</a>         {
<a class="jxr_linenumber" name="L751" href="#L751">751</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L752" href="#L752">752</a>         }
<a class="jxr_linenumber" name="L753" href="#L753">753</a> 
<a class="jxr_linenumber" name="L754" href="#L754">754</a>         DavResource resource = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L755" href="#L755">755</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L756" href="#L756">756</a>         {
<a class="jxr_linenumber" name="L757" href="#L757">757</a>             String logicalResource = getLogicalResource( archivaLocator, managedRepositoryAdmin.getManagedRepository(
<a class="jxr_linenumber" name="L758" href="#L758">758</a>                 archivaLocator.getRepositoryId() ), false );
<a class="jxr_linenumber" name="L759" href="#L759">759</a>             <strong class="jxr_keyword">if</strong> ( logicalResource.startsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L760" href="#L760">760</a>             {
<a class="jxr_linenumber" name="L761" href="#L761">761</a>                 logicalResource = logicalResource.substring( 1 );
<a class="jxr_linenumber" name="L762" href="#L762">762</a>             }
<a class="jxr_linenumber" name="L763" href="#L763">763</a>             File resourceFile = <strong class="jxr_keyword">new</strong> File( managedRepositoryContent.getRepoRoot(), logicalResource );
<a class="jxr_linenumber" name="L764" href="#L764">764</a>             resource = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( resourceFile.getAbsolutePath(), logicalResource,
<a class="jxr_linenumber" name="L765" href="#L765">765</a>                                                managedRepositoryContent.getRepository(), davSession, archivaLocator,
<a class="jxr_linenumber" name="L766" href="#L766">766</a>                                                <strong class="jxr_keyword">this</strong>, mimeTypes, auditListeners, scheduler, fileLockManager );
<a class="jxr_linenumber" name="L767" href="#L767">767</a> 
<a class="jxr_linenumber" name="L768" href="#L768">768</a>             resource.addLockManager( lockManager );
<a class="jxr_linenumber" name="L769" href="#L769">769</a>         }
<a class="jxr_linenumber" name="L770" href="#L770">770</a>         <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L771" href="#L771">771</a>         {
<a class="jxr_linenumber" name="L772" href="#L772">772</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L773" href="#L773">773</a>         }
<a class="jxr_linenumber" name="L774" href="#L774">774</a>         <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L775" href="#L775">775</a>     }
<a class="jxr_linenumber" name="L776" href="#L776">776</a> 
<a class="jxr_linenumber" name="L777" href="#L777">777</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> fetchContentFromProxies( ManagedRepositoryContent managedRepository, DavServletRequest request,
<a class="jxr_linenumber" name="L778" href="#L778">778</a>                                              <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a> resource )
<a class="jxr_linenumber" name="L779" href="#L779">779</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L780" href="#L780">780</a>     {
<a class="jxr_linenumber" name="L781" href="#L781">781</a>         String path = resource.getPath();
<a class="jxr_linenumber" name="L782" href="#L782">782</a>         <strong class="jxr_keyword">if</strong> ( repositoryRequest.isSupportFile( path ) )
<a class="jxr_linenumber" name="L783" href="#L783">783</a>         {
<a class="jxr_linenumber" name="L784" href="#L784">784</a>             File proxiedFile = connectors.fetchFromProxies( managedRepository, path );
<a class="jxr_linenumber" name="L785" href="#L785">785</a> 
<a class="jxr_linenumber" name="L786" href="#L786">786</a>             <strong class="jxr_keyword">return</strong> ( proxiedFile != <strong class="jxr_keyword">null</strong> );
<a class="jxr_linenumber" name="L787" href="#L787">787</a>         }
<a class="jxr_linenumber" name="L788" href="#L788">788</a> 
<a class="jxr_linenumber" name="L789" href="#L789">789</a>         <em class="jxr_comment">// Is it a Metadata resource?</em>
<a class="jxr_linenumber" name="L790" href="#L790">790</a>         <strong class="jxr_keyword">if</strong> ( repositoryRequest.isDefault( path ) &amp;&amp; repositoryRequest.isMetadata( path ) )
<a class="jxr_linenumber" name="L791" href="#L791">791</a>         {
<a class="jxr_linenumber" name="L792" href="#L792">792</a>             <strong class="jxr_keyword">return</strong> connectors.fetchMetadataFromProxies( managedRepository, path ).isModified();
<a class="jxr_linenumber" name="L793" href="#L793">793</a>         }
<a class="jxr_linenumber" name="L794" href="#L794">794</a> 
<a class="jxr_linenumber" name="L795" href="#L795">795</a>         <em class="jxr_comment">// Is it an Archetype Catalog?</em>
<a class="jxr_linenumber" name="L796" href="#L796">796</a>         <strong class="jxr_keyword">if</strong> ( repositoryRequest.isArchetypeCatalog( path ) )
<a class="jxr_linenumber" name="L797" href="#L797">797</a>         {
<a class="jxr_linenumber" name="L798" href="#L798">798</a>             <em class="jxr_comment">// FIXME we must implement a merge of remote archetype catalog from remote servers.</em>
<a class="jxr_linenumber" name="L799" href="#L799">799</a>             File proxiedFile = connectors.fetchFromProxies( managedRepository, path );
<a class="jxr_linenumber" name="L800" href="#L800">800</a> 
<a class="jxr_linenumber" name="L801" href="#L801">801</a>             <strong class="jxr_keyword">return</strong> ( proxiedFile != <strong class="jxr_keyword">null</strong> );
<a class="jxr_linenumber" name="L802" href="#L802">802</a>         }
<a class="jxr_linenumber" name="L803" href="#L803">803</a> 
<a class="jxr_linenumber" name="L804" href="#L804">804</a>         <em class="jxr_comment">// Not any of the above? Then it's gotta be an artifact reference.</em>
<a class="jxr_linenumber" name="L805" href="#L805">805</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L806" href="#L806">806</a>         {
<a class="jxr_linenumber" name="L807" href="#L807">807</a>             <em class="jxr_comment">// Get the artifact reference in a layout neutral way.</em>
<a class="jxr_linenumber" name="L808" href="#L808">808</a>             ArtifactReference artifact = repositoryRequest.toArtifactReference( path );
<a class="jxr_linenumber" name="L809" href="#L809">809</a> 
<a class="jxr_linenumber" name="L810" href="#L810">810</a>             <strong class="jxr_keyword">if</strong> ( artifact != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L811" href="#L811">811</a>             {
<a class="jxr_linenumber" name="L812" href="#L812">812</a>                 String repositoryLayout = managedRepository.getRepository().getLayout();
<a class="jxr_linenumber" name="L813" href="#L813">813</a> 
<a class="jxr_linenumber" name="L814" href="#L814">814</a>                 RepositoryStorage repositoryStorage =
<a class="jxr_linenumber" name="L815" href="#L815">815</a>                     <strong class="jxr_keyword">this</strong>.applicationContext.getBean( <span class="jxr_string">"repositoryStorage#"</span> + repositoryLayout, RepositoryStorage.<strong class="jxr_keyword">class</strong> );
<a class="jxr_linenumber" name="L816" href="#L816">816</a>                 repositoryStorage.applyServerSideRelocation( managedRepository, artifact );
<a class="jxr_linenumber" name="L817" href="#L817">817</a> 
<a class="jxr_linenumber" name="L818" href="#L818">818</a>                 File proxiedFile = connectors.fetchFromProxies( managedRepository, artifact );
<a class="jxr_linenumber" name="L819" href="#L819">819</a> 
<a class="jxr_linenumber" name="L820" href="#L820">820</a>                 resource.setPath( managedRepository.toPath( artifact ) );
<a class="jxr_linenumber" name="L821" href="#L821">821</a> 
<a class="jxr_linenumber" name="L822" href="#L822">822</a>                 log.debug( <span class="jxr_string">"Proxied artifact '{}:{}:{}'"</span>, artifact.getGroupId(), artifact.getArtifactId(),
<a class="jxr_linenumber" name="L823" href="#L823">823</a>                            artifact.getVersion() );
<a class="jxr_linenumber" name="L824" href="#L824">824</a> 
<a class="jxr_linenumber" name="L825" href="#L825">825</a>                 <strong class="jxr_keyword">return</strong> ( proxiedFile != <strong class="jxr_keyword">null</strong> );
<a class="jxr_linenumber" name="L826" href="#L826">826</a>             }
<a class="jxr_linenumber" name="L827" href="#L827">827</a>         }
<a class="jxr_linenumber" name="L828" href="#L828">828</a>         <strong class="jxr_keyword">catch</strong> ( LayoutException e )
<a class="jxr_linenumber" name="L829" href="#L829">829</a>         {
<a class="jxr_linenumber" name="L830" href="#L830">830</a>             <em class="jxr_comment">/* eat it */</em>
<a class="jxr_linenumber" name="L831" href="#L831">831</a>         }
<a class="jxr_linenumber" name="L832" href="#L832">832</a>         <strong class="jxr_keyword">catch</strong> ( ProxyDownloadException e )
<a class="jxr_linenumber" name="L833" href="#L833">833</a>         {
<a class="jxr_linenumber" name="L834" href="#L834">834</a>             log.error( e.getMessage(), e );
<a class="jxr_linenumber" name="L835" href="#L835">835</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L836" href="#L836">836</a>                                     <span class="jxr_string">"Unable to fetch artifact resource."</span> );
<a class="jxr_linenumber" name="L837" href="#L837">837</a>         }
<a class="jxr_linenumber" name="L838" href="#L838">838</a>         <strong class="jxr_keyword">return</strong> false;
<a class="jxr_linenumber" name="L839" href="#L839">839</a>     }
<a class="jxr_linenumber" name="L840" href="#L840">840</a> 
<a class="jxr_linenumber" name="L841" href="#L841">841</a>     <em class="jxr_comment">// TODO: remove?</em>
<a class="jxr_linenumber" name="L842" href="#L842">842</a> 
<a class="jxr_linenumber" name="L843" href="#L843">843</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> triggerAuditEvent( String remoteIP, String repositoryId, String resource, String action,
<a class="jxr_linenumber" name="L844" href="#L844">844</a>                                     String principal )
<a class="jxr_linenumber" name="L845" href="#L845">845</a>     {
<a class="jxr_linenumber" name="L846" href="#L846">846</a>         AuditEvent event = <strong class="jxr_keyword">new</strong> AuditEvent( repositoryId, principal, resource, action );
<a class="jxr_linenumber" name="L847" href="#L847">847</a>         event.setRemoteIP( remoteIP );
<a class="jxr_linenumber" name="L848" href="#L848">848</a> 
<a class="jxr_linenumber" name="L849" href="#L849">849</a>         <strong class="jxr_keyword">for</strong> ( AuditListener listener : auditListeners )
<a class="jxr_linenumber" name="L850" href="#L850">850</a>         {
<a class="jxr_linenumber" name="L851" href="#L851">851</a>             listener.auditEvent( event );
<a class="jxr_linenumber" name="L852" href="#L852">852</a>         }
<a class="jxr_linenumber" name="L853" href="#L853">853</a>     }
<a class="jxr_linenumber" name="L854" href="#L854">854</a> 
<a class="jxr_linenumber" name="L855" href="#L855">855</a>     @Override
<a class="jxr_linenumber" name="L856" href="#L856">856</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> addAuditListener( AuditListener listener )
<a class="jxr_linenumber" name="L857" href="#L857">857</a>     {
<a class="jxr_linenumber" name="L858" href="#L858">858</a>         <strong class="jxr_keyword">this</strong>.auditListeners.add( listener );
<a class="jxr_linenumber" name="L859" href="#L859">859</a>     }
<a class="jxr_linenumber" name="L860" href="#L860">860</a> 
<a class="jxr_linenumber" name="L861" href="#L861">861</a>     @Override
<a class="jxr_linenumber" name="L862" href="#L862">862</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> clearAuditListeners()
<a class="jxr_linenumber" name="L863" href="#L863">863</a>     {
<a class="jxr_linenumber" name="L864" href="#L864">864</a>         <strong class="jxr_keyword">this</strong>.auditListeners.clear();
<a class="jxr_linenumber" name="L865" href="#L865">865</a>     }
<a class="jxr_linenumber" name="L866" href="#L866">866</a> 
<a class="jxr_linenumber" name="L867" href="#L867">867</a>     @Override
<a class="jxr_linenumber" name="L868" href="#L868">868</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> removeAuditListener( AuditListener listener )
<a class="jxr_linenumber" name="L869" href="#L869">869</a>     {
<a class="jxr_linenumber" name="L870" href="#L870">870</a>         <strong class="jxr_keyword">this</strong>.auditListeners.remove( listener );
<a class="jxr_linenumber" name="L871" href="#L871">871</a>     }
<a class="jxr_linenumber" name="L872" href="#L872">872</a> 
<a class="jxr_linenumber" name="L873" href="#L873">873</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> setHeaders( DavServletResponse response, DavResourceLocator locator, DavResource resource,
<a class="jxr_linenumber" name="L874" href="#L874">874</a>                              <strong class="jxr_keyword">boolean</strong> group )
<a class="jxr_linenumber" name="L875" href="#L875">875</a>     {
<a class="jxr_linenumber" name="L876" href="#L876">876</a>         <em class="jxr_comment">// [MRM-503] - Metadata file need Pragma:no-cache response</em>
<a class="jxr_linenumber" name="L877" href="#L877">877</a>         <em class="jxr_comment">// header.</em>
<a class="jxr_linenumber" name="L878" href="#L878">878</a>         <strong class="jxr_keyword">if</strong> ( locator.getResourcePath().endsWith( <span class="jxr_string">"/maven-metadata.xml"</span> ) || ( resource instanceof ArchivaDavResource
<a class="jxr_linenumber" name="L879" href="#L879">879</a>             &amp;&amp; ( ArchivaDavResource.<strong class="jxr_keyword">class</strong>.<strong class="jxr_keyword">cast</strong>( resource ).getLocalResource().isDirectory() ) ) )
<a class="jxr_linenumber" name="L880" href="#L880">880</a>         {
<a class="jxr_linenumber" name="L881" href="#L881">881</a>             response.setHeader( <span class="jxr_string">"Pragma"</span>, <span class="jxr_string">"no-cache"</span> );
<a class="jxr_linenumber" name="L882" href="#L882">882</a>             response.setHeader( <span class="jxr_string">"Cache-Control"</span>, <span class="jxr_string">"no-cache"</span> );
<a class="jxr_linenumber" name="L883" href="#L883">883</a>             response.setDateHeader( <span class="jxr_string">"Last-Modified"</span>, <strong class="jxr_keyword">new</strong> Date().getTime() );
<a class="jxr_linenumber" name="L884" href="#L884">884</a>         }
<a class="jxr_linenumber" name="L885" href="#L885">885</a>         <em class="jxr_comment">// if the resource is a directory don't cache it as new groupId deployed will be available</em>
<a class="jxr_linenumber" name="L886" href="#L886">886</a>         <em class="jxr_comment">// without need of refreshing browser</em>
<a class="jxr_linenumber" name="L887" href="#L887">887</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( locator.getResourcePath().endsWith( <span class="jxr_string">"/maven-metadata.xml"</span> ) || (
<a class="jxr_linenumber" name="L888" href="#L888">888</a>             resource instanceof <a href="../../../../org/apache/archiva/webdav/ArchivaVirtualDavResource.html">ArchivaVirtualDavResource</a> &amp;&amp; ( <strong class="jxr_keyword">new</strong> File(
<a class="jxr_linenumber" name="L889" href="#L889">889</a>                 ArchivaVirtualDavResource.<strong class="jxr_keyword">class</strong>.<strong class="jxr_keyword">cast</strong>( resource ).getLogicalResource() ).isDirectory() ) ) )
<a class="jxr_linenumber" name="L890" href="#L890">890</a>         {
<a class="jxr_linenumber" name="L891" href="#L891">891</a>             response.setHeader( <span class="jxr_string">"Pragma"</span>, <span class="jxr_string">"no-cache"</span> );
<a class="jxr_linenumber" name="L892" href="#L892">892</a>             response.setHeader( <span class="jxr_string">"Cache-Control"</span>, <span class="jxr_string">"no-cache"</span> );
<a class="jxr_linenumber" name="L893" href="#L893">893</a>             response.setDateHeader( <span class="jxr_string">"Last-Modified"</span>, <strong class="jxr_keyword">new</strong> Date().getTime() );
<a class="jxr_linenumber" name="L894" href="#L894">894</a>         }
<a class="jxr_linenumber" name="L895" href="#L895">895</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( group )
<a class="jxr_linenumber" name="L896" href="#L896">896</a>         {
<a class="jxr_linenumber" name="L897" href="#L897">897</a>             <strong class="jxr_keyword">if</strong> ( resource instanceof ArchivaVirtualDavResource )
<a class="jxr_linenumber" name="L898" href="#L898">898</a>             {
<a class="jxr_linenumber" name="L899" href="#L899">899</a>                 <em class="jxr_comment">//MRM-1854 here we have a directory so force "Last-Modified"</em>
<a class="jxr_linenumber" name="L900" href="#L900">900</a>                 response.setDateHeader( <span class="jxr_string">"Last-Modified"</span>, <strong class="jxr_keyword">new</strong> Date().getTime() );
<a class="jxr_linenumber" name="L901" href="#L901">901</a>             }
<a class="jxr_linenumber" name="L902" href="#L902">902</a>         }
<a class="jxr_linenumber" name="L903" href="#L903">903</a>         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L904" href="#L904">904</a>         {
<a class="jxr_linenumber" name="L905" href="#L905">905</a>             <em class="jxr_comment">// We need to specify this so connecting wagons can work correctly</em>
<a class="jxr_linenumber" name="L906" href="#L906">906</a>             response.setDateHeader( <span class="jxr_string">"Last-Modified"</span>, resource.getModificationTime() );
<a class="jxr_linenumber" name="L907" href="#L907">907</a>         }
<a class="jxr_linenumber" name="L908" href="#L908">908</a>         <em class="jxr_comment">// TODO: [MRM-524] determine http caching options for other types of files (artifacts, sha1, md5, snapshots)</em>
<a class="jxr_linenumber" name="L909" href="#L909">909</a>     }
<a class="jxr_linenumber" name="L910" href="#L910">910</a> 
<a class="jxr_linenumber" name="L911" href="#L911">911</a>     <strong class="jxr_keyword">private</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> checkLocatorIsInstanceOfRepositoryLocator( DavResourceLocator locator )
<a class="jxr_linenumber" name="L912" href="#L912">912</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L913" href="#L913">913</a>     {
<a class="jxr_linenumber" name="L914" href="#L914">914</a>         <strong class="jxr_keyword">if</strong> ( !( locator instanceof ArchivaDavResourceLocator ) )
<a class="jxr_linenumber" name="L915" href="#L915">915</a>         {
<a class="jxr_linenumber" name="L916" href="#L916">916</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L917" href="#L917">917</a>                                     <span class="jxr_string">"Locator does not implement RepositoryLocator"</span> );
<a class="jxr_linenumber" name="L918" href="#L918">918</a>         }
<a class="jxr_linenumber" name="L919" href="#L919">919</a> 
<a class="jxr_linenumber" name="L920" href="#L920">920</a>         <em class="jxr_comment">// Hidden paths</em>
<a class="jxr_linenumber" name="L921" href="#L921">921</a>         <strong class="jxr_keyword">if</strong> ( locator.getResourcePath().startsWith( ArchivaDavResource.HIDDEN_PATH_PREFIX ) )
<a class="jxr_linenumber" name="L922" href="#L922">922</a>         {
<a class="jxr_linenumber" name="L923" href="#L923">923</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NOT_FOUND );
<a class="jxr_linenumber" name="L924" href="#L924">924</a>         }
<a class="jxr_linenumber" name="L925" href="#L925">925</a> 
<a class="jxr_linenumber" name="L926" href="#L926">926</a>         <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> archivaLocator = (ArchivaDavResourceLocator) locator;
<a class="jxr_linenumber" name="L927" href="#L927">927</a> 
<a class="jxr_linenumber" name="L928" href="#L928">928</a>         <em class="jxr_comment">// MRM-419 - Windows Webdav support. Should not 404 if there is no content.</em>
<a class="jxr_linenumber" name="L929" href="#L929">929</a>         <strong class="jxr_keyword">if</strong> ( StringUtils.isEmpty( archivaLocator.getRepositoryId() ) )
<a class="jxr_linenumber" name="L930" href="#L930">930</a>         {
<a class="jxr_linenumber" name="L931" href="#L931">931</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_NO_CONTENT );
<a class="jxr_linenumber" name="L932" href="#L932">932</a>         }
<a class="jxr_linenumber" name="L933" href="#L933">933</a>         <strong class="jxr_keyword">return</strong> archivaLocator;
<a class="jxr_linenumber" name="L934" href="#L934">934</a>     }
<a class="jxr_linenumber" name="L935" href="#L935">935</a> 
<a class="jxr_linenumber" name="L936" href="#L936">936</a>     <strong class="jxr_keyword">private</strong> String addHrefPrefix( String contextPath, String path ) {
<a class="jxr_linenumber" name="L937" href="#L937">937</a>         String prefix = archivaConfiguration.getConfiguration().getWebapp().getUi().getApplicationUrl();
<a class="jxr_linenumber" name="L938" href="#L938">938</a>         <strong class="jxr_keyword">if</strong> (prefix == <strong class="jxr_keyword">null</strong> || prefix.isEmpty()) {
<a class="jxr_linenumber" name="L939" href="#L939">939</a>             prefix = contextPath;
<a class="jxr_linenumber" name="L940" href="#L940">940</a>         }
<a class="jxr_linenumber" name="L941" href="#L941">941</a>         <strong class="jxr_keyword">return</strong> prefix + ( StringUtils.startsWith( path, <span class="jxr_string">"/"</span> ) ? <span class="jxr_string">""</span> :
<a class="jxr_linenumber" name="L942" href="#L942">942</a>                         ( StringUtils.endsWith( prefix, <span class="jxr_string">"/"</span> ) ? <span class="jxr_string">""</span> : <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L943" href="#L943">943</a>                       + path;
<a class="jxr_linenumber" name="L944" href="#L944">944</a>     }
<a class="jxr_linenumber" name="L945" href="#L945">945</a> 
<a class="jxr_linenumber" name="L946" href="#L946">946</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>
<a class="jxr_linenumber" name="L947" href="#L947">947</a>     {
<a class="jxr_linenumber" name="L948" href="#L948">948</a>         <strong class="jxr_keyword">private</strong> String path;
<a class="jxr_linenumber" name="L949" href="#L949">949</a> 
<a class="jxr_linenumber" name="L950" href="#L950">950</a>         <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>( String path )
<a class="jxr_linenumber" name="L951" href="#L951">951</a>         {
<a class="jxr_linenumber" name="L952" href="#L952">952</a>             <strong class="jxr_keyword">this</strong>.path = path;
<a class="jxr_linenumber" name="L953" href="#L953">953</a>         }
<a class="jxr_linenumber" name="L954" href="#L954">954</a> 
<a class="jxr_linenumber" name="L955" href="#L955">955</a>         <strong class="jxr_keyword">public</strong> String getPath()
<a class="jxr_linenumber" name="L956" href="#L956">956</a>         {
<a class="jxr_linenumber" name="L957" href="#L957">957</a>             <strong class="jxr_keyword">return</strong> path;
<a class="jxr_linenumber" name="L958" href="#L958">958</a>         }
<a class="jxr_linenumber" name="L959" href="#L959">959</a> 
<a class="jxr_linenumber" name="L960" href="#L960">960</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setPath( String path )
<a class="jxr_linenumber" name="L961" href="#L961">961</a>         {
<a class="jxr_linenumber" name="L962" href="#L962">962</a>             <strong class="jxr_keyword">this</strong>.path = path;
<a class="jxr_linenumber" name="L963" href="#L963">963</a>         }
<a class="jxr_linenumber" name="L964" href="#L964">964</a>     }
<a class="jxr_linenumber" name="L965" href="#L965">965</a> 
<a class="jxr_linenumber" name="L966" href="#L966">966</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">boolean</strong> isAuthorized( DavServletRequest request, String repositoryId )
<a class="jxr_linenumber" name="L967" href="#L967">967</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L968" href="#L968">968</a>     {
<a class="jxr_linenumber" name="L969" href="#L969">969</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L970" href="#L970">970</a>         {
<a class="jxr_linenumber" name="L971" href="#L971">971</a>             AuthenticationResult result = httpAuth.getAuthenticationResult( request, <strong class="jxr_keyword">null</strong> );
<a class="jxr_linenumber" name="L972" href="#L972">972</a>             SecuritySession securitySession = httpAuth.getSecuritySession( request.getSession( <strong class="jxr_keyword">true</strong> ) );
<a class="jxr_linenumber" name="L973" href="#L973">973</a> 
<a class="jxr_linenumber" name="L974" href="#L974">974</a>             <strong class="jxr_keyword">return</strong> servletAuth.isAuthenticated( request, result ) <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L975" href="#L975">975</a>                 &amp;&amp; servletAuth.isAuthorized( request, securitySession, repositoryId, <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L976" href="#L976">976</a>                                              WebdavMethodUtil.getMethodPermission( request.getMethod() ) );
<a class="jxr_linenumber" name="L977" href="#L977">977</a>         }
<a class="jxr_linenumber" name="L978" href="#L978">978</a>         <strong class="jxr_keyword">catch</strong> ( AuthenticationException e )
<a class="jxr_linenumber" name="L979" href="#L979">979</a>         {
<a class="jxr_linenumber" name="L980" href="#L980">980</a>             <em class="jxr_comment">// safety check for MRM-911</em>
<a class="jxr_linenumber" name="L981" href="#L981">981</a>             String guest = UserManager.GUEST_USERNAME;
<a class="jxr_linenumber" name="L982" href="#L982">982</a>             <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L983" href="#L983">983</a>             {
<a class="jxr_linenumber" name="L984" href="#L984">984</a>                 <strong class="jxr_keyword">if</strong> ( servletAuth.isAuthorized( guest,
<a class="jxr_linenumber" name="L985" href="#L985">985</a>                                                ( (<a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a>) request.getRequestLocator() ).getRepositoryId(),
<a class="jxr_linenumber" name="L986" href="#L986">986</a>                                                WebdavMethodUtil.getMethodPermission( request.getMethod() ) ) )
<a class="jxr_linenumber" name="L987" href="#L987">987</a>                 {
<a class="jxr_linenumber" name="L988" href="#L988">988</a>                     <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L989" href="#L989">989</a>                 }
<a class="jxr_linenumber" name="L990" href="#L990">990</a>             }
<a class="jxr_linenumber" name="L991" href="#L991">991</a>             <strong class="jxr_keyword">catch</strong> ( UnauthorizedException ae )
<a class="jxr_linenumber" name="L992" href="#L992">992</a>             {
<a class="jxr_linenumber" name="L993" href="#L993">993</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( repositoryId,
<a class="jxr_linenumber" name="L994" href="#L994">994</a>                                                     <span class="jxr_string">"You are not authenticated and authorized to access any repository."</span> );
<a class="jxr_linenumber" name="L995" href="#L995">995</a>             }
<a class="jxr_linenumber" name="L996" href="#L996">996</a> 
<a class="jxr_linenumber" name="L997" href="#L997">997</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( repositoryId, <span class="jxr_string">"You are not authenticated"</span> );
<a class="jxr_linenumber" name="L998" href="#L998">998</a>         }
<a class="jxr_linenumber" name="L999" href="#L999">999</a>         <strong class="jxr_keyword">catch</strong> ( MustChangePasswordException e )
<a class="jxr_linenumber" name="L1000" href="#L1000">1000</a>         {
<a class="jxr_linenumber" name="L1001" href="#L1001">1001</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( repositoryId, <span class="jxr_string">"You must change your password."</span> );
<a class="jxr_linenumber" name="L1002" href="#L1002">1002</a>         }
<a class="jxr_linenumber" name="L1003" href="#L1003">1003</a>         <strong class="jxr_keyword">catch</strong> ( AccountLockedException e )
<a class="jxr_linenumber" name="L1004" href="#L1004">1004</a>         {
<a class="jxr_linenumber" name="L1005" href="#L1005">1005</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( repositoryId, <span class="jxr_string">"User account is locked."</span> );
<a class="jxr_linenumber" name="L1006" href="#L1006">1006</a>         }
<a class="jxr_linenumber" name="L1007" href="#L1007">1007</a>         <strong class="jxr_keyword">catch</strong> ( AuthorizationException e )
<a class="jxr_linenumber" name="L1008" href="#L1008">1008</a>         {
<a class="jxr_linenumber" name="L1009" href="#L1009">1009</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L1010" href="#L1010">1010</a>                                     <span class="jxr_string">"Fatal Authorization Subsystem Error."</span> );
<a class="jxr_linenumber" name="L1011" href="#L1011">1011</a>         }
<a class="jxr_linenumber" name="L1012" href="#L1012">1012</a>         <strong class="jxr_keyword">catch</strong> ( UnauthorizedException e )
<a class="jxr_linenumber" name="L1013" href="#L1013">1013</a>         {
<a class="jxr_linenumber" name="L1014" href="#L1014">1014</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( repositoryId, e.getMessage() );
<a class="jxr_linenumber" name="L1015" href="#L1015">1015</a>         }
<a class="jxr_linenumber" name="L1016" href="#L1016">1016</a>     }
<a class="jxr_linenumber" name="L1017" href="#L1017">1017</a> 
<a class="jxr_linenumber" name="L1018" href="#L1018">1018</a>     <strong class="jxr_keyword">private</strong> DavResource getResourceFromGroup( DavServletRequest request, List&lt;String&gt; repositories,
<a class="jxr_linenumber" name="L1019" href="#L1019">1019</a>                                               <a href="../../../../org/apache/archiva/webdav/ArchivaDavResourceLocator.html">ArchivaDavResourceLocator</a> locator,
<a class="jxr_linenumber" name="L1020" href="#L1020">1020</a>                                               RepositoryGroupConfiguration repositoryGroupConfiguration )
<a class="jxr_linenumber" name="L1021" href="#L1021">1021</a>         <strong class="jxr_keyword">throws</strong> DavException, RepositoryAdminException
<a class="jxr_linenumber" name="L1022" href="#L1022">1022</a>     {
<a class="jxr_linenumber" name="L1023" href="#L1023">1023</a>         <strong class="jxr_keyword">if</strong> ( repositoryGroupConfiguration.getRepositories() == <strong class="jxr_keyword">null</strong>
<a class="jxr_linenumber" name="L1024" href="#L1024">1024</a>             || repositoryGroupConfiguration.getRepositories().isEmpty() )
<a class="jxr_linenumber" name="L1025" href="#L1025">1025</a>         {
<a class="jxr_linenumber" name="L1026" href="#L1026">1026</a>             File file =
<a class="jxr_linenumber" name="L1027" href="#L1027">1027</a>                 <strong class="jxr_keyword">new</strong> File( System.getProperty( <span class="jxr_string">"appserver.base"</span> ), <span class="jxr_string">"groups/"</span> + repositoryGroupConfiguration.getId() );
<a class="jxr_linenumber" name="L1028" href="#L1028">1028</a> 
<a class="jxr_linenumber" name="L1029" href="#L1029">1029</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaDavResource.html">ArchivaDavResource</a>( file.getPath(), <span class="jxr_string">"groups/"</span> + repositoryGroupConfiguration.getId(), <strong class="jxr_keyword">null</strong>,
<a class="jxr_linenumber" name="L1030" href="#L1030">1030</a>                                            request.getDavSession(), locator, <strong class="jxr_keyword">this</strong>, mimeTypes, auditListeners, scheduler,
<a class="jxr_linenumber" name="L1031" href="#L1031">1031</a>                                            fileLockManager );
<a class="jxr_linenumber" name="L1032" href="#L1032">1032</a>         }
<a class="jxr_linenumber" name="L1033" href="#L1033">1033</a>         List&lt;File&gt; mergedRepositoryContents = <strong class="jxr_keyword">new</strong> ArrayList&lt;&gt;();
<a class="jxr_linenumber" name="L1034" href="#L1034">1034</a>         <em class="jxr_comment">// multiple repo types so we guess they are all the same type</em>
<a class="jxr_linenumber" name="L1035" href="#L1035">1035</a>         <em class="jxr_comment">// so use the first one</em>
<a class="jxr_linenumber" name="L1036" href="#L1036">1036</a>         <em class="jxr_comment">// FIXME add a method with group in the repository storage</em>
<a class="jxr_linenumber" name="L1037" href="#L1037">1037</a>         String firstRepoId = repositoryGroupConfiguration.getRepositories().get( 0 );
<a class="jxr_linenumber" name="L1038" href="#L1038">1038</a> 
<a class="jxr_linenumber" name="L1039" href="#L1039">1039</a>         String path = getLogicalResource( locator, managedRepositoryAdmin.getManagedRepository( firstRepoId ), false );
<a class="jxr_linenumber" name="L1040" href="#L1040">1040</a>         <strong class="jxr_keyword">if</strong> ( path.startsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L1041" href="#L1041">1041</a>         {
<a class="jxr_linenumber" name="L1042" href="#L1042">1042</a>             path = path.substring( 1 );
<a class="jxr_linenumber" name="L1043" href="#L1043">1043</a>         }
<a class="jxr_linenumber" name="L1044" href="#L1044">1044</a>         <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a> logicalResource = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/LogicalResource.html">LogicalResource</a>( path );
<a class="jxr_linenumber" name="L1045" href="#L1045">1045</a> 
<a class="jxr_linenumber" name="L1046" href="#L1046">1046</a>         <em class="jxr_comment">// flow:</em>
<a class="jxr_linenumber" name="L1047" href="#L1047">1047</a>         <em class="jxr_comment">// if the current user logged in has permission to any of the repositories, allow user to</em>
<a class="jxr_linenumber" name="L1048" href="#L1048">1048</a>         <em class="jxr_comment">// browse the repo group but displaying only the repositories which the user has permission to access.</em>
<a class="jxr_linenumber" name="L1049" href="#L1049">1049</a>         <em class="jxr_comment">// otherwise, prompt for authentication.</em>
<a class="jxr_linenumber" name="L1050" href="#L1050">1050</a> 
<a class="jxr_linenumber" name="L1051" href="#L1051">1051</a>         String activePrincipal = getActivePrincipal( request );
<a class="jxr_linenumber" name="L1052" href="#L1052">1052</a> 
<a class="jxr_linenumber" name="L1053" href="#L1053">1053</a>         <strong class="jxr_keyword">boolean</strong> allow = isAllowedToContinue( request, repositories, activePrincipal );
<a class="jxr_linenumber" name="L1054" href="#L1054">1054</a> 
<a class="jxr_linenumber" name="L1055" href="#L1055">1055</a>         <em class="jxr_comment">// remove last /</em>
<a class="jxr_linenumber" name="L1056" href="#L1056">1056</a>         String pathInfo = StringUtils.removeEnd( request.getPathInfo(), <span class="jxr_string">"/"</span> );
<a class="jxr_linenumber" name="L1057" href="#L1057">1057</a> 
<a class="jxr_linenumber" name="L1058" href="#L1058">1058</a>         <strong class="jxr_keyword">if</strong> ( allow )
<a class="jxr_linenumber" name="L1059" href="#L1059">1059</a>         {
<a class="jxr_linenumber" name="L1060" href="#L1060">1060</a> 
<a class="jxr_linenumber" name="L1061" href="#L1061">1061</a>             <strong class="jxr_keyword">if</strong> ( StringUtils.endsWith( pathInfo, repositoryGroupConfiguration.getMergedIndexPath() ) )
<a class="jxr_linenumber" name="L1062" href="#L1062">1062</a>             {
<a class="jxr_linenumber" name="L1063" href="#L1063">1063</a>                 File mergedRepoDir =
<a class="jxr_linenumber" name="L1064" href="#L1064">1064</a>                     buildMergedIndexDirectory( repositories, activePrincipal, request, repositoryGroupConfiguration );
<a class="jxr_linenumber" name="L1065" href="#L1065">1065</a>                 mergedRepositoryContents.add( mergedRepoDir );
<a class="jxr_linenumber" name="L1066" href="#L1066">1066</a>             }
<a class="jxr_linenumber" name="L1067" href="#L1067">1067</a>             <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L1068" href="#L1068">1068</a>             {
<a class="jxr_linenumber" name="L1069" href="#L1069">1069</a>                 <strong class="jxr_keyword">if</strong> ( StringUtils.equalsIgnoreCase( pathInfo, <span class="jxr_string">"/"</span> + repositoryGroupConfiguration.getId() ) )
<a class="jxr_linenumber" name="L1070" href="#L1070">1070</a>                 {
<a class="jxr_linenumber" name="L1071" href="#L1071">1071</a>                     File tmpDirectory = <strong class="jxr_keyword">new</strong> File( SystemUtils.getJavaIoTmpDir(),
<a class="jxr_linenumber" name="L1072" href="#L1072">1072</a>                                                   repositoryGroupConfiguration.getId() + <span class="jxr_string">"/"</span>
<a class="jxr_linenumber" name="L1073" href="#L1073">1073</a>                                                       + repositoryGroupConfiguration.getMergedIndexPath() );
<a class="jxr_linenumber" name="L1074" href="#L1074">1074</a>                     <strong class="jxr_keyword">if</strong> ( !tmpDirectory.exists() )
<a class="jxr_linenumber" name="L1075" href="#L1075">1075</a>                     {
<a class="jxr_linenumber" name="L1076" href="#L1076">1076</a>                         <strong class="jxr_keyword">synchronized</strong> ( tmpDirectory.getAbsolutePath() )
<a class="jxr_linenumber" name="L1077" href="#L1077">1077</a>                         {
<a class="jxr_linenumber" name="L1078" href="#L1078">1078</a>                             <strong class="jxr_keyword">if</strong> ( !tmpDirectory.exists() )
<a class="jxr_linenumber" name="L1079" href="#L1079">1079</a>                             {
<a class="jxr_linenumber" name="L1080" href="#L1080">1080</a>                                 tmpDirectory.mkdirs();
<a class="jxr_linenumber" name="L1081" href="#L1081">1081</a>                             }
<a class="jxr_linenumber" name="L1082" href="#L1082">1082</a>                         }
<a class="jxr_linenumber" name="L1083" href="#L1083">1083</a>                     }
<a class="jxr_linenumber" name="L1084" href="#L1084">1084</a>                     mergedRepositoryContents.add( tmpDirectory.getParentFile() );
<a class="jxr_linenumber" name="L1085" href="#L1085">1085</a>                 }
<a class="jxr_linenumber" name="L1086" href="#L1086">1086</a>                 <strong class="jxr_keyword">for</strong> ( String repository : repositories )
<a class="jxr_linenumber" name="L1087" href="#L1087">1087</a>                 {
<a class="jxr_linenumber" name="L1088" href="#L1088">1088</a>                     ManagedRepositoryContent managedRepository = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L1089" href="#L1089">1089</a> 
<a class="jxr_linenumber" name="L1090" href="#L1090">1090</a>                     <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1091" href="#L1091">1091</a>                     {
<a class="jxr_linenumber" name="L1092" href="#L1092">1092</a>                         managedRepository = repositoryFactory.getManagedRepositoryContent( repository );
<a class="jxr_linenumber" name="L1093" href="#L1093">1093</a>                     }
<a class="jxr_linenumber" name="L1094" href="#L1094">1094</a>                     <strong class="jxr_keyword">catch</strong> ( RepositoryNotFoundException e )
<a class="jxr_linenumber" name="L1095" href="#L1095">1095</a>                     {
<a class="jxr_linenumber" name="L1096" href="#L1096">1096</a>                         <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L1097" href="#L1097">1097</a>                                                 <span class="jxr_string">"Invalid managed repository &lt;"</span> + repository + <span class="jxr_string">"&gt;: "</span> + e.getMessage() );
<a class="jxr_linenumber" name="L1098" href="#L1098">1098</a>                     }
<a class="jxr_linenumber" name="L1099" href="#L1099">1099</a>                     <strong class="jxr_keyword">catch</strong> ( RepositoryException e )
<a class="jxr_linenumber" name="L1100" href="#L1100">1100</a>                     {
<a class="jxr_linenumber" name="L1101" href="#L1101">1101</a>                         <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
<a class="jxr_linenumber" name="L1102" href="#L1102">1102</a>                                                 <span class="jxr_string">"Invalid managed repository &lt;"</span> + repository + <span class="jxr_string">"&gt;: "</span> + e.getMessage() );
<a class="jxr_linenumber" name="L1103" href="#L1103">1103</a>                     }
<a class="jxr_linenumber" name="L1104" href="#L1104">1104</a> 
<a class="jxr_linenumber" name="L1105" href="#L1105">1105</a>                     File resourceFile = <strong class="jxr_keyword">new</strong> File( managedRepository.getRepoRoot(), logicalResource.getPath() );
<a class="jxr_linenumber" name="L1106" href="#L1106">1106</a>                     <strong class="jxr_keyword">if</strong> ( resourceFile.exists() )
<a class="jxr_linenumber" name="L1107" href="#L1107">1107</a>                     {
<a class="jxr_linenumber" name="L1108" href="#L1108">1108</a>                         <em class="jxr_comment">// in case of group displaying index directory doesn't have sense !!</em>
<a class="jxr_linenumber" name="L1109" href="#L1109">1109</a>                         String repoIndexDirectory = managedRepository.getRepository().getIndexDirectory();
<a class="jxr_linenumber" name="L1110" href="#L1110">1110</a>                         <strong class="jxr_keyword">if</strong> ( StringUtils.isNotEmpty( repoIndexDirectory ) )
<a class="jxr_linenumber" name="L1111" href="#L1111">1111</a>                         {
<a class="jxr_linenumber" name="L1112" href="#L1112">1112</a>                             <strong class="jxr_keyword">if</strong> ( !<strong class="jxr_keyword">new</strong> File( repoIndexDirectory ).isAbsolute() )
<a class="jxr_linenumber" name="L1113" href="#L1113">1113</a>                             {
<a class="jxr_linenumber" name="L1114" href="#L1114">1114</a>                                 repoIndexDirectory = <strong class="jxr_keyword">new</strong> File( managedRepository.getRepository().getLocation(),
<a class="jxr_linenumber" name="L1115" href="#L1115">1115</a>                                                                StringUtils.isEmpty( repoIndexDirectory )
<a class="jxr_linenumber" name="L1116" href="#L1116">1116</a>                                                                    ? <span class="jxr_string">".indexer"</span>
<a class="jxr_linenumber" name="L1117" href="#L1117">1117</a>                                                                    : repoIndexDirectory ).getAbsolutePath();
<a class="jxr_linenumber" name="L1118" href="#L1118">1118</a>                             }
<a class="jxr_linenumber" name="L1119" href="#L1119">1119</a>                         }
<a class="jxr_linenumber" name="L1120" href="#L1120">1120</a>                         <strong class="jxr_keyword">if</strong> ( StringUtils.isEmpty( repoIndexDirectory ) )
<a class="jxr_linenumber" name="L1121" href="#L1121">1121</a>                         {
<a class="jxr_linenumber" name="L1122" href="#L1122">1122</a>                             repoIndexDirectory = <strong class="jxr_keyword">new</strong> File( managedRepository.getRepository().getLocation(),
<a class="jxr_linenumber" name="L1123" href="#L1123">1123</a>                                                            <span class="jxr_string">".indexer"</span> ).getAbsolutePath();
<a class="jxr_linenumber" name="L1124" href="#L1124">1124</a>                         }
<a class="jxr_linenumber" name="L1125" href="#L1125">1125</a> 
<a class="jxr_linenumber" name="L1126" href="#L1126">1126</a>                         <strong class="jxr_keyword">if</strong> ( !StringUtils.equals( FilenameUtils.normalize( repoIndexDirectory ),
<a class="jxr_linenumber" name="L1127" href="#L1127">1127</a>                                                   FilenameUtils.normalize( resourceFile.getAbsolutePath() ) ) )
<a class="jxr_linenumber" name="L1128" href="#L1128">1128</a>                         {
<a class="jxr_linenumber" name="L1129" href="#L1129">1129</a>                             <em class="jxr_comment">// for prompted authentication</em>
<a class="jxr_linenumber" name="L1130" href="#L1130">1130</a>                             <strong class="jxr_keyword">if</strong> ( httpAuth.getSecuritySession( request.getSession( <strong class="jxr_keyword">true</strong> ) ) != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L1131" href="#L1131">1131</a>                             {
<a class="jxr_linenumber" name="L1132" href="#L1132">1132</a>                                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1133" href="#L1133">1133</a>                                 {
<a class="jxr_linenumber" name="L1134" href="#L1134">1134</a>                                     <strong class="jxr_keyword">if</strong> ( isAuthorized( request, repository ) )
<a class="jxr_linenumber" name="L1135" href="#L1135">1135</a>                                     {
<a class="jxr_linenumber" name="L1136" href="#L1136">1136</a>                                         mergedRepositoryContents.add( resourceFile );
<a class="jxr_linenumber" name="L1137" href="#L1137">1137</a>                                         log.debug( <span class="jxr_string">"Repository '{}' accessed by '{}'"</span>, repository, activePrincipal );
<a class="jxr_linenumber" name="L1138" href="#L1138">1138</a>                                     }
<a class="jxr_linenumber" name="L1139" href="#L1139">1139</a>                                 }
<a class="jxr_linenumber" name="L1140" href="#L1140">1140</a>                                 <strong class="jxr_keyword">catch</strong> ( DavException e )
<a class="jxr_linenumber" name="L1141" href="#L1141">1141</a>                                 {
<a class="jxr_linenumber" name="L1142" href="#L1142">1142</a>                                     <em class="jxr_comment">// TODO: review exception handling</em>
<a class="jxr_linenumber" name="L1143" href="#L1143">1143</a> 
<a class="jxr_linenumber" name="L1144" href="#L1144">1144</a>                                     log.debug( <span class="jxr_string">"Skipping repository '{}' for user '{}': {}"</span>, managedRepository,
<a class="jxr_linenumber" name="L1145" href="#L1145">1145</a>                                                activePrincipal, e.getMessage() );
<a class="jxr_linenumber" name="L1146" href="#L1146">1146</a> 
<a class="jxr_linenumber" name="L1147" href="#L1147">1147</a>                                 }
<a class="jxr_linenumber" name="L1148" href="#L1148">1148</a> 
<a class="jxr_linenumber" name="L1149" href="#L1149">1149</a>                             }
<a class="jxr_linenumber" name="L1150" href="#L1150">1150</a>                             <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L1151" href="#L1151">1151</a>                             {
<a class="jxr_linenumber" name="L1152" href="#L1152">1152</a>                                 <em class="jxr_comment">// for the current user logged in</em>
<a class="jxr_linenumber" name="L1153" href="#L1153">1153</a>                                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1154" href="#L1154">1154</a>                                 {
<a class="jxr_linenumber" name="L1155" href="#L1155">1155</a>                                     <strong class="jxr_keyword">if</strong> ( servletAuth.isAuthorized( activePrincipal, repository,
<a class="jxr_linenumber" name="L1156" href="#L1156">1156</a>                                                                    WebdavMethodUtil.getMethodPermission(
<a class="jxr_linenumber" name="L1157" href="#L1157">1157</a>                                                                        request.getMethod() ) ) )
<a class="jxr_linenumber" name="L1158" href="#L1158">1158</a>                                     {
<a class="jxr_linenumber" name="L1159" href="#L1159">1159</a>                                         mergedRepositoryContents.add( resourceFile );
<a class="jxr_linenumber" name="L1160" href="#L1160">1160</a>                                         log.debug( <span class="jxr_string">"Repository '{}' accessed by '{}'"</span>, repository, activePrincipal );
<a class="jxr_linenumber" name="L1161" href="#L1161">1161</a>                                     }
<a class="jxr_linenumber" name="L1162" href="#L1162">1162</a>                                 }
<a class="jxr_linenumber" name="L1163" href="#L1163">1163</a>                                 <strong class="jxr_keyword">catch</strong> ( UnauthorizedException e )
<a class="jxr_linenumber" name="L1164" href="#L1164">1164</a>                                 {
<a class="jxr_linenumber" name="L1165" href="#L1165">1165</a>                                     <em class="jxr_comment">// TODO: review exception handling</em>
<a class="jxr_linenumber" name="L1166" href="#L1166">1166</a> 
<a class="jxr_linenumber" name="L1167" href="#L1167">1167</a>                                     log.debug( <span class="jxr_string">"Skipping repository '{}' for user '{}': {}"</span>, managedRepository,
<a class="jxr_linenumber" name="L1168" href="#L1168">1168</a>                                                activePrincipal, e.getMessage() );
<a class="jxr_linenumber" name="L1169" href="#L1169">1169</a> 
<a class="jxr_linenumber" name="L1170" href="#L1170">1170</a>                                 }
<a class="jxr_linenumber" name="L1171" href="#L1171">1171</a>                             }
<a class="jxr_linenumber" name="L1172" href="#L1172">1172</a>                         }
<a class="jxr_linenumber" name="L1173" href="#L1173">1173</a>                     }
<a class="jxr_linenumber" name="L1174" href="#L1174">1174</a>                 }
<a class="jxr_linenumber" name="L1175" href="#L1175">1175</a>             }
<a class="jxr_linenumber" name="L1176" href="#L1176">1176</a>         }
<a class="jxr_linenumber" name="L1177" href="#L1177">1177</a>         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L1178" href="#L1178">1178</a>         {
<a class="jxr_linenumber" name="L1179" href="#L1179">1179</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/UnauthorizedDavException.html">UnauthorizedDavException</a>( locator.getRepositoryId(), <span class="jxr_string">"User not authorized."</span> );
<a class="jxr_linenumber" name="L1180" href="#L1180">1180</a>         }
<a class="jxr_linenumber" name="L1181" href="#L1181">1181</a> 
<a class="jxr_linenumber" name="L1182" href="#L1182">1182</a>         <a href="../../../../org/apache/archiva/webdav/ArchivaVirtualDavResource.html">ArchivaVirtualDavResource</a> resource =
<a class="jxr_linenumber" name="L1183" href="#L1183">1183</a>             <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/ArchivaVirtualDavResource.html">ArchivaVirtualDavResource</a>( mergedRepositoryContents, logicalResource.getPath(), mimeTypes, locator,
<a class="jxr_linenumber" name="L1184" href="#L1184">1184</a>                                            <strong class="jxr_keyword">this</strong> );
<a class="jxr_linenumber" name="L1185" href="#L1185">1185</a> 
<a class="jxr_linenumber" name="L1186" href="#L1186">1186</a>         <em class="jxr_comment">// compatibility with MRM-440 to ensure browsing the repository group works ok</em>
<a class="jxr_linenumber" name="L1187" href="#L1187">1187</a>         <strong class="jxr_keyword">if</strong> ( resource.isCollection() &amp;&amp; !request.getRequestURI().endsWith( <span class="jxr_string">"/"</span> ) )
<a class="jxr_linenumber" name="L1188" href="#L1188">1188</a>         {
<a class="jxr_linenumber" name="L1189" href="#L1189">1189</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/archiva/webdav/BrowserRedirectException.html">BrowserRedirectException</a>( resource.getHref() );
<a class="jxr_linenumber" name="L1190" href="#L1190">1190</a>         }
<a class="jxr_linenumber" name="L1191" href="#L1191">1191</a> 
<a class="jxr_linenumber" name="L1192" href="#L1192">1192</a>         <strong class="jxr_keyword">return</strong> resource;
<a class="jxr_linenumber" name="L1193" href="#L1193">1193</a>     }
<a class="jxr_linenumber" name="L1194" href="#L1194">1194</a> 
<a class="jxr_linenumber" name="L1195" href="#L1195">1195</a>     <strong class="jxr_keyword">protected</strong> String getActivePrincipal( DavServletRequest request )
<a class="jxr_linenumber" name="L1196" href="#L1196">1196</a>     {
<a class="jxr_linenumber" name="L1197" href="#L1197">1197</a>         User sessionUser = httpAuth.getSessionUser( request.getSession() );
<a class="jxr_linenumber" name="L1198" href="#L1198">1198</a>         <strong class="jxr_keyword">return</strong> sessionUser != <strong class="jxr_keyword">null</strong> ? sessionUser.getUsername() : UserManager.GUEST_USERNAME;
<a class="jxr_linenumber" name="L1199" href="#L1199">1199</a>     }
<a class="jxr_linenumber" name="L1200" href="#L1200">1200</a> 
<a class="jxr_linenumber" name="L1201" href="#L1201">1201</a>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L1202" href="#L1202">1202</a> <em class="jxr_javadoccomment">     * Check if the current user is authorized to access any of the repos</em>
<a class="jxr_linenumber" name="L1203" href="#L1203">1203</a> <em class="jxr_javadoccomment">     *</em>
<a class="jxr_linenumber" name="L1204" href="#L1204">1204</a> <em class="jxr_javadoccomment">     * @param request</em>
<a class="jxr_linenumber" name="L1205" href="#L1205">1205</a> <em class="jxr_javadoccomment">     * @param repositories</em>
<a class="jxr_linenumber" name="L1206" href="#L1206">1206</a> <em class="jxr_javadoccomment">     * @param activePrincipal</em>
<a class="jxr_linenumber" name="L1207" href="#L1207">1207</a> <em class="jxr_javadoccomment">     * @return</em>
<a class="jxr_linenumber" name="L1208" href="#L1208">1208</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="L1209" href="#L1209">1209</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> isAllowedToContinue( DavServletRequest request, List&lt;String&gt; repositories, String activePrincipal )
<a class="jxr_linenumber" name="L1210" href="#L1210">1210</a>     {
<a class="jxr_linenumber" name="L1211" href="#L1211">1211</a>         <em class="jxr_comment">// when no repositories configured it's impossible to browse nothing !</em>
<a class="jxr_linenumber" name="L1212" href="#L1212">1212</a>         <em class="jxr_comment">// at least make possible to see nothing :-)</em>
<a class="jxr_linenumber" name="L1213" href="#L1213">1213</a>         <strong class="jxr_keyword">if</strong> ( repositories == <strong class="jxr_keyword">null</strong> || repositories.isEmpty() )
<a class="jxr_linenumber" name="L1214" href="#L1214">1214</a>         {
<a class="jxr_linenumber" name="L1215" href="#L1215">1215</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L1216" href="#L1216">1216</a>         }
<a class="jxr_linenumber" name="L1217" href="#L1217">1217</a> 
<a class="jxr_linenumber" name="L1218" href="#L1218">1218</a>         <strong class="jxr_keyword">boolean</strong> allow = false;
<a class="jxr_linenumber" name="L1219" href="#L1219">1219</a> 
<a class="jxr_linenumber" name="L1220" href="#L1220">1220</a>         <em class="jxr_comment">// if securitySession != null, it means that the user was prompted for authentication</em>
<a class="jxr_linenumber" name="L1221" href="#L1221">1221</a>         <strong class="jxr_keyword">if</strong> ( httpAuth.getSecuritySession( request.getSession() ) != <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L1222" href="#L1222">1222</a>         {
<a class="jxr_linenumber" name="L1223" href="#L1223">1223</a>             <strong class="jxr_keyword">for</strong> ( String repository : repositories )
<a class="jxr_linenumber" name="L1224" href="#L1224">1224</a>             {
<a class="jxr_linenumber" name="L1225" href="#L1225">1225</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1226" href="#L1226">1226</a>                 {
<a class="jxr_linenumber" name="L1227" href="#L1227">1227</a>                     <strong class="jxr_keyword">if</strong> ( isAuthorized( request, repository ) )
<a class="jxr_linenumber" name="L1228" href="#L1228">1228</a>                     {
<a class="jxr_linenumber" name="L1229" href="#L1229">1229</a>                         allow = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L1230" href="#L1230">1230</a>                         <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="L1231" href="#L1231">1231</a>                     }
<a class="jxr_linenumber" name="L1232" href="#L1232">1232</a>                 }
<a class="jxr_linenumber" name="L1233" href="#L1233">1233</a>                 <strong class="jxr_keyword">catch</strong> ( DavException e )
<a class="jxr_linenumber" name="L1234" href="#L1234">1234</a>                 {
<a class="jxr_linenumber" name="L1235" href="#L1235">1235</a>                     <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="L1236" href="#L1236">1236</a>                 }
<a class="jxr_linenumber" name="L1237" href="#L1237">1237</a>             }
<a class="jxr_linenumber" name="L1238" href="#L1238">1238</a>         }
<a class="jxr_linenumber" name="L1239" href="#L1239">1239</a>         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L1240" href="#L1240">1240</a>         {
<a class="jxr_linenumber" name="L1241" href="#L1241">1241</a>             <strong class="jxr_keyword">for</strong> ( String repository : repositories )
<a class="jxr_linenumber" name="L1242" href="#L1242">1242</a>             {
<a class="jxr_linenumber" name="L1243" href="#L1243">1243</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1244" href="#L1244">1244</a>                 {
<a class="jxr_linenumber" name="L1245" href="#L1245">1245</a>                     <strong class="jxr_keyword">if</strong> ( servletAuth.isAuthorized( activePrincipal, repository,
<a class="jxr_linenumber" name="L1246" href="#L1246">1246</a>                                                    WebdavMethodUtil.getMethodPermission( request.getMethod() ) ) )
<a class="jxr_linenumber" name="L1247" href="#L1247">1247</a>                     {
<a class="jxr_linenumber" name="L1248" href="#L1248">1248</a>                         allow = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L1249" href="#L1249">1249</a>                         <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="L1250" href="#L1250">1250</a>                     }
<a class="jxr_linenumber" name="L1251" href="#L1251">1251</a>                 }
<a class="jxr_linenumber" name="L1252" href="#L1252">1252</a>                 <strong class="jxr_keyword">catch</strong> ( UnauthorizedException e )
<a class="jxr_linenumber" name="L1253" href="#L1253">1253</a>                 {
<a class="jxr_linenumber" name="L1254" href="#L1254">1254</a>                     <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="L1255" href="#L1255">1255</a>                 }
<a class="jxr_linenumber" name="L1256" href="#L1256">1256</a>             }
<a class="jxr_linenumber" name="L1257" href="#L1257">1257</a>         }
<a class="jxr_linenumber" name="L1258" href="#L1258">1258</a> 
<a class="jxr_linenumber" name="L1259" href="#L1259">1259</a>         <strong class="jxr_keyword">return</strong> allow;
<a class="jxr_linenumber" name="L1260" href="#L1260">1260</a>     }
<a class="jxr_linenumber" name="L1261" href="#L1261">1261</a> 
<a class="jxr_linenumber" name="L1262" href="#L1262">1262</a>     <strong class="jxr_keyword">private</strong> File writeMergedMetadataToFile( ArchivaRepositoryMetadata mergedMetadata, String outputFilename )
<a class="jxr_linenumber" name="L1263" href="#L1263">1263</a>         <strong class="jxr_keyword">throws</strong> RepositoryMetadataException, DigesterException, IOException
<a class="jxr_linenumber" name="L1264" href="#L1264">1264</a>     {
<a class="jxr_linenumber" name="L1265" href="#L1265">1265</a>         File outputFile = <strong class="jxr_keyword">new</strong> File( outputFilename );
<a class="jxr_linenumber" name="L1266" href="#L1266">1266</a>         <strong class="jxr_keyword">if</strong> ( outputFile.exists() )
<a class="jxr_linenumber" name="L1267" href="#L1267">1267</a>         {
<a class="jxr_linenumber" name="L1268" href="#L1268">1268</a>             FileUtils.deleteQuietly( outputFile );
<a class="jxr_linenumber" name="L1269" href="#L1269">1269</a>         }
<a class="jxr_linenumber" name="L1270" href="#L1270">1270</a> 
<a class="jxr_linenumber" name="L1271" href="#L1271">1271</a>         outputFile.getParentFile().mkdirs();
<a class="jxr_linenumber" name="L1272" href="#L1272">1272</a>         RepositoryMetadataWriter.write( mergedMetadata, outputFile );
<a class="jxr_linenumber" name="L1273" href="#L1273">1273</a> 
<a class="jxr_linenumber" name="L1274" href="#L1274">1274</a>         createChecksumFile( outputFilename, digestSha1 );
<a class="jxr_linenumber" name="L1275" href="#L1275">1275</a>         createChecksumFile( outputFilename, digestMd5 );
<a class="jxr_linenumber" name="L1276" href="#L1276">1276</a> 
<a class="jxr_linenumber" name="L1277" href="#L1277">1277</a>         <strong class="jxr_keyword">return</strong> outputFile;
<a class="jxr_linenumber" name="L1278" href="#L1278">1278</a>     }
<a class="jxr_linenumber" name="L1279" href="#L1279">1279</a> 
<a class="jxr_linenumber" name="L1280" href="#L1280">1280</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> createChecksumFile( String path, Digester digester )
<a class="jxr_linenumber" name="L1281" href="#L1281">1281</a>         <strong class="jxr_keyword">throws</strong> DigesterException, IOException
<a class="jxr_linenumber" name="L1282" href="#L1282">1282</a>     {
<a class="jxr_linenumber" name="L1283" href="#L1283">1283</a>         File checksumFile = <strong class="jxr_keyword">new</strong> File( path + digester.getFilenameExtension() );
<a class="jxr_linenumber" name="L1284" href="#L1284">1284</a>         <strong class="jxr_keyword">if</strong> ( !checksumFile.exists() )
<a class="jxr_linenumber" name="L1285" href="#L1285">1285</a>         {
<a class="jxr_linenumber" name="L1286" href="#L1286">1286</a>             FileUtils.deleteQuietly( checksumFile );
<a class="jxr_linenumber" name="L1287" href="#L1287">1287</a>             checksum.createChecksum( <strong class="jxr_keyword">new</strong> File( path ), digester );
<a class="jxr_linenumber" name="L1288" href="#L1288">1288</a>         }
<a class="jxr_linenumber" name="L1289" href="#L1289">1289</a>         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> ( !checksumFile.isFile() )
<a class="jxr_linenumber" name="L1290" href="#L1290">1290</a>         {
<a class="jxr_linenumber" name="L1291" href="#L1291">1291</a>             log.error( <span class="jxr_string">"Checksum file is not a file."</span> );
<a class="jxr_linenumber" name="L1292" href="#L1292">1292</a>         }
<a class="jxr_linenumber" name="L1293" href="#L1293">1293</a>     }
<a class="jxr_linenumber" name="L1294" href="#L1294">1294</a> 
<a class="jxr_linenumber" name="L1295" href="#L1295">1295</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> isProjectReference( String requestedResource )
<a class="jxr_linenumber" name="L1296" href="#L1296">1296</a>     {
<a class="jxr_linenumber" name="L1297" href="#L1297">1297</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1298" href="#L1298">1298</a>         {
<a class="jxr_linenumber" name="L1299" href="#L1299">1299</a>             metadataTools.toVersionedReference( requestedResource );
<a class="jxr_linenumber" name="L1300" href="#L1300">1300</a>             <strong class="jxr_keyword">return</strong> false;
<a class="jxr_linenumber" name="L1301" href="#L1301">1301</a>         }
<a class="jxr_linenumber" name="L1302" href="#L1302">1302</a>         <strong class="jxr_keyword">catch</strong> ( RepositoryMetadataException re )
<a class="jxr_linenumber" name="L1303" href="#L1303">1303</a>         {
<a class="jxr_linenumber" name="L1304" href="#L1304">1304</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L1305" href="#L1305">1305</a>         }
<a class="jxr_linenumber" name="L1306" href="#L1306">1306</a>     }
<a class="jxr_linenumber" name="L1307" href="#L1307">1307</a> 
<a class="jxr_linenumber" name="L1308" href="#L1308">1308</a>     <strong class="jxr_keyword">protected</strong> File buildMergedIndexDirectory( List&lt;String&gt; repositories, String activePrincipal,
<a class="jxr_linenumber" name="L1309" href="#L1309">1309</a>                                               DavServletRequest request,
<a class="jxr_linenumber" name="L1310" href="#L1310">1310</a>                                               RepositoryGroupConfiguration repositoryGroupConfiguration )
<a class="jxr_linenumber" name="L1311" href="#L1311">1311</a>         <strong class="jxr_keyword">throws</strong> DavException
<a class="jxr_linenumber" name="L1312" href="#L1312">1312</a>     {
<a class="jxr_linenumber" name="L1313" href="#L1313">1313</a> 
<a class="jxr_linenumber" name="L1314" href="#L1314">1314</a>         <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1315" href="#L1315">1315</a>         {
<a class="jxr_linenumber" name="L1316" href="#L1316">1316</a>             HttpSession session = request.getSession();
<a class="jxr_linenumber" name="L1317" href="#L1317">1317</a> 
<a class="jxr_linenumber" name="L1318" href="#L1318">1318</a>             Map&lt;String, TemporaryGroupIndex&gt; temporaryGroupIndexMap =
<a class="jxr_linenumber" name="L1319" href="#L1319">1319</a>                 (Map&lt;String, TemporaryGroupIndex&gt;) session.getAttribute(
<a class="jxr_linenumber" name="L1320" href="#L1320">1320</a>                     TemporaryGroupIndexSessionCleaner.TEMPORARY_INDEX_SESSION_KEY );
<a class="jxr_linenumber" name="L1321" href="#L1321">1321</a>             <strong class="jxr_keyword">if</strong> ( temporaryGroupIndexMap == <strong class="jxr_keyword">null</strong> )
<a class="jxr_linenumber" name="L1322" href="#L1322">1322</a>             {
<a class="jxr_linenumber" name="L1323" href="#L1323">1323</a>                 temporaryGroupIndexMap = <strong class="jxr_keyword">new</strong> HashMap&lt;&gt;();
<a class="jxr_linenumber" name="L1324" href="#L1324">1324</a>             }
<a class="jxr_linenumber" name="L1325" href="#L1325">1325</a> 
<a class="jxr_linenumber" name="L1326" href="#L1326">1326</a>             TemporaryGroupIndex tmp = temporaryGroupIndexMap.get( repositoryGroupConfiguration.getId() );
<a class="jxr_linenumber" name="L1327" href="#L1327">1327</a> 
<a class="jxr_linenumber" name="L1328" href="#L1328">1328</a>             <strong class="jxr_keyword">if</strong> ( tmp != <strong class="jxr_keyword">null</strong> &amp;&amp; tmp.getDirectory() != <strong class="jxr_keyword">null</strong> &amp;&amp; tmp.getDirectory().exists() )
<a class="jxr_linenumber" name="L1329" href="#L1329">1329</a>             {
<a class="jxr_linenumber" name="L1330" href="#L1330">1330</a>                 <strong class="jxr_keyword">if</strong> ( System.currentTimeMillis() - tmp.getCreationTime() &gt; (
<a class="jxr_linenumber" name="L1331" href="#L1331">1331</a>                     repositoryGroupConfiguration.getMergedIndexTtl() * 60 * 1000 ) )
<a class="jxr_linenumber" name="L1332" href="#L1332">1332</a>                 {
<a class="jxr_linenumber" name="L1333" href="#L1333">1333</a>                     log.debug( MarkerFactory.getMarker( <span class="jxr_string">"group.merged.index"</span> ),
<a class="jxr_linenumber" name="L1334" href="#L1334">1334</a>                                <span class="jxr_string">"tmp group index '{}' is too old so delete it"</span>, repositoryGroupConfiguration.getId() );
<a class="jxr_linenumber" name="L1335" href="#L1335">1335</a>                     indexMerger.cleanTemporaryGroupIndex( tmp );
<a class="jxr_linenumber" name="L1336" href="#L1336">1336</a>                 }
<a class="jxr_linenumber" name="L1337" href="#L1337">1337</a>                 <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="L1338" href="#L1338">1338</a>                 {
<a class="jxr_linenumber" name="L1339" href="#L1339">1339</a>                     log.debug( MarkerFactory.getMarker( <span class="jxr_string">"group.merged.index"</span> ),
<a class="jxr_linenumber" name="L1340" href="#L1340">1340</a>                                <span class="jxr_string">"merged index for group '{}' found in cache"</span>, repositoryGroupConfiguration.getId() );
<a class="jxr_linenumber" name="L1341" href="#L1341">1341</a>                     <strong class="jxr_keyword">return</strong> tmp.getDirectory();
<a class="jxr_linenumber" name="L1342" href="#L1342">1342</a>                 }
<a class="jxr_linenumber" name="L1343" href="#L1343">1343</a>             }
<a class="jxr_linenumber" name="L1344" href="#L1344">1344</a> 
<a class="jxr_linenumber" name="L1345" href="#L1345">1345</a>             Set&lt;String&gt; authzRepos = <strong class="jxr_keyword">new</strong> HashSet&lt;String&gt;();
<a class="jxr_linenumber" name="L1346" href="#L1346">1346</a> 
<a class="jxr_linenumber" name="L1347" href="#L1347">1347</a>             String permission = WebdavMethodUtil.getMethodPermission( request.getMethod() );
<a class="jxr_linenumber" name="L1348" href="#L1348">1348</a> 
<a class="jxr_linenumber" name="L1349" href="#L1349">1349</a>             <strong class="jxr_keyword">for</strong> ( String repository : repositories )
<a class="jxr_linenumber" name="L1350" href="#L1350">1350</a>             {
<a class="jxr_linenumber" name="L1351" href="#L1351">1351</a>                 <strong class="jxr_keyword">try</strong>
<a class="jxr_linenumber" name="L1352" href="#L1352">1352</a>                 {
<a class="jxr_linenumber" name="L1353" href="#L1353">1353</a>                     <strong class="jxr_keyword">if</strong> ( servletAuth.isAuthorized( activePrincipal, repository, permission ) )
<a class="jxr_linenumber" name="L1354" href="#L1354">1354</a>                     {
<a class="jxr_linenumber" name="L1355" href="#L1355">1355</a>                         authzRepos.add( repository );
<a class="jxr_linenumber" name="L1356" href="#L1356">1356</a>                         authzRepos.addAll( <strong class="jxr_keyword">this</strong>.repositorySearch.getRemoteIndexingContextIds( repository ) );
<a class="jxr_linenumber" name="L1357" href="#L1357">1357</a>                     }
<a class="jxr_linenumber" name="L1358" href="#L1358">1358</a>                 }
<a class="jxr_linenumber" name="L1359" href="#L1359">1359</a>                 <strong class="jxr_keyword">catch</strong> ( UnauthorizedException e )
<a class="jxr_linenumber" name="L1360" href="#L1360">1360</a>                 {
<a class="jxr_linenumber" name="L1361" href="#L1361">1361</a>                     <em class="jxr_comment">// TODO: review exception handling</em>
<a class="jxr_linenumber" name="L1362" href="#L1362">1362</a> 
<a class="jxr_linenumber" name="L1363" href="#L1363">1363</a>                     log.debug( <span class="jxr_string">"Skipping repository '{}' for user '{}': {}"</span>, repository, activePrincipal,
<a class="jxr_linenumber" name="L1364" href="#L1364">1364</a>                                e.getMessage() );
<a class="jxr_linenumber" name="L1365" href="#L1365">1365</a>                 }
<a class="jxr_linenumber" name="L1366" href="#L1366">1366</a>             }
<a class="jxr_linenumber" name="L1367" href="#L1367">1367</a>             log.info( <span class="jxr_string">"generate temporary merged index for repository group '{}' for repositories '{}'"</span>,
<a class="jxr_linenumber" name="L1368" href="#L1368">1368</a>                       repositoryGroupConfiguration.getId(), authzRepos );
<a class="jxr_linenumber" name="L1369" href="#L1369">1369</a> 
<a class="jxr_linenumber" name="L1370" href="#L1370">1370</a>             File tempRepoFile = Files.createTempDirectory( <span class="jxr_string">"temp"</span> ).toFile();
<a class="jxr_linenumber" name="L1371" href="#L1371">1371</a>             tempRepoFile.deleteOnExit();
<a class="jxr_linenumber" name="L1372" href="#L1372">1372</a> 
<a class="jxr_linenumber" name="L1373" href="#L1373">1373</a>             IndexMergerRequest indexMergerRequest =
<a class="jxr_linenumber" name="L1374" href="#L1374">1374</a>                 <strong class="jxr_keyword">new</strong> IndexMergerRequest( authzRepos, <strong class="jxr_keyword">true</strong>, repositoryGroupConfiguration.getId(),
<a class="jxr_linenumber" name="L1375" href="#L1375">1375</a>                                         repositoryGroupConfiguration.getMergedIndexPath(),
<a class="jxr_linenumber" name="L1376" href="#L1376">1376</a>                                         repositoryGroupConfiguration.getMergedIndexTtl() ).mergedIndexDirectory(
<a class="jxr_linenumber" name="L1377" href="#L1377">1377</a>                     tempRepoFile ).temporary( <strong class="jxr_keyword">true</strong> );
<a class="jxr_linenumber" name="L1378" href="#L1378">1378</a> 
<a class="jxr_linenumber" name="L1379" href="#L1379">1379</a>             MergedRemoteIndexesTaskRequest taskRequest =
<a class="jxr_linenumber" name="L1380" href="#L1380">1380</a>                 <strong class="jxr_keyword">new</strong> MergedRemoteIndexesTaskRequest( indexMergerRequest, indexMerger );
<a class="jxr_linenumber" name="L1381" href="#L1381">1381</a> 
<a class="jxr_linenumber" name="L1382" href="#L1382">1382</a>             MergedRemoteIndexesTask job = <strong class="jxr_keyword">new</strong> MergedRemoteIndexesTask( taskRequest );
<a class="jxr_linenumber" name="L1383" href="#L1383">1383</a> 
<a class="jxr_linenumber" name="L1384" href="#L1384">1384</a>             IndexingContext indexingContext = job.execute().getIndexingContext();
<a class="jxr_linenumber" name="L1385" href="#L1385">1385</a> 
<a class="jxr_linenumber" name="L1386" href="#L1386">1386</a>             File mergedRepoDir = indexingContext.getIndexDirectoryFile();
<a class="jxr_linenumber" name="L1387" href="#L1387">1387</a>             TemporaryGroupIndex temporaryGroupIndex =
<a class="jxr_linenumber" name="L1388" href="#L1388">1388</a>                 <strong class="jxr_keyword">new</strong> TemporaryGroupIndex( mergedRepoDir, indexingContext.getId(), repositoryGroupConfiguration.getId(),
<a class="jxr_linenumber" name="L1389" href="#L1389">1389</a>                                          repositoryGroupConfiguration.getMergedIndexTtl() ) <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L1390" href="#L1390">1390</a>                     .setCreationTime( <strong class="jxr_keyword">new</strong> Date().getTime() );
<a class="jxr_linenumber" name="L1391" href="#L1391">1391</a>             temporaryGroupIndexMap.put( repositoryGroupConfiguration.getId(), temporaryGroupIndex );
<a class="jxr_linenumber" name="L1392" href="#L1392">1392</a>             session.setAttribute( TemporaryGroupIndexSessionCleaner.TEMPORARY_INDEX_SESSION_KEY,
<a class="jxr_linenumber" name="L1393" href="#L1393">1393</a>                                   temporaryGroupIndexMap );
<a class="jxr_linenumber" name="L1394" href="#L1394">1394</a>             <strong class="jxr_keyword">return</strong> mergedRepoDir;
<a class="jxr_linenumber" name="L1395" href="#L1395">1395</a>         }
<a class="jxr_linenumber" name="L1396" href="#L1396">1396</a>         <strong class="jxr_keyword">catch</strong> ( RepositoryAdminException e )
<a class="jxr_linenumber" name="L1397" href="#L1397">1397</a>         {
<a class="jxr_linenumber" name="L1398" href="#L1398">1398</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L1399" href="#L1399">1399</a>         }
<a class="jxr_linenumber" name="L1400" href="#L1400">1400</a>         <strong class="jxr_keyword">catch</strong> ( IndexMergerException e )
<a class="jxr_linenumber" name="L1401" href="#L1401">1401</a>         {
<a class="jxr_linenumber" name="L1402" href="#L1402">1402</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L1403" href="#L1403">1403</a>         }
<a class="jxr_linenumber" name="L1404" href="#L1404">1404</a>         <strong class="jxr_keyword">catch</strong> ( IOException e )
<a class="jxr_linenumber" name="L1405" href="#L1405">1405</a>         {
<a class="jxr_linenumber" name="L1406" href="#L1406">1406</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DavException( HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
<a class="jxr_linenumber" name="L1407" href="#L1407">1407</a>         }
<a class="jxr_linenumber" name="L1408" href="#L1408">1408</a>     }
<a class="jxr_linenumber" name="L1409" href="#L1409">1409</a> 
<a class="jxr_linenumber" name="L1410" href="#L1410">1410</a> 
<a class="jxr_linenumber" name="L1411" href="#L1411">1411</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setServletAuth( ServletAuthenticator servletAuth )
<a class="jxr_linenumber" name="L1412" href="#L1412">1412</a>     {
<a class="jxr_linenumber" name="L1413" href="#L1413">1413</a>         <strong class="jxr_keyword">this</strong>.servletAuth = servletAuth;
<a class="jxr_linenumber" name="L1414" href="#L1414">1414</a>     }
<a class="jxr_linenumber" name="L1415" href="#L1415">1415</a> 
<a class="jxr_linenumber" name="L1416" href="#L1416">1416</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setHttpAuth( HttpAuthenticator httpAuth )
<a class="jxr_linenumber" name="L1417" href="#L1417">1417</a>     {
<a class="jxr_linenumber" name="L1418" href="#L1418">1418</a>         <strong class="jxr_keyword">this</strong>.httpAuth = httpAuth;
<a class="jxr_linenumber" name="L1419" href="#L1419">1419</a>     }
<a class="jxr_linenumber" name="L1420" href="#L1420">1420</a> 
<a class="jxr_linenumber" name="L1421" href="#L1421">1421</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setScheduler( RepositoryArchivaTaskScheduler scheduler )
<a class="jxr_linenumber" name="L1422" href="#L1422">1422</a>     {
<a class="jxr_linenumber" name="L1423" href="#L1423">1423</a>         <strong class="jxr_keyword">this</strong>.scheduler = scheduler;
<a class="jxr_linenumber" name="L1424" href="#L1424">1424</a>     }
<a class="jxr_linenumber" name="L1425" href="#L1425">1425</a> 
<a class="jxr_linenumber" name="L1426" href="#L1426">1426</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setArchivaConfiguration( ArchivaConfiguration archivaConfiguration )
<a class="jxr_linenumber" name="L1427" href="#L1427">1427</a>     {
<a class="jxr_linenumber" name="L1428" href="#L1428">1428</a>         <strong class="jxr_keyword">this</strong>.archivaConfiguration = archivaConfiguration;
<a class="jxr_linenumber" name="L1429" href="#L1429">1429</a>     }
<a class="jxr_linenumber" name="L1430" href="#L1430">1430</a> 
<a class="jxr_linenumber" name="L1431" href="#L1431">1431</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setRepositoryFactory( RepositoryContentFactory repositoryFactory )
<a class="jxr_linenumber" name="L1432" href="#L1432">1432</a>     {
<a class="jxr_linenumber" name="L1433" href="#L1433">1433</a>         <strong class="jxr_keyword">this</strong>.repositoryFactory = repositoryFactory;
<a class="jxr_linenumber" name="L1434" href="#L1434">1434</a>     }
<a class="jxr_linenumber" name="L1435" href="#L1435">1435</a> 
<a class="jxr_linenumber" name="L1436" href="#L1436">1436</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setRepositoryRequest( RepositoryRequest repositoryRequest )
<a class="jxr_linenumber" name="L1437" href="#L1437">1437</a>     {
<a class="jxr_linenumber" name="L1438" href="#L1438">1438</a>         <strong class="jxr_keyword">this</strong>.repositoryRequest = repositoryRequest;
<a class="jxr_linenumber" name="L1439" href="#L1439">1439</a>     }
<a class="jxr_linenumber" name="L1440" href="#L1440">1440</a> 
<a class="jxr_linenumber" name="L1441" href="#L1441">1441</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setConnectors( RepositoryProxyConnectors connectors )
<a class="jxr_linenumber" name="L1442" href="#L1442">1442</a>     {
<a class="jxr_linenumber" name="L1443" href="#L1443">1443</a>         <strong class="jxr_keyword">this</strong>.connectors = connectors;
<a class="jxr_linenumber" name="L1444" href="#L1444">1444</a>     }
<a class="jxr_linenumber" name="L1445" href="#L1445">1445</a> 
<a class="jxr_linenumber" name="L1446" href="#L1446">1446</a>     <strong class="jxr_keyword">public</strong> RemoteRepositoryAdmin getRemoteRepositoryAdmin()
<a class="jxr_linenumber" name="L1447" href="#L1447">1447</a>     {
<a class="jxr_linenumber" name="L1448" href="#L1448">1448</a>         <strong class="jxr_keyword">return</strong> remoteRepositoryAdmin;
<a class="jxr_linenumber" name="L1449" href="#L1449">1449</a>     }
<a class="jxr_linenumber" name="L1450" href="#L1450">1450</a> 
<a class="jxr_linenumber" name="L1451" href="#L1451">1451</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setRemoteRepositoryAdmin( RemoteRepositoryAdmin remoteRepositoryAdmin )
<a class="jxr_linenumber" name="L1452" href="#L1452">1452</a>     {
<a class="jxr_linenumber" name="L1453" href="#L1453">1453</a>         <strong class="jxr_keyword">this</strong>.remoteRepositoryAdmin = remoteRepositoryAdmin;
<a class="jxr_linenumber" name="L1454" href="#L1454">1454</a>     }
<a class="jxr_linenumber" name="L1455" href="#L1455">1455</a> 
<a class="jxr_linenumber" name="L1456" href="#L1456">1456</a>     <strong class="jxr_keyword">public</strong> ManagedRepositoryAdmin getManagedRepositoryAdmin()
<a class="jxr_linenumber" name="L1457" href="#L1457">1457</a>     {
<a class="jxr_linenumber" name="L1458" href="#L1458">1458</a>         <strong class="jxr_keyword">return</strong> managedRepositoryAdmin;
<a class="jxr_linenumber" name="L1459" href="#L1459">1459</a>     }
<a class="jxr_linenumber" name="L1460" href="#L1460">1460</a> 
<a class="jxr_linenumber" name="L1461" href="#L1461">1461</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setManagedRepositoryAdmin( ManagedRepositoryAdmin managedRepositoryAdmin )
<a class="jxr_linenumber" name="L1462" href="#L1462">1462</a>     {
<a class="jxr_linenumber" name="L1463" href="#L1463">1463</a>         <strong class="jxr_keyword">this</strong>.managedRepositoryAdmin = managedRepositoryAdmin;
<a class="jxr_linenumber" name="L1464" href="#L1464">1464</a>     }
<a class="jxr_linenumber" name="L1465" href="#L1465">1465</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>
