Return-Path: Delivered-To: apmail-maven-archiva-dev-archive@locus.apache.org Received: (qmail 79020 invoked from network); 6 Jun 2007 11:40:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Jun 2007 11:40:27 -0000 Received: (qmail 77475 invoked by uid 500); 6 Jun 2007 11:40:30 -0000 Delivered-To: apmail-maven-archiva-dev-archive@maven.apache.org Received: (qmail 77370 invoked by uid 500); 6 Jun 2007 11:40:30 -0000 Mailing-List: contact archiva-dev-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: archiva-dev@maven.apache.org Delivered-To: mailing list archiva-dev@maven.apache.org Received: (qmail 77359 invoked by uid 99); 6 Jun 2007 11:40:30 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Jun 2007 04:40:30 -0700 X-ASF-Spam-Status: No, hits=2.9 required=10.0 tests=HTML_10_20,HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of nicolas.deloof@gmail.com designates 64.233.184.232 as permitted sender) Received: from [64.233.184.232] (HELO wr-out-0506.google.com) (64.233.184.232) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Jun 2007 04:40:25 -0700 Received: by wr-out-0506.google.com with SMTP id 58so75345wri for ; Wed, 06 Jun 2007 04:40:04 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=S0dxaAA2wX46G5seUaZXxu6UvJSGV0BhRD1VUpET95UMpeLR+8Ncz/6MqZUP9ZJkYmy45tLYEa74D+F54VMVuXF5NGZbTClrzaMsiTdQNISRouTEPtrt6jMKjZYB+FFqSNT6URractIHTx2kg/Ld93ULU/T7fZshUtMWkBczxnw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=AXCNpvWW/QPDCzbNfvzOrJBGIbdv/6MhEX8GfotGcLsNdSdfUU1Vk2cq1NidPaGvTWB5v9RJ5/7kT7mdsf9s0NxwZ1TkviS+fNdWj6KS2A0ibDE0ZQ6wIOqdZZI98El/E/2ya5WcKn9NUYUNHZBrHUjHbPO8G3N+jFDtIZAcQAc= Received: by 10.78.21.7 with SMTP id 7mr133891huu.1181130003216; Wed, 06 Jun 2007 04:40:03 -0700 (PDT) Received: by 10.78.133.5 with HTTP; Wed, 6 Jun 2007 04:40:03 -0700 (PDT) Message-ID: <4c39e3030706060440v3444cafq902d34cea2d42681@mail.gmail.com> Date: Wed, 6 Jun 2007 13:40:03 +0200 From: "nicolas de loof" To: archiva-dev@maven.apache.org Subject: Re: service layer API proposal In-Reply-To: <46669ABF.4040801@erdfelt.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_34268_23514361.1181130003180" References: <4c39e3030706050838n3b87e16dqb1d8843109f0d6ea@mail.gmail.com> <46658CE2.1070905@erdfelt.com> <4c39e3030706051118u38b8d753qd18a1c3c8bfd11f2@mail.gmail.com> <58265D5B-33EE-45E5-BBD3-F39702EDF646@apache.org> <4665BEC4.3060305@erdfelt.com> <4c39e3030706052350hf98d44bkf81ab08c9b88f3ec@mail.gmail.com> <46669ABF.4040801@erdfelt.com> X-Virus-Checked: Checked by ClamAV on apache.org ------=_Part_34268_23514361.1181130003180 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline You're right, the layout used by the managedRepository to store artifacts is specified in its configuration, and the SVN code requires the request to follow this layout. But the layout used to request an artifact from maven1 or maven2 is simple to detect. The fact that the managedRepository internally use a filesystem layout to store artifact is not visible, as the servlet layer can request for ArtifactReference. Having this abstraction makes easy to convert any incoming request from any supported layout to ArtifactReference, and then from ArtifactReference to a File in managed repo. So the difficulty dor auto-detecting request layout is only in the servlet layer. It can select the valid BidirectionalLayout based on determinist URL mappings "/{layoutId}/{repoId}/{path}" or based on auto-detection "/repository/{repoId}/{path}", as I propose in MRM-412. > I mean /repository/{repoId}/{path} can detect legacy vs default maven > > layout > > easily based on number of "/" in the path. If the apt path (for example) > > overlaps with another supported layout, we simply need to provide an > > alternative /apt/{repoId}/{path}. "repository" would then simply be a > > reserved keyword for "autodetect requested type". > One point. The layout is currently determined by the setting specified > on the {repoId}, not based on the number of "/" in the path. > > - Joakim > ------=_Part_34268_23514361.1181130003180--