Author: brett
Date: Wed Nov 25 15:33:40 2009
New Revision: 884147
URL: http://svn.apache.org/viewvc?rev=884147&view=rev
Log:
[MRM-1283] handle missing Maven facet
Modified:
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java
Modified:
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
URL:
http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java?rev=884147&r1=884146&r2=884147&view=diff
==============================================================================
---
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
(original)
+++
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java
Wed Nov 25 15:33:40 2009
@@ -150,16 +150,19 @@
// TODO: eventually, move to just use the metadata directly, with
minimal JSP changes, mostly for Maven specifics
model = new ArchivaProjectModel();
MavenProjectFacet projectFacet = (MavenProjectFacet)
versionMetadata.getFacet( MavenProjectFacet.FACET_ID );
- model.setGroupId( projectFacet.getGroupId() );
- model.setArtifactId( projectFacet.getArtifactId() );
- model.setPackaging( projectFacet.getPackaging() );
- if ( projectFacet.getParent() != null )
- {
- VersionedReference parent = new VersionedReference();
- parent.setGroupId( projectFacet.getParent().getGroupId() );
- parent.setArtifactId( projectFacet.getParent().getArtifactId() );
- parent.setVersion( projectFacet.getParent().getVersion() );
- model.setParentProject( parent );
+ if ( projectFacet != null )
+ {
+ model.setGroupId( projectFacet.getGroupId() );
+ model.setArtifactId( projectFacet.getArtifactId() );
+ model.setPackaging( projectFacet.getPackaging() );
+ if ( projectFacet.getParent() != null )
+ {
+ VersionedReference parent = new VersionedReference();
+ parent.setGroupId( projectFacet.getParent().getGroupId() );
+ parent.setArtifactId( projectFacet.getParent().getArtifactId()
);
+ parent.setVersion( projectFacet.getParent().getVersion() );
+ model.setParentProject( parent );
+ }
}
model.setVersion( versionMetadata.getId() );
Modified:
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java
URL:
http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java?rev=884147&r1=884146&r2=884147&view=diff
==============================================================================
---
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java
(original)
+++
archiva/branches/MRM-1025/archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/ShowArtifactActionTest.java
Wed Nov 25 15:33:40 2009
@@ -308,6 +308,37 @@
assertTrue( action.getSnapshotVersions().isEmpty() );
}
+ public void testGetArtifactNoMavenFacet()
+ {
+ ProjectVersionMetadata versionMetadata = new ProjectVersionMetadata();
+ versionMetadata.setId( TEST_VERSION );
+ versionMetadata.setUrl( TEST_URL );
+ versionMetadata.setName( TEST_NAME );
+ versionMetadata.setDescription( TEST_DESCRIPTION );
+
+ metadataResolver.setProjectVersion( TEST_REPO, TEST_GROUP_ID,
TEST_ARTIFACT_ID, versionMetadata );
+
+ setActionParameters();
+
+ String result = action.artifact();
+
+ assertActionSuccess( action, result );
+
+ assertActionParameters( action );
+ ArchivaProjectModel model = action.getModel();
+ assertEquals( TEST_VERSION, model.getVersion() );
+ assertEquals( TEST_URL, model.getUrl() );
+ assertEquals( TEST_NAME, model.getName() );
+ assertEquals( TEST_DESCRIPTION, model.getDescription() );
+
+ assertEquals( TEST_REPO, action.getRepositoryId() );
+
+ assertNull( action.getDependees() );
+ assertNull( action.getDependencies() );
+ assertNull( action.getMailingLists() );
+ assertTrue( action.getSnapshotVersions().isEmpty() );
+ }
+
private void assertNoOutputFields()
{
assertNull( action.getModel() );