1 package org.apache.maven.artifact.repository.layout; 2 3 18 19 import org.apache.maven.artifact.Artifact; 20 import org.apache.maven.artifact.handler.ArtifactHandler; 21 import org.apache.maven.artifact.metadata.ArtifactMetadata; 22 import org.apache.maven.artifact.repository.ArtifactRepository; 23 24 27 public class LegacyRepositoryLayout 28 implements ArtifactRepositoryLayout 29 { 30 private static final String PATH_SEPARATOR = "/"; 31 32 public String pathOf( Artifact artifact ) 33 { 34 ArtifactHandler artifactHandler = artifact.getArtifactHandler(); 35 36 StringBuffer path = new StringBuffer (); 37 38 path.append( artifact.getGroupId() ).append( '/' ); 39 path.append( artifactHandler.getDirectory() ).append( '/' ); 40 path.append( artifact.getArtifactId() ).append( '-' ).append( artifact.getVersion() ); 41 42 if ( artifact.hasClassifier() ) 43 { 44 path.append( '-' ).append( artifact.getClassifier() ); 45 } 46 47 if ( artifactHandler.getExtension() != null && artifactHandler.getExtension().length() > 0 ) 48 { 49 path.append( '.' ).append( artifactHandler.getExtension() ); 50 } 51 52 return path.toString(); 53 } 54 55 public String pathOfLocalRepositoryMetadata( ArtifactMetadata metadata, ArtifactRepository repository ) 56 { 57 return pathOfRepositoryMetadata( metadata, metadata.getLocalFilename( repository ) ); 58 } 59 60 private String pathOfRepositoryMetadata( ArtifactMetadata metadata, String filename ) 61 { 62 StringBuffer path = new StringBuffer (); 63 64 path.append( metadata.getGroupId() ).append( PATH_SEPARATOR ).append( "poms" ).append( PATH_SEPARATOR ); 65 66 path.append( filename ); 67 68 return path.toString(); 69 } 70 71 public String pathOfRemoteRepositoryMetadata( ArtifactMetadata metadata ) 72 { 73 return pathOfRepositoryMetadata( metadata, metadata.getRemoteFilename() ); 74 } 75 76 } 77 | Popular Tags |