You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by jo...@apache.org on 2007/05/22 01:01:38 UTC
svn commit: r540343 - in /maven/archiva/trunk:
archiva-base/archiva-consumers/archiva-database-consumers/src/test/
archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/
archiva-base/archiva-model/src/main/java/org/apache/maven/archiv...
Author: joakime
Date: Mon May 21 16:01:36 2007
New Revision: 540343
URL: http://svn.apache.org/viewvc?view=rev&rev=540343
Log:
[MRM-346]: Show Artifact results in error 500.
Added:
maven/archiva/trunk/archiva-base/archiva-consumers/archiva-database-consumers/src/test/
maven/archiva/trunk/archiva-database/src/test/resources/projects/
maven/archiva/trunk/archiva-database/src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom
Modified:
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractArtifactKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractProjectKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractVersionedKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactJavaDetailsKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactModelKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaProjectModelKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaRepositoryMetadataKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArtifactReferenceKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ProjectReferenceKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/VersionedReferenceKey.java
maven/archiva/trunk/archiva-base/archiva-model/src/main/mdo/archiva-base.xml
maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java
maven/archiva/trunk/archiva-database/pom.xml
maven/archiva/trunk/archiva-database/src/main/java/org/apache/maven/archiva/database/jdo/JdoAccess.java
maven/archiva/trunk/archiva-database/src/test/java/org/apache/maven/archiva/database/jdo/JdoProjectModelDAOTest.java
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractArtifactKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractArtifactKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractArtifactKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractArtifactKey.java Mon May 21 16:01:36 2007
@@ -79,6 +79,8 @@
public class AbstractArtifactKey
implements CompoundKey, Serializable
{
+ private static final long serialVersionUID = 1084250769223555422L;
+
/**
* The Group ID. (JPOX Requires this remain public)
*/
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractProjectKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractProjectKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractProjectKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractProjectKey.java Mon May 21 16:01:36 2007
@@ -79,6 +79,8 @@
public class AbstractProjectKey
implements CompoundKey, Serializable
{
+ private static final long serialVersionUID = 4949927971768396064L;
+
/**
* The Group ID. (JPOX Requires this remain public)
*/
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractVersionedKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractVersionedKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractVersionedKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/AbstractVersionedKey.java Mon May 21 16:01:36 2007
@@ -79,6 +79,8 @@
public class AbstractVersionedKey
implements CompoundKey, Serializable
{
+ private static final long serialVersionUID = -5389698374243146150L;
+
/**
* The Group ID. (JPOX Requires this remain public)
*/
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactJavaDetailsKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactJavaDetailsKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactJavaDetailsKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactJavaDetailsKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,7 @@
extends AbstractArtifactKey
implements Serializable
{
+ private static final long serialVersionUID = -2565748477203220905L;
public ArchivaArtifactJavaDetailsKey()
{
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactModelKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactModelKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactModelKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaArtifactModelKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,8 @@
extends AbstractArtifactKey
implements Serializable
{
+ private static final long serialVersionUID = -6381910527697704289L;
+
public ArchivaArtifactModelKey()
{
super();
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaProjectModelKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaProjectModelKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaProjectModelKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaProjectModelKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,7 @@
extends AbstractVersionedKey
implements Serializable
{
+ private static final long serialVersionUID = 7789859208617327581L;
public ArchivaProjectModelKey()
{
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaRepositoryMetadataKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaRepositoryMetadataKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaRepositoryMetadataKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArchivaRepositoryMetadataKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,7 @@
extends AbstractVersionedKey
implements Serializable
{
+ private static final long serialVersionUID = -7288079965200698253L;
public ArchivaRepositoryMetadataKey()
{
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArtifactReferenceKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArtifactReferenceKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArtifactReferenceKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ArtifactReferenceKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,7 @@
extends AbstractArtifactKey
implements Serializable
{
+ private static final long serialVersionUID = 2107985498806534183L;
public ArtifactReferenceKey()
{
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ProjectReferenceKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ProjectReferenceKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ProjectReferenceKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/ProjectReferenceKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,8 @@
extends AbstractProjectKey
implements Serializable
{
+ private static final long serialVersionUID = 7803774484166902823L;
+
public ProjectReferenceKey()
{
super();
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/VersionedReferenceKey.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/VersionedReferenceKey.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/VersionedReferenceKey.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/java/org/apache/maven/archiva/model/jpox/VersionedReferenceKey.java Mon May 21 16:01:36 2007
@@ -33,6 +33,7 @@
extends AbstractVersionedKey
implements Serializable
{
+ private static final long serialVersionUID = -5040195285240958302L;
public VersionedReferenceKey()
{
Modified: maven/archiva/trunk/archiva-base/archiva-model/src/main/mdo/archiva-base.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-model/src/main/mdo/archiva-base.xml?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-model/src/main/mdo/archiva-base.xml (original)
+++ maven/archiva/trunk/archiva-base/archiva-model/src/main/mdo/archiva-base.xml Mon May 21 16:01:36 2007
@@ -74,6 +74,14 @@
</association>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 3259707008803111764L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<!-- _______________________________________________________________
@@ -168,6 +176,14 @@
<defaultValue>false</defaultValue>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 6823195399928260795L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<!-- _______________________________________________________________
@@ -362,6 +378,12 @@
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
+ private static final long serialVersionUID = -6292417108113887384L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
/**
* Identify if this artifact's contents have been processed or not.
*
@@ -473,6 +495,12 @@
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
+ private static final long serialVersionUID = -4774236779581844880L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
/**
* Identify this implementation as a set of java details.
*
@@ -639,6 +667,12 @@
</fields>
<codeSegments>
<codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 914715358219606100L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
<version>1.0.0</version>
<code>
public void updateTimestamp()
@@ -681,6 +715,14 @@
<description>The incremental build number of the snapshot.</description>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -1251466956496493405L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
@@ -727,6 +769,14 @@
</description>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 8947981859537138991L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class stash.storable="true"
@@ -775,6 +825,14 @@
</description>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -6990353165677563113L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class stash.storable="true"
@@ -851,6 +909,12 @@
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
+ private static final long serialVersionUID = -6116764846682178732L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
public static String toKey( ArtifactReference artifactReference )
{
StringBuffer key = new StringBuffer();
@@ -1165,6 +1229,12 @@
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
+ private static final long serialVersionUID = -4216128775884469616L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
public Dependency asDependency()
{
Dependency dep = new Dependency();
@@ -1227,6 +1297,14 @@
</association>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 843006855864469245L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class stash.storable="true"
@@ -1261,7 +1339,16 @@
<type>String</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -7782212828768434535L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
+
<class stash.storable="true"
jpox.table="LICENSES">
<name>License</name>
@@ -1302,7 +1389,16 @@
<type>String</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 6078130909089038238L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
+
<class stash.storable="true"
jpox.table="ISSUE_MANAGEMENT">
<name>IssueManagement</name>
@@ -1325,6 +1421,14 @@
<type>String</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -8881904886381224821L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class>
@@ -1347,6 +1451,14 @@
<type>String</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 7592740408468517476L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class stash.storable="true">
@@ -1441,6 +1553,14 @@
</association>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -3847642264665088605L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<class stash.storable="true"
@@ -1574,6 +1694,12 @@
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
+ private static final long serialVersionUID = -5401218809636164002L;
+ ]]></code>
+ </codeSegment>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
public String toString()
{
return Dependency.toKey( this );
@@ -1636,7 +1762,16 @@
<required>true</required>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 5655957444245343314L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
+
<class stash.storable="true"
jpox.table="SCM">
<name>Scm</name>
@@ -1672,7 +1807,16 @@
<type>String</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 4075086167850885575L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
+
<class stash.storable="true"
jpox.table="PROJECT_REPOSITORIES">
<name>ProjectRepository</name>
@@ -1738,6 +1882,14 @@
<type>boolean</type>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = 8906309721278091848L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<!-- _______________________________________________________________
@@ -1829,6 +1981,14 @@
</description>
</field>
</fields>
+ <codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -3426958367216659565L;
+ ]]></code>
+ </codeSegment>
+ </codeSegments>
</class>
<!-- _______________________________________________________________
@@ -1896,6 +2056,12 @@
</field>
</fields>
<codeSegments>
+ <codeSegment>
+ <version>1.0.0+</version>
+ <code><![CDATA[
+ private static final long serialVersionUID = -7113629916828442780L;
+ ]]></code>
+ </codeSegment>
<codeSegment>
<version>1.0.0+</version>
<code><![CDATA[
Modified: maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java (original)
+++ maven/archiva/trunk/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/project/readers/ProjectModel400Reader.java Mon May 21 16:01:36 2007
@@ -113,15 +113,15 @@
}
}
- private ArtifactReference getArtifactReference( Element elemPlugin )
+ private ArtifactReference getArtifactReference( Element elemPlugin, String defaultType )
{
ArtifactReference reference = new ArtifactReference();
- reference.setGroupId( elemPlugin.elementTextTrim( "groupId" ) );
+ reference.setGroupId( StringUtils.defaultString( elemPlugin.elementTextTrim( "groupId" ) ) );
reference.setArtifactId( elemPlugin.elementTextTrim( "artifactId" ) );
- reference.setVersion( elemPlugin.elementTextTrim( "version" ) );
- reference.setClassifier( elemPlugin.elementTextTrim( "classifier" ) );
- reference.setType( elemPlugin.elementTextTrim( "type" ) );
+ reference.setVersion( StringUtils.defaultString( elemPlugin.elementTextTrim( "version" ) ) );
+ reference.setClassifier( StringUtils.defaultString( elemPlugin.elementTextTrim( "classifier" ) ) );
+ reference.setType( StringUtils.defaultIfEmpty( elemPlugin.elementTextTrim( "type" ), defaultType ) );
return reference;
}
@@ -420,7 +420,7 @@
{
Element elemPlugin = (Element) it.next();
- plugins.add( getArtifactReference( elemPlugin ) );
+ plugins.add( getArtifactReference( elemPlugin, "maven-plugin" ) );
}
return plugins;
Modified: maven/archiva/trunk/archiva-database/pom.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-database/pom.xml?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-database/pom.xml (original)
+++ maven/archiva/trunk/archiva-database/pom.xml Mon May 21 16:01:36 2007
@@ -104,6 +104,11 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>org.apache.maven.archiva</groupId>
+ <artifactId>archiva-repository-layer</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<scope>test</scope>
Modified: maven/archiva/trunk/archiva-database/src/main/java/org/apache/maven/archiva/database/jdo/JdoAccess.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-database/src/main/java/org/apache/maven/archiva/database/jdo/JdoAccess.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-database/src/main/java/org/apache/maven/archiva/database/jdo/JdoAccess.java (original)
+++ maven/archiva/trunk/archiva-database/src/main/java/org/apache/maven/archiva/database/jdo/JdoAccess.java Mon May 21 16:01:36 2007
@@ -28,10 +28,16 @@
import org.apache.maven.archiva.database.constraints.AbstractSimpleConstraint;
import org.apache.maven.archiva.model.CompoundKey;
import org.codehaus.plexus.jdo.JdoFactory;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
+import org.jpox.SchemaTool;
+import sun.security.action.GetLongAction;
+
+import java.io.File;
import java.io.PrintStream;
+import java.net.URL;
import java.util.ArrayList;
import java.util.List;
@@ -59,6 +65,7 @@
* @plexus.component role="org.apache.maven.archiva.database.jdo.JdoAccess" role-hint="archiva"
*/
public class JdoAccess
+ extends AbstractLogEnabled
implements Initializable, InstanceLifecycleListener, StoreLifecycleListener
{
/**
@@ -72,7 +79,25 @@
throws InitializationException
{
pmf = jdoFactory.getPersistenceManagerFactory();
+
+ // Create the schema (if needed)
+ URL jdoFileUrls[] = new URL[] { getClass().getResource( "/org/apache/maven/archiva/model/package.jdo" ) };
+
+ File propsFile = null; // intentional
+ boolean verbose = true;
+
+ try
+ {
+ SchemaTool.createSchemaTables( jdoFileUrls, new URL[] {}, propsFile, verbose, null );
+ }
+ catch ( Exception e )
+ {
+ getLogger().error( "Unable to create schema: " + e.getMessage(), e );
+ }
+
+ pmf.getPersistenceManager();
+ // Add the lifecycle listener.
pmf.addInstanceLifecycleListener( this, null );
}
Modified: maven/archiva/trunk/archiva-database/src/test/java/org/apache/maven/archiva/database/jdo/JdoProjectModelDAOTest.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-database/src/test/java/org/apache/maven/archiva/database/jdo/JdoProjectModelDAOTest.java?view=diff&rev=540343&r1=540342&r2=540343
==============================================================================
--- maven/archiva/trunk/archiva-database/src/test/java/org/apache/maven/archiva/database/jdo/JdoProjectModelDAOTest.java (original)
+++ maven/archiva/trunk/archiva-database/src/test/java/org/apache/maven/archiva/database/jdo/JdoProjectModelDAOTest.java Mon May 21 16:01:36 2007
@@ -23,7 +23,9 @@
import org.apache.maven.archiva.database.ProjectModelDAO;
import org.apache.maven.archiva.model.ArchivaProjectModel;
import org.apache.maven.archiva.model.jpox.ArchivaProjectModelKey;
+import org.apache.maven.archiva.repository.project.ProjectModelReader;
+import java.io.File;
import java.util.Date;
import java.util.List;
@@ -107,5 +109,36 @@
// Delete object.
projectDao.deleteProjectModel( actualModel );
assertEquals( 0, projectDao.queryProjectModels( null ).size() );
+ }
+
+ public void testSaveGetRealProjectModel()
+ throws Exception
+ {
+ String groupId = "org.apache.maven.shared";
+ String artifactId = "maven-shared-jar";
+ String version = "1.0-SNAPSHOT";
+
+ ProjectModelDAO projectDao = dao.getProjectModelDAO();
+
+ ProjectModelReader modelReader = (ProjectModelReader) lookup( ProjectModelReader.class, "model400" );
+
+ File pomFile = getTestFile( "src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom" );
+
+ assertTrue( "pom file should exist: " + pomFile.getAbsolutePath(), pomFile.exists() && pomFile.isFile() );
+
+ ArchivaProjectModel model = modelReader.read( pomFile );
+ assertNotNull( "Model should not be null.", model );
+
+ // Fill in missing (mandatory) fields
+ model.setGroupId( groupId );
+ model.setOrigin( "testcase" );
+
+ projectDao.saveProjectModel( model );
+
+ ArchivaProjectModel savedModel = projectDao.getProjectModel( groupId, artifactId, version );
+ assertNotNull( "Project model should not be null.", savedModel );
+
+ // Test proper detachment of sub-objects.
+ assertNotNull( "model.parent != null", savedModel.getParentProject() );
}
}
Added: maven/archiva/trunk/archiva-database/src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-database/src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom?view=auto&rev=540343
==============================================================================
--- maven/archiva/trunk/archiva-database/src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom (added)
+++ maven/archiva/trunk/archiva-database/src/test/resources/projects/maven-shared-jar-1.0-SNAPSHOT.pom Mon May 21 16:01:36 2007
@@ -0,0 +1,175 @@
+<?xml version="1.0" ?>
+
+<!--
+ ~ Copyright 2005-2006 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.
+ -->
+
+<project
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-shared-components</artifactId>
+ <version>3</version>
+ </parent>
+
+ <artifactId>maven-shared-jar</artifactId>
+ <packaging>jar</packaging>
+ <version>1.0-SNAPSHOT</version>
+
+ <name>Maven Shared Jar Utils</name>
+
+ <scm>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/maven/sandbox/maven-shared-jar</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/maven/sandbox/maven-shared-jar</developerConnection>
+ <url>http://svn.apache.org/viewcvs.cgi/maven/sandbox/maven-shared-jar</url>
+ </scm>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>descriptor</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>changelog-maven-plugin</artifactId>
+ <!-- Changelog has been moved to org.apache.maven.plugins
+ Need to adjust this location in the future to point to
+ the finalized copy of this plugin.
+ <artifactId>maven-changelog-plugin</artifactId>
+ -->
+ </plugin>
+ <plugin>
+ <artifactId>maven-jxr-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <configuration>
+ <linkXref>true</linkXref>
+ <rulesets>
+ <ruleset>rulesets/basic.xml</ruleset>
+ <ruleset>rulesets/codesize.xml</ruleset>
+ <ruleset>rulesets/controversial.xml</ruleset>
+ <ruleset>rulesets/coupling.xml</ruleset>
+ <ruleset>rulesets/finalizers.xml</ruleset>
+ <ruleset>rulesets/imports.xml</ruleset>
+ <ruleset>rulesets/junit.xml</ruleset>
+ <ruleset>rulesets/logging-jakarta-commons.xml</ruleset>
+ <ruleset>rulesets/naming.xml</ruleset>
+ <ruleset>rulesets/optimizations.xml</ruleset>
+ <ruleset>rulesets/strictexception.xml</ruleset>
+ <ruleset>rulesets/strings.xml</ruleset>
+ <ruleset>rulesets/sunsecure.xml</ruleset>
+ <ruleset>rulesets/unusedcode.xml</ruleset>
+ </rulesets>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <repositories>
+ <repository>
+ <id>snapshots.codehaus</id>
+ <url>http://snapshots.repository.codehaus.org/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-model</artifactId>
+ <version>2.0.2</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-artifact-manager</artifactId>
+ <version>2.0.2</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-digest</artifactId>
+ <version>1.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.bcel</groupId>
+ <artifactId>bcel</artifactId>
+ <version>5.2</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.1</version>
+ <scope>compile</scope>
+ </dependency>
+
+ </dependencies>
+
+</project>