Author: brett
Date: Wed Nov 25 15:18:54 2009
New Revision: 884134
URL: http://svn.apache.org/viewvc?rev=884134&view=rev
Log:
[MRM-1282] fix some problems with the metadata repository
Modified:
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java
archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
Modified:
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java
URL:
http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java?rev=884134&r1=884133&r2=884134&view=diff
==============================================================================
---
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java
(original)
+++
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectVersionMetadata.java
Wed Nov 25 15:18:54 2009
@@ -156,6 +156,6 @@
public ProjectVersionFacet getFacet( String facetId )
{
- return this.facets.get( facetId );
+ return this.facets != null ? this.facets.get( facetId ) : null;
}
}
Modified:
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java
URL:
http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java?rev=884134&r1=884133&r2=884134&view=diff
==============================================================================
---
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java
(original)
+++
archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/DefaultMetadataResolver.java
Wed Nov 25 15:18:54 2009
@@ -37,7 +37,8 @@
/**
* FIXME: this needs to be configurable based on storage type, and
availability of proxy module
- * ... could be a different type since we need methods to modify
the storage metadata
+ * ... could be a different type since we need methods to modify the
storage metadata
+ *
* @plexus.requirement role-hint="maven2"
*/
private MetadataResolver storageResolver;
@@ -48,21 +49,27 @@
return metadataRepository.getProject( repoId, namespace, projectId );
}
- public ProjectVersionMetadata getProjectVersion( String repoId, String
namespace, String projectId, String projectVersion )
+ public ProjectVersionMetadata getProjectVersion( String repoId, String
namespace, String projectId,
+ String projectVersion )
throws MetadataResolverException
{
- ProjectVersionMetadata metadata =
metadataRepository.getProjectVersion( repoId, namespace, projectId,
projectVersion );
+ ProjectVersionMetadata metadata =
+ metadataRepository.getProjectVersion( repoId, namespace,
projectId, projectVersion );
// TODO: do we want to detect changes as well by comparing timestamps?
isProjectVersionNewerThan(updated)
// in such cases we might also remove/update stale metadata,
including adjusting plugin-based facets
if ( metadata == null )
{
metadata = storageResolver.getProjectVersion( repoId, namespace,
projectId, projectVersion );
- metadataRepository.updateProjectVersion( repoId, namespace,
projectId, metadata );
+ if ( metadata != null )
+ {
+ metadataRepository.updateProjectVersion( repoId, namespace,
projectId, metadata );
+ }
}
return metadata;
}
- public Collection<String> getArtifactVersions( String repoId, String
namespace, String projectId, String projectVersion )
+ public Collection<String> getArtifactVersions( String repoId, String
namespace, String projectId,
+ String projectVersion )
{
// TODO: intercept
return metadataRepository.getArtifactVersions( repoId, namespace,
projectId, projectVersion );
Modified:
archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
URL:
http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java?rev=884134&r1=884133&r2=884134&view=diff
==============================================================================
---
archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
(original)
+++
archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
Wed Nov 25 15:18:54 2009
@@ -134,9 +134,9 @@
return properties;
}
- public ProjectMetadata getProject( String repoId, String groupId, String
projectId )
+ public ProjectMetadata getProject( String repoId, String namespace, String
projectId )
{
- File directory = new File( this.directory, repoId + "/" + projectId );
+ File directory = new File( this.directory, repoId + "/" + namespace +
"/" + projectId );
Properties properties = readProperties( directory );
@@ -146,22 +146,26 @@
return project;
}
- public ProjectVersionMetadata getProjectVersion( String repoId, String
groupId, String projectId,
+ public ProjectVersionMetadata getProjectVersion( String repoId, String
namespace, String projectId,
String projectVersion )
{
- File directory = new File( this.directory, repoId + "/" + projectId +
"/" + projectVersion );
+ File directory = new File( this.directory, repoId + "/" + namespace +
"/" + projectId + "/" + projectVersion );
Properties properties = readProperties( directory );
-
- ProjectVersionMetadata versionMetadata = new ProjectVersionMetadata();
- versionMetadata.setId( properties.getProperty( "id" ) );
+ String id = properties.getProperty( "id" );
+ ProjectVersionMetadata versionMetadata = null;
+ if ( id != null )
+ {
+ versionMetadata = new ProjectVersionMetadata();
+ versionMetadata.setId( id );
+ }
return versionMetadata;
}
public Collection<String> getArtifactVersions( String repoId, String
namespace, String projectId,
String projectVersion )
{
- File directory = new File( this.directory, repoId + "/" + projectId +
"/" + projectVersion );
+ File directory = new File( this.directory, repoId + "/" + namespace +
"/" + projectId + "/" + projectVersion );
Properties properties = readProperties( directory );