Author: brett
Date: Tue Jun 7 09:06:14 2005
New Revision: 188806
URL: http://svn.apache.org/viewcvs?rev=188806&view=rev
Log:
PR: MNG-453
Submitted by: Andreas Hoheneder
Reviewed by: Brett Porter
Add support for generic artifact types, mapping the type to an extension
Added:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
(with props)
Modified:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
Added:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java?rev=188806&view=auto
==============================================================================
---
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
(added)
+++
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
Tue Jun 7 09:06:14 2005
@@ -0,0 +1,47 @@
+package org.apache.maven.artifact.handler;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author Andreas Hoheneder (ahoh/at/inode.at)
+ * @version $Id$
+ */
+public class GenericHandler
+ extends AbstractArtifactHandler
+{
+ private String type;
+
+ public GenericHandler( String atype )
+ {
+ type = atype;
+ }
+
+ public String extension()
+ {
+ return type;
+ }
+
+ public String directory()
+ {
+ return type + "s";
+ }
+
+ public String packageGoal()
+ {
+ return null;
+ }
+}
Propchange:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/GenericHandler.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified:
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java?rev=188806&r1=188805&r2=188806&view=diff
==============================================================================
---
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
(original)
+++
maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
Tue Jun 7 09:06:14 2005
@@ -17,6 +17,7 @@
*/
import org.apache.maven.artifact.handler.ArtifactHandler;
+import org.apache.maven.artifact.handler.GenericHandler;
import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
import java.util.Map;
@@ -39,6 +40,13 @@
{
ArtifactHandler handler = (ArtifactHandler) artifactHandlers.get( type
);
+ if ( handler == null )
+ {
+ handler = new GenericHandler( type );
+ }
+
+ // this should only happen if GenericHandler decides that the given
type is unworthy to be handled
+ // TODO: can probably remove this
if ( handler == null )
{
throw new ArtifactHandlerNotFoundException( "Artifact handler for
type '" + type + "' cannot be found." );
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]