org.apache.archiva.repository.content.maven2
Class ManagedDefaultRepositoryContent

java.lang.Object
  extended by org.apache.archiva.repository.content.maven2.AbstractDefaultRepositoryContent
      extended by org.apache.archiva.repository.content.maven2.ManagedDefaultRepositoryContent
All Implemented Interfaces:
ManagedRepositoryContent

@Service(value="managedRepositoryContent#default")
@Scope(value="prototype")
public class ManagedDefaultRepositoryContent
extends AbstractDefaultRepositoryContent
implements ManagedRepositoryContent

ManagedDefaultRepositoryContent


Field Summary
private  FileTypes filetypes
           
private  ManagedRepository repository
           
 
Fields inherited from class org.apache.archiva.repository.content.maven2.AbstractDefaultRepositoryContent
ARTIFACT_SEPARATOR, artifactMappingProviders, GROUP_SEPARATOR, log, MAVEN_METADATA, PATH_SEPARATOR
 
Constructor Summary
ManagedDefaultRepositoryContent()
           
 
Method Summary
 void deleteArtifact(ArtifactReference artifactReference)
          delete a specified artifact from the repository
 void deleteGroupId(String groupId)
           
 void deleteProject(String namespace, String projectId)
           
 void deleteVersion(VersionedReference reference)
          Delete from the managed repository all files / directories associated with the provided version reference.
private  ArtifactReference getFirstArtifact(VersionedReference reference)
          Get the first Artifact found in the provided VersionedReference location.
 String getId()
           Convenience method to get the repository id.
 Set<ArtifactReference> getRelatedArtifacts(ArtifactReference reference)
           Gather up the list of related artifacts to the ArtifactReference provided.
 String getRepoRoot()
           Convenience method to get the repository (on disk) root directory.
 ManagedRepository getRepository()
          Get the repository configuration associated with this repository content.
 Set<String> getVersions(ProjectReference reference)
          Gather the Available Versions (on disk) for a specific Project Reference, based on filesystem information.
 Set<String> getVersions(VersionedReference reference)
           Given a specific VersionedReference, return the list of available versions for that versioned reference.
private  boolean hasArtifact(VersionedReference reference)
           
 boolean hasContent(ArtifactReference reference)
          Determines if the artifact referenced exists in the repository.
 boolean hasContent(ProjectReference reference)
          Determines if the project referenced exists in the repository.
 boolean hasContent(VersionedReference reference)
          Determines if the version reference exists in the repository.
 void setFiletypes(FileTypes filetypes)
           
 void setRepository(ManagedRepository repository)
          Set the repository configuration to associate with this repository content.
 ArtifactReference toArtifactReference(String path)
          Convert a path to an artifact reference.
 File toFile(ArchivaArtifact reference)
          Given an ArchivaArtifact, return the file reference to the artifact.
 File toFile(ArtifactReference reference)
          Given an ArtifactReference, return the file reference to the artifact.
 
Methods inherited from class org.apache.archiva.repository.content.maven2.AbstractDefaultRepositoryContent
initialize, toMetadataPath, toMetadataPath, toPath, toPath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.archiva.repository.ManagedRepositoryContent
toMetadataPath, toMetadataPath, toPath, toPath
 

Field Detail

filetypes

@Inject
@Named(value="fileTypes")
private FileTypes filetypes

repository

private ManagedRepository repository
Constructor Detail

ManagedDefaultRepositoryContent

public ManagedDefaultRepositoryContent()
Method Detail

deleteVersion

public void deleteVersion(VersionedReference reference)
Description copied from interface: ManagedRepositoryContent
Delete from the managed repository all files / directories associated with the provided version reference.

Specified by:
deleteVersion in interface ManagedRepositoryContent
Parameters:
reference - the version reference to delete.

deleteProject

public void deleteProject(String namespace,
                          String projectId)
                   throws RepositoryException,
                          ContentNotFoundException
Specified by:
deleteProject in interface ManagedRepositoryContent
Parameters:
namespace - groupId for maven
projectId - artifactId for maven
Throws:
ContentNotFoundException
RepositoryException

deleteArtifact

public void deleteArtifact(ArtifactReference artifactReference)
Description copied from interface: ManagedRepositoryContent
delete a specified artifact from the repository

Specified by:
deleteArtifact in interface ManagedRepositoryContent

deleteGroupId

public void deleteGroupId(String groupId)
                   throws ContentNotFoundException
Specified by:
deleteGroupId in interface ManagedRepositoryContent
Throws:
ContentNotFoundException

getId

public String getId()
Description copied from interface: ManagedRepositoryContent

Convenience method to get the repository id.

Equivalent to calling .getRepository().getId()

Specified by:
getId in interface ManagedRepositoryContent
Returns:
the repository id.

getRelatedArtifacts

public Set<ArtifactReference> getRelatedArtifacts(ArtifactReference reference)
                                           throws ContentNotFoundException
Description copied from interface: ManagedRepositoryContent

Gather up the list of related artifacts to the ArtifactReference provided. This typically inclues the pom files, and those things with classifiers (such as doc, source code, test libs, etc...)

NOTE: Some layouts (such as maven 1 "legacy") are not compatible with this query.

Specified by:
getRelatedArtifacts in interface ManagedRepositoryContent
Parameters:
reference - the reference to work off of.
Returns:
the set of ArtifactReferences for related artifacts.
Throws:
ContentNotFoundException - if the initial artifact reference does not exist within the repository.

getRepoRoot

public String getRepoRoot()
Description copied from interface: ManagedRepositoryContent

Convenience method to get the repository (on disk) root directory.

Equivalent to calling .getRepository().getLocation()

Specified by:
getRepoRoot in interface ManagedRepositoryContent
Returns:
the repository (on disk) root directory.

getRepository

public ManagedRepository getRepository()
Description copied from interface: ManagedRepositoryContent
Get the repository configuration associated with this repository content.

Specified by:
getRepository in interface ManagedRepositoryContent
Returns:
the repository that is associated with this repository content.

getVersions

public Set<String> getVersions(ProjectReference reference)
                        throws ContentNotFoundException,
                               LayoutException
Gather the Available Versions (on disk) for a specific Project Reference, based on filesystem information.

Specified by:
getVersions in interface ManagedRepositoryContent
Parameters:
reference - the project reference to work off of.
Returns:
the Set of available versions, based on the project reference.
Throws:
LayoutException
LayoutException
ContentNotFoundException - if the project reference does nto exist within the repository.

getVersions

public Set<String> getVersions(VersionedReference reference)
                        throws ContentNotFoundException
Description copied from interface: ManagedRepositoryContent

Given a specific VersionedReference, return the list of available versions for that versioned reference.

NOTE: This is really only useful when working with SNAPSHOTs.

Specified by:
getVersions in interface ManagedRepositoryContent
Parameters:
reference - the versioned reference to work off of.
Returns:
the set of versions found.
Throws:
ContentNotFoundException - if the versioned reference does not exist within the repository.

hasContent

public boolean hasContent(ArtifactReference reference)
Description copied from interface: ManagedRepositoryContent
Determines if the artifact referenced exists in the repository.

Specified by:
hasContent in interface ManagedRepositoryContent
Parameters:
reference - the artifact reference to check for.
Returns:
true if the artifact referenced exists.

hasContent

public boolean hasContent(ProjectReference reference)
Description copied from interface: ManagedRepositoryContent
Determines if the project referenced exists in the repository.

Specified by:
hasContent in interface ManagedRepositoryContent
Parameters:
reference - the project reference to check for.
Returns:
true it the project referenced exists.

hasContent

public boolean hasContent(VersionedReference reference)
Description copied from interface: ManagedRepositoryContent
Determines if the version reference exists in the repository.

Specified by:
hasContent in interface ManagedRepositoryContent
Parameters:
reference - the version reference to check for.
Returns:
true if the version referenced exists.

setRepository

public void setRepository(ManagedRepository repository)
Description copied from interface: ManagedRepositoryContent
Set the repository configuration to associate with this repository content.

Specified by:
setRepository in interface ManagedRepositoryContent
Parameters:
repository - the repository to associate with this repository content.

toArtifactReference

public ArtifactReference toArtifactReference(String path)
                                      throws LayoutException
Convert a path to an artifact reference.

Specified by:
toArtifactReference in interface ManagedRepositoryContent
Overrides:
toArtifactReference in class AbstractDefaultRepositoryContent
Parameters:
path - the path to convert. (relative or full location path)
Returns:
the ArtifactReference representing the path. (or null if path cannot be converted to a ArtifactReference)
Throws:
LayoutException - if the path cannot be converted to an artifact reference.

toFile

public File toFile(ArtifactReference reference)
Description copied from interface: ManagedRepositoryContent
Given an ArtifactReference, return the file reference to the artifact.

Specified by:
toFile in interface ManagedRepositoryContent
Parameters:
reference - the artifact reference to use.
Returns:
the relative path to the artifact.

toFile

public File toFile(ArchivaArtifact reference)
Description copied from interface: ManagedRepositoryContent
Given an ArchivaArtifact, return the file reference to the artifact.

Specified by:
toFile in interface ManagedRepositoryContent
Parameters:
reference - the archiva artifact to use.
Returns:
the relative path to the artifact.

getFirstArtifact

private ArtifactReference getFirstArtifact(VersionedReference reference)
                                    throws LayoutException,
                                           IOException
Get the first Artifact found in the provided VersionedReference location.

Parameters:
reference - the reference to the versioned reference to search within
Returns:
the ArtifactReference to the first artifact located within the versioned reference. or null if no artifact was found within the versioned reference.
Throws:
IOException - if the versioned reference is invalid (example: doesn't exist, or isn't a directory)
LayoutException

hasArtifact

private boolean hasArtifact(VersionedReference reference)
                     throws LayoutException
Throws:
LayoutException

setFiletypes

public void setFiletypes(FileTypes filetypes)


Copyright © 2006-2013 The Apache Software Foundation. All Rights Reserved.