* Adding <archiva:downloadArtifact /> taglib. * Adding ability to download sources, javadoc, and client jars too. * Adding ActiveManagedRepositories class to aide in anonymous artifact handling. * Adding test-repository for maven 2.x j2ee artifacts with sources / javadoc / client jars. * Adding ManagedArtifact class to track this relationship between main artifact and attached artifacts. git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/trunk@503520 13f79535-47bb-0310-9956-ffa450edef68tags/archiva-0.9-alpha-1
@@ -58,6 +58,11 @@ | |||
<artifactId>plexus-quartz</artifactId> | |||
<version>1.0-alpha-4-SNAPSHOT</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.codehaus.plexus.cache</groupId> | |||
<artifactId>plexus-cache-ehcache</artifactId> | |||
<version>1.0-alpha-1-SNAPSHOT</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.codehaus.plexus</groupId> | |||
<artifactId>plexus-taskqueue</artifactId> |
@@ -0,0 +1,76 @@ | |||
package org.apache.maven.archiva.artifact; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.maven.artifact.Artifact; | |||
import java.util.HashMap; | |||
import java.util.Map; | |||
/** | |||
* ManagedArtifact | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class ManagedArtifact | |||
{ | |||
private String repositoryId; | |||
private Artifact artifact; | |||
private String path; | |||
protected Map attached; | |||
public ManagedArtifact( String repoId, Artifact artifact, String path ) | |||
{ | |||
super(); | |||
this.repositoryId = repoId; | |||
this.artifact = artifact; | |||
this.path = path; | |||
this.attached = new HashMap(); | |||
} | |||
public Artifact getArtifact() | |||
{ | |||
return artifact; | |||
} | |||
public String getPath() | |||
{ | |||
return path; | |||
} | |||
public String getRepositoryId() | |||
{ | |||
return repositoryId; | |||
} | |||
public Map getAttached() | |||
{ | |||
return attached; | |||
} | |||
public void setAttached( Map attached ) | |||
{ | |||
this.attached = attached; | |||
} | |||
} |
@@ -0,0 +1,81 @@ | |||
package org.apache.maven.archiva.artifact; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.commons.lang.StringUtils; | |||
import java.util.ArrayList; | |||
import java.util.List; | |||
/** | |||
* ManagedArtifactTypes - provides place to test an unknown artifact type. | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class ManagedArtifactTypes | |||
{ | |||
public static final int GENERIC = 0; | |||
public static final int JAVA = 1; | |||
public static final int EJB = 2; | |||
private static List javaArtifacts; | |||
private static List ejbArtifacts; | |||
static | |||
{ | |||
javaArtifacts = new ArrayList(); | |||
javaArtifacts.add( "jar" ); | |||
javaArtifacts.add( "war" ); | |||
javaArtifacts.add( "sar" ); | |||
javaArtifacts.add( "rar" ); | |||
javaArtifacts.add( "ear" ); | |||
ejbArtifacts = new ArrayList(); | |||
ejbArtifacts.add( "ejb" ); | |||
ejbArtifacts.add( "ejb-client" ); | |||
} | |||
public static int whichType( String type ) | |||
{ | |||
if ( StringUtils.isBlank( type ) ) | |||
{ | |||
// TODO: is an empty type even possible? | |||
return GENERIC; | |||
} | |||
type = type.toLowerCase(); | |||
if ( ejbArtifacts.contains( type ) ) | |||
{ | |||
return EJB; | |||
} | |||
if ( javaArtifacts.contains( type ) ) | |||
{ | |||
return JAVA; | |||
} | |||
return GENERIC; | |||
} | |||
} |
@@ -0,0 +1,49 @@ | |||
package org.apache.maven.archiva.artifact; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.maven.artifact.Artifact; | |||
/** | |||
* ManagedEjbArtifact - adds the ability to reference the ejb-client jar too. | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class ManagedEjbArtifact | |||
extends ManagedJavaArtifact | |||
{ | |||
public static final String CLIENT = "client"; | |||
public ManagedEjbArtifact( String repoId, Artifact artifact, String path ) | |||
{ | |||
super( repoId, artifact, path ); | |||
} | |||
public String getClientPath() | |||
{ | |||
return (String) super.attached.get( CLIENT ); | |||
} | |||
public void setClientPath( String clientPath ) | |||
{ | |||
super.attached.put( CLIENT, clientPath ); | |||
} | |||
} |
@@ -0,0 +1,62 @@ | |||
package org.apache.maven.archiva.artifact; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.maven.artifact.Artifact; | |||
/** | |||
* ManagedJavaArtifact - a ManagedArtifact with optional javadoc and source | |||
* reference jars. | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class ManagedJavaArtifact | |||
extends ManagedArtifact | |||
{ | |||
public static final String JAVADOC = "javadoc"; | |||
public static final String SOURCES = "sources"; | |||
public ManagedJavaArtifact( String repoId, Artifact artifact, String path ) | |||
{ | |||
super( repoId, artifact, path ); | |||
} | |||
public String getJavadocPath() | |||
{ | |||
return (String) super.attached.get( JAVADOC ); | |||
} | |||
public void setJavadocPath( String javadocPath ) | |||
{ | |||
super.attached.put( JAVADOC, javadocPath ); | |||
} | |||
public String getSourcesPath() | |||
{ | |||
return (String) super.attached.get( SOURCES ); | |||
} | |||
public void setSourcesPath( String sourcesPath ) | |||
{ | |||
super.attached.put( SOURCES, sourcesPath ); | |||
} | |||
} |
@@ -0,0 +1,58 @@ | |||
package org.apache.maven.archiva.repositories; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.maven.archiva.artifact.ManagedArtifact; | |||
import org.apache.maven.archiva.configuration.RepositoryConfiguration; | |||
import org.apache.maven.artifact.Artifact; | |||
import org.apache.maven.artifact.repository.ArtifactRepository; | |||
import org.apache.maven.project.MavenProject; | |||
import org.apache.maven.project.ProjectBuildingException; | |||
/** | |||
* ActiveManagedRepositories | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public interface ActiveManagedRepositories | |||
{ | |||
public static final String ROLE = ActiveManagedRepositories.class.getName(); | |||
/** | |||
* Obtain the ArtifactRepository for the specified Repository ID. | |||
* | |||
* @param id the ID of the repository. | |||
* @return the ArtifactRepository associated with the provided ID, or null if none found. | |||
*/ | |||
public ArtifactRepository getArtifactRepository( String id ); | |||
public RepositoryConfiguration getRepositoryConfiguration( String id ); | |||
public MavenProject findProject( String groupId, String artifactId, String version ) | |||
throws ProjectBuildingException; | |||
public ManagedArtifact findArtifact( String groupId, String artifactId, String version ) | |||
throws ProjectBuildingException; | |||
public ManagedArtifact findArtifact( String groupId, String artifactId, String version, String type ); | |||
public ManagedArtifact findArtifact( Artifact artifact ); | |||
} |
@@ -0,0 +1,284 @@ | |||
package org.apache.maven.archiva.repositories; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.commons.lang.StringUtils; | |||
import org.apache.maven.archiva.artifact.ManagedArtifact; | |||
import org.apache.maven.archiva.artifact.ManagedArtifactTypes; | |||
import org.apache.maven.archiva.artifact.ManagedEjbArtifact; | |||
import org.apache.maven.archiva.artifact.ManagedJavaArtifact; | |||
import org.apache.maven.archiva.configuration.Configuration; | |||
import org.apache.maven.archiva.configuration.ConfigurationChangeException; | |||
import org.apache.maven.archiva.configuration.ConfigurationChangeListener; | |||
import org.apache.maven.archiva.configuration.ConfigurationStore; | |||
import org.apache.maven.archiva.configuration.ConfigurationStoreException; | |||
import org.apache.maven.archiva.configuration.ConfiguredRepositoryFactory; | |||
import org.apache.maven.archiva.configuration.InvalidConfigurationException; | |||
import org.apache.maven.archiva.configuration.RepositoryConfiguration; | |||
import org.apache.maven.artifact.Artifact; | |||
import org.apache.maven.artifact.factory.ArtifactFactory; | |||
import org.apache.maven.artifact.repository.ArtifactRepository; | |||
import org.apache.maven.model.Model; | |||
import org.apache.maven.project.MavenProject; | |||
import org.apache.maven.project.MavenProjectBuilder; | |||
import org.apache.maven.project.ProjectBuildingException; | |||
import org.codehaus.plexus.cache.Cache; | |||
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; | |||
import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; | |||
import java.io.File; | |||
import java.util.Iterator; | |||
import java.util.List; | |||
/** | |||
* DefaultActiveManagedRepositories | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
* @plexus.component role="org.apache.maven.archiva.repositories.ActiveManagedRepositories" | |||
*/ | |||
public class DefaultActiveManagedRepositories | |||
implements ActiveManagedRepositories, ConfigurationChangeListener, Initializable | |||
{ | |||
/** | |||
* @plexus.requirement role-hint="artifactCache" | |||
*/ | |||
private Cache artifactCache; | |||
/** | |||
* @plexus.requirement | |||
*/ | |||
private ArtifactFactory artifactFactory; | |||
/** | |||
* @plexus.requirement | |||
*/ | |||
private ConfigurationStore configurationStore; | |||
/** | |||
* @plexus.requirement | |||
*/ | |||
private MavenProjectBuilder projectBuilder; | |||
/** | |||
* @plexus.requirement role-hint="projectCache" | |||
*/ | |||
private Cache projectCache; | |||
/** | |||
* @plexus.requirement | |||
*/ | |||
private ConfiguredRepositoryFactory repositoryFactory; | |||
private Configuration configuration; | |||
private ArtifactRepository localRepository; | |||
private List repositories; | |||
public Artifact createRelatedArtifact( Artifact artifact, String classifier, String type ) | |||
{ | |||
String groupId = artifact.getGroupId(); | |||
String artifactId = artifact.getArtifactId(); | |||
String version = artifact.getVersion(); | |||
String reltype = StringUtils.defaultIfEmpty( type, artifact.getType() ); | |||
return artifactFactory.createArtifactWithClassifier( groupId, artifactId, version, reltype, classifier ); | |||
} | |||
public ManagedArtifact findArtifact( Artifact artifact ) | |||
{ | |||
ManagedArtifact managedArtifact = (ManagedArtifact) artifactCache.get( toKey( artifact ) ); | |||
if ( managedArtifact != null ) | |||
{ | |||
return managedArtifact; | |||
} | |||
boolean snapshot = artifact.isSnapshot(); | |||
for ( Iterator i = repositories.iterator(); i.hasNext(); ) | |||
{ | |||
ArtifactRepository repository = (ArtifactRepository) i.next(); | |||
if ( snapshot && !repository.getSnapshots().isEnabled() ) | |||
{ | |||
// skip repo. | |||
continue; | |||
} | |||
String path = repository.pathOf( artifact ); | |||
File f = new File( repository.getBasedir(), path ); | |||
if ( f.exists() ) | |||
{ | |||
// Found it. | |||
managedArtifact = createManagedArtifact( repository, artifact, f ); | |||
artifactCache.put( toKey( artifact ), managedArtifact ); | |||
return managedArtifact; | |||
} | |||
} | |||
return null; | |||
} | |||
public ManagedArtifact findArtifact( String groupId, String artifactId, String version ) | |||
throws ProjectBuildingException | |||
{ | |||
MavenProject project = findProject( groupId, artifactId, version ); | |||
Model model = project.getModel(); | |||
return findArtifact( model.getGroupId(), model.getArtifactId(), model.getVersion(), model.getPackaging() ); | |||
} | |||
public ManagedArtifact findArtifact( String groupId, String artifactId, String version, String type ) | |||
{ | |||
Artifact artifact = artifactFactory.createBuildArtifact( groupId, artifactId, version, type ); | |||
return findArtifact( artifact ); | |||
} | |||
public MavenProject findProject( String groupId, String artifactId, String version ) | |||
throws ProjectBuildingException | |||
{ | |||
MavenProject project = (MavenProject) projectCache.get( toKey( groupId, artifactId, version ) ); | |||
if ( project != null ) | |||
{ | |||
return project; | |||
} | |||
Artifact projectArtifact = artifactFactory.createProjectArtifact( groupId, artifactId, version ); | |||
project = projectBuilder.buildFromRepository( projectArtifact, repositories, localRepository ); | |||
projectCache.put( toKey( groupId, artifactId, version ), project ); | |||
return project; | |||
} | |||
public ArtifactRepository getArtifactRepository( String id ) | |||
{ | |||
RepositoryConfiguration repoConfig = getRepositoryConfiguration( id ); | |||
if ( repoConfig == null ) | |||
{ | |||
return null; | |||
} | |||
return repositoryFactory.createRepository( repoConfig ); | |||
} | |||
public RepositoryConfiguration getRepositoryConfiguration( String id ) | |||
{ | |||
return this.configuration.getRepositoryById( id ); | |||
} | |||
public void initialize() | |||
throws InitializationException | |||
{ | |||
Configuration config; | |||
try | |||
{ | |||
config = configurationStore.getConfigurationFromStore(); | |||
configureSelf( config ); | |||
} | |||
catch ( ConfigurationStoreException e ) | |||
{ | |||
throw new InitializationException( "Unable to load configuration.", e ); | |||
} | |||
} | |||
public void notifyOfConfigurationChange( Configuration config ) | |||
throws InvalidConfigurationException, ConfigurationChangeException | |||
{ | |||
configureSelf( config ); | |||
} | |||
private String toKey( Artifact artifact ) | |||
{ | |||
if ( artifact == null ) | |||
{ | |||
return null; | |||
} | |||
return toKey( artifact.getGroupId(), artifact.getArtifactId(), artifact.getVersion() ); | |||
} | |||
private String toKey( String groupId, String artifactId, String version ) | |||
{ | |||
return groupId + ":" + artifactId + ":" + version; | |||
} | |||
private void configureSelf( Configuration config ) | |||
{ | |||
this.configuration = config; | |||
this.artifactCache.clear(); | |||
this.projectCache.clear(); | |||
repositories = repositoryFactory.createRepositories( this.configuration ); | |||
localRepository = repositoryFactory.createLocalRepository( this.configuration ); | |||
} | |||
private ManagedArtifact createManagedArtifact( ArtifactRepository repository, Artifact artifact, File f ) | |||
{ | |||
artifact.isSnapshot(); | |||
String path = repository.pathOf( artifact ); | |||
switch ( ManagedArtifactTypes.whichType( artifact.getType() ) ) | |||
{ | |||
case ManagedArtifactTypes.EJB: | |||
ManagedEjbArtifact managedEjbArtifact = new ManagedEjbArtifact( repository.getId(), artifact, path ); | |||
managedEjbArtifact.setJavadocPath( pathToRelatedArtifact( repository, artifact, "javadoc", "jar" ) ); | |||
managedEjbArtifact.setSourcesPath( pathToRelatedArtifact( repository, artifact, "sources", "jar" ) ); | |||
managedEjbArtifact.setClientPath( pathToRelatedArtifact( repository, artifact, "client", "jar" ) ); | |||
return managedEjbArtifact; | |||
case ManagedArtifactTypes.JAVA: | |||
ManagedJavaArtifact managedJavaArtifact = new ManagedJavaArtifact( repository.getId(), artifact, path ); | |||
managedJavaArtifact.setJavadocPath( pathToRelatedArtifact( repository, artifact, "javadoc", "jar" ) ); | |||
managedJavaArtifact.setSourcesPath( pathToRelatedArtifact( repository, artifact, "sources", "jar" ) ); | |||
return managedJavaArtifact; | |||
case ManagedArtifactTypes.GENERIC: | |||
default: | |||
return new ManagedArtifact( repository.getId(), artifact, path ); | |||
} | |||
} | |||
private String pathToRelatedArtifact( ArtifactRepository repository, Artifact artifact, String classifier, | |||
String type ) | |||
{ | |||
Artifact relatedArtifact = createRelatedArtifact( artifact, classifier, type ); | |||
relatedArtifact.isSnapshot(); | |||
String path = repository.pathOf( relatedArtifact ); | |||
File relatedFile = new File( repository.getBasedir(), path ); | |||
if ( !relatedFile.exists() ) | |||
{ | |||
// Return null to set the ManagedArtifact related path to empty. | |||
return null; | |||
} | |||
return path; | |||
} | |||
} |
@@ -241,8 +241,8 @@ public class IndexerTaskExecutor | |||
for ( int j = 0; j < artifacts.size(); j += ARTIFACT_BUFFER_SIZE ) | |||
{ | |||
int end = j + ARTIFACT_BUFFER_SIZE; | |||
List currentArtifacts = | |||
artifacts.subList( j, end > artifacts.size() ? artifacts.size() : end ); | |||
List currentArtifacts = artifacts.subList( j, end > artifacts.size() ? artifacts.size() | |||
: end ); | |||
// TODO: proper queueing of this in case it was triggered externally (not harmful to do so at present, but not optimal) | |||
@@ -260,10 +260,10 @@ public class IndexerTaskExecutor | |||
MetadataFilter metadataFilter = new ReportingMetadataFilter( reporter ); | |||
MetadataDiscoverer metadataDiscoverer = | |||
(MetadataDiscoverer) metadataDiscoverers.get( layoutProperty ); | |||
List metadata = | |||
metadataDiscoverer.discoverMetadata( repository, blacklistedPatterns, metadataFilter ); | |||
MetadataDiscoverer metadataDiscoverer = (MetadataDiscoverer) metadataDiscoverers | |||
.get( layoutProperty ); | |||
List metadata = metadataDiscoverer.discoverMetadata( repository, blacklistedPatterns, | |||
metadataFilter ); | |||
if ( !metadata.isEmpty() ) | |||
{ | |||
@@ -307,14 +307,18 @@ public class IndexerTaskExecutor | |||
{ | |||
if ( projectBuilder != null ) | |||
{ | |||
getLogger().info( "projectBuilder is type " + projectBuilder.getClass().getName() ); | |||
java.lang.reflect.Field f = projectBuilder.getClass().getDeclaredField( "rawProjectCache" ); | |||
f.setAccessible( true ); | |||
Map cache = (Map) f.get( projectBuilder ); | |||
getLogger().info( "projectBuilder.raw is type " + cache.getClass().getName() ); | |||
cache.clear(); | |||
f = projectBuilder.getClass().getDeclaredField( "processedProjectCache" ); | |||
f.setAccessible( true ); | |||
cache = (Map) f.get( projectBuilder ); | |||
getLogger().info( "projectBuilder.processed is type " + cache.getClass().getName() ); | |||
cache.clear(); | |||
} | |||
} |
@@ -54,6 +54,44 @@ | |||
<name>indexer</name> | |||
</configuration> | |||
</component> | |||
<component> | |||
<role>org.codehaus.plexus.cache.Cache</role> | |||
<role-hint>artifactCache</role-hint> | |||
<implementation>org.codehaus.plexus.cache.ehcache.EhcacheCache</implementation> | |||
<description>EhcacheCache</description> | |||
<configuration> | |||
<disk-expiry-thread-interval-seconds>600</disk-expiry-thread-interval-seconds> | |||
<disk-persistent>false</disk-persistent> | |||
<disk-store-path>${appserver.base}/.cache/artifacts</disk-store-path> | |||
<eternal>false</eternal> | |||
<max-elements-in-memory>1000</max-elements-in-memory> | |||
<memory-eviction-policy>LRU</memory-eviction-policy> | |||
<name>artifact-cache</name> | |||
<overflow-to-disk>false</overflow-to-disk> | |||
<time-to-idle-seconds>600</time-to-idle-seconds> | |||
<time-to-live-seconds>300</time-to-live-seconds> | |||
</configuration> | |||
</component> | |||
<component> | |||
<role>org.codehaus.plexus.cache.Cache</role> | |||
<role-hint>projectCache</role-hint> | |||
<implementation>org.codehaus.plexus.cache.ehcache.EhcacheCache</implementation> | |||
<description>EhcacheCache</description> | |||
<configuration> | |||
<disk-expiry-thread-interval-seconds>600</disk-expiry-thread-interval-seconds> | |||
<disk-persistent>false</disk-persistent> | |||
<disk-store-path>${appserver.base}/.cache/projects</disk-store-path> | |||
<eternal>false</eternal> | |||
<max-elements-in-memory>1000</max-elements-in-memory> | |||
<memory-eviction-policy>LRU</memory-eviction-policy> | |||
<name>project-cache</name> | |||
<overflow-to-disk>false</overflow-to-disk> | |||
<time-to-idle-seconds>600</time-to-idle-seconds> | |||
<time-to-live-seconds>300</time-to-live-seconds> | |||
</configuration> | |||
</component> | |||
</components> | |||
</component-set> |
@@ -0,0 +1,34 @@ | |||
<?xml version="1.0" encoding="ISO-8859-1"?> | |||
<!-- | |||
~ Licensed to the Apache Software Foundation (ASF) under one | |||
~ or more contributor license agreements. See the NOTICE file | |||
~ distributed with this work for additional information | |||
~ regarding copyright ownership. The ASF licenses this file | |||
~ to you 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. | |||
--> | |||
<configuration> | |||
<repositories> | |||
<repository> | |||
<urlName>test</urlName> | |||
<directory>src/test/maven-2.x-repository</directory> | |||
<id>test</id> | |||
<name>Test Repository</name> | |||
</repository> | |||
</repositories> | |||
<proxiedRepositories> | |||
</proxiedRepositories> | |||
<localRepository>target/local-repository</localRepository> | |||
<indexPath>target/.index</indexPath> | |||
</configuration> |
@@ -0,0 +1,205 @@ | |||
package org.apache.maven.archiva.repositories; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.maven.archiva.artifact.ManagedArtifact; | |||
import org.apache.maven.archiva.artifact.ManagedEjbArtifact; | |||
import org.apache.maven.archiva.artifact.ManagedJavaArtifact; | |||
import org.codehaus.plexus.PlexusTestCase; | |||
/** | |||
* DefaultActiveManagedRepositoriesTest | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class DefaultActiveManagedRepositoriesTest | |||
extends PlexusTestCase | |||
{ | |||
private ActiveManagedRepositories managedRepos; | |||
protected void setUp() | |||
throws Exception | |||
{ | |||
super.setUp(); | |||
managedRepos = (DefaultActiveManagedRepositories) lookup( ActiveManagedRepositories.ROLE ); | |||
} | |||
/** | |||
* Test a simple java find artifact with extras (sources / javadoc). | |||
*/ | |||
public void testFindArtifactJavaWithExtras() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "geronimo", "daytrader-wsappclient", "1.1", "jar" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedJavaArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedJavaArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedJavaArtifact javaArtifact = (ManagedJavaArtifact) artifact; | |||
assertEquals( "test", javaArtifact.getRepositoryId() ); | |||
String pathPrefix = "geronimo/daytrader-wsappclient/1.1"; | |||
String pathArtifactVersion = "daytrader-wsappclient-1.1"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".jar", javaArtifact.getPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-javadoc.jar", javaArtifact.getJavadocPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-sources.jar", javaArtifact.getSourcesPath() ); | |||
} | |||
/** | |||
* Test a simple java find artifact with no extras. | |||
*/ | |||
public void testFindArtifactJavaSimple() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "geronimo", "daytrader-streamer", "1.1", "jar" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedJavaArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedJavaArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedJavaArtifact javaArtifact = (ManagedJavaArtifact) artifact; | |||
assertEquals( "test", javaArtifact.getRepositoryId() ); | |||
String pathPrefix = "geronimo/daytrader-streamer/1.1"; | |||
String pathArtifactVersion = "daytrader-streamer-1.1"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".jar", javaArtifact.getPath() ); | |||
assertNull( "should have no javadoc jar.", javaArtifact.getJavadocPath() ); | |||
assertNull( "should have no sources jar.", javaArtifact.getSourcesPath() ); | |||
} | |||
/** | |||
* Test a java find of a snapshot artifact that uses a timestamp format. | |||
*/ | |||
public void testFindArtifactJavaSnapshotTimestamp() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "org.apache.geronimo.daytrader", "daytrader-wsappclient", | |||
"2.0-20070201.183230-5", "jar" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedJavaArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedJavaArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedJavaArtifact javaArtifact = (ManagedJavaArtifact) artifact; | |||
assertEquals( "test", javaArtifact.getRepositoryId() ); | |||
String pathPrefix = "org/apache/geronimo/daytrader/daytrader-wsappclient/2.0-SNAPSHOT"; | |||
String pathArtifactVersion = "daytrader-wsappclient-2.0-20070201.183230-5"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".jar", javaArtifact.getPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-javadoc.jar", javaArtifact.getJavadocPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-sources.jar", javaArtifact.getSourcesPath() ); | |||
} | |||
/** | |||
* Test a java find of a snapshot artifact. | |||
*/ | |||
public void testFindArtifactJavaSnapshot() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "org.apache.geronimo.daytrader", "daytrader-wsappclient", | |||
"2.0-SNAPSHOT", "jar" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedJavaArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedJavaArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedJavaArtifact javaArtifact = (ManagedJavaArtifact) artifact; | |||
assertEquals( "test", javaArtifact.getRepositoryId() ); | |||
String pathPrefix = "org/apache/geronimo/daytrader/daytrader-wsappclient/2.0-SNAPSHOT"; | |||
String pathArtifactVersion = "daytrader-wsappclient-2.0-SNAPSHOT"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".jar", javaArtifact.getPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-javadoc.jar", javaArtifact.getJavadocPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-sources.jar", javaArtifact.getSourcesPath() ); | |||
} | |||
/** | |||
* Test a ejb find of a snapshot artifact that also has a client jar available. | |||
*/ | |||
public void testFindArtifactEjbSnapshot() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "org.apache.geronimo.daytrader", "daytrader-ejb", | |||
"2.0-SNAPSHOT", "ejb" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedEjbArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedEjbArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedEjbArtifact ejbArtifact = (ManagedEjbArtifact) artifact; | |||
assertEquals( "test", ejbArtifact.getRepositoryId() ); | |||
String pathPrefix = "org/apache/geronimo/daytrader/daytrader-ejb/2.0-SNAPSHOT"; | |||
String pathArtifactVersion = "daytrader-ejb-2.0-SNAPSHOT"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".jar", ejbArtifact.getPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-client.jar", ejbArtifact.getClientPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-javadoc.jar", ejbArtifact.getJavadocPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-sources.jar", ejbArtifact.getSourcesPath() ); | |||
} | |||
/** | |||
* Test a simple java find artifact with no extras. | |||
*/ | |||
public void testFindArtifactWar() | |||
{ | |||
ManagedArtifact artifact = managedRepos.findArtifact( "geronimo", "daytrader-web", "1.1", "war" ); | |||
assertNotNull( artifact ); | |||
if ( !( artifact instanceof ManagedJavaArtifact ) ) | |||
{ | |||
fail( "Expected artifact to be type <" + ManagedJavaArtifact.class.getName() + "> but was actually <" | |||
+ artifact.getClass().getName() + ">." ); | |||
} | |||
ManagedJavaArtifact warArtifact = (ManagedJavaArtifact) artifact; | |||
assertEquals( "test", warArtifact.getRepositoryId() ); | |||
String pathPrefix = "geronimo/daytrader-web/1.1"; | |||
String pathArtifactVersion = "daytrader-web-1.1"; | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + ".war", warArtifact.getPath() ); | |||
assertEquals( pathPrefix + "/" + pathArtifactVersion + "-javadoc.jar", warArtifact.getJavadocPath() ); | |||
assertNull( "should have no sources jar.", warArtifact.getSourcesPath() ); | |||
} | |||
} |
@@ -0,0 +1,75 @@ | |||
package org.apache.maven.archiva.scheduler.executors; | |||
/* | |||
* Licensed to the Apache Software Foundation (ASF) under one | |||
* or more contributor license agreements. See the NOTICE file | |||
* distributed with this work for additional information | |||
* regarding copyright ownership. The ASF licenses this file | |||
* to you 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. | |||
*/ | |||
import org.apache.commons.io.FileUtils; | |||
import org.apache.maven.archiva.configuration.Configuration; | |||
import org.apache.maven.archiva.configuration.ConfigurationStore; | |||
import org.apache.maven.archiva.configuration.ConfigurationStoreException; | |||
import org.apache.maven.archiva.scheduler.task.IndexerTask; | |||
import org.codehaus.plexus.PlexusTestCase; | |||
import org.codehaus.plexus.taskqueue.execution.TaskExecutionException; | |||
import org.codehaus.plexus.taskqueue.execution.TaskExecutor; | |||
import java.io.File; | |||
/** | |||
* IndexerTaskExecutorTest | |||
* | |||
* @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a> | |||
* @version $Id$ | |||
*/ | |||
public class IndexerTaskExecutorTest | |||
extends PlexusTestCase | |||
{ | |||
private TaskExecutor taskExecutor; | |||
protected void setUp() | |||
throws Exception | |||
{ | |||
super.setUp(); | |||
taskExecutor = (TaskExecutor) lookup( "org.codehaus.plexus.taskqueue.execution.TaskExecutor", "indexer" ); | |||
ConfigurationStore configurationStore = (ConfigurationStore) lookup( ConfigurationStore.ROLE ); | |||
Configuration configuration = configurationStore.getConfigurationFromStore(); | |||
File indexPath = new File( configuration.getIndexPath() ); | |||
if ( indexPath.exists() ) | |||
{ | |||
FileUtils.deleteDirectory( indexPath ); | |||
} | |||
} | |||
public void testIndexer() | |||
throws TaskExecutionException | |||
{ | |||
taskExecutor.executeTask( new TestIndexerTask() ); | |||
} | |||
class TestIndexerTask | |||
extends IndexerTask | |||
{ | |||
public String getJobName() | |||
{ | |||
return "TestIndexer"; | |||
} | |||
} | |||
} |
@@ -0,0 +1 @@ | |||
4d677e8e95fb342512e3d05ea68a501d |
@@ -0,0 +1 @@ | |||
58f1e8ae41f12747947c947437e262d9f3bd3ce7 |
@@ -0,0 +1,91 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>geronimo</groupId> | |||
<version>1.1</version> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<artifactId>daytrader-ear</artifactId> | |||
<packaging>ear</packaging> | |||
<name>DayTrader :: Enterprise Application</name> | |||
<version>1.1</version> | |||
<description>Daytrader EAR</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ear</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ear</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/ear</url> | |||
</scm> | |||
<build> | |||
<plugins> | |||
<plugin> | |||
<artifactId>maven-ear-plugin</artifactId> | |||
<configuration> | |||
<displayName>DayTrader 1.1</displayName> | |||
<description>DayTrader Stock Trading Performance Benchmark | |||
Sample</description> | |||
<version>1.4</version> | |||
<modules> | |||
<webModule> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<contextRoot>/daytrader</contextRoot> | |||
<bundleFileName>web.war</bundleFileName> | |||
</webModule> | |||
<ejbModule> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<bundleFileName>dt-ejb.jar</bundleFileName> | |||
</ejbModule> | |||
<javaModule> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<bundleFileName>streamer.jar</bundleFileName> | |||
<includeInApplicationXml>true</includeInApplicationXml> | |||
</javaModule> | |||
<javaModule> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<bundleFileName>wsappclient.jar</bundleFileName> | |||
</javaModule> | |||
</modules> | |||
</configuration> | |||
</plugin> | |||
<plugin> | |||
<artifactId>maven-one-plugin</artifactId> | |||
<version>1.0</version> | |||
<executions> | |||
<execution> | |||
<goals> | |||
<goal>install-maven-one-repository</goal> | |||
</goals> | |||
</execution> | |||
</executions> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<type>war</type> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<type>ejb</type> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<scope>compile</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<scope>compile</scope> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
506f014fdec1a0e02b4a40b6e7a9a40c |
@@ -0,0 +1 @@ | |||
7aa0572d8d06ed6c2d14b9a79f16427127f3a2dc |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ear</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170106</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
162bb9adf25e1044c3e6bc4ab7a28963 |
@@ -0,0 +1 @@ | |||
0c485c6093f11d16e8710d58b3f4fbe2184428ec |
@@ -0,0 +1 @@ | |||
ece384b9ed97eb5ab3337022a2425738 |
@@ -0,0 +1 @@ | |||
8c97bc705524dd2798c2bbdb0978bf20a09f4adb |
@@ -0,0 +1 @@ | |||
d4fe361b7e0c648d127d8143003abdbc |
@@ -0,0 +1 @@ | |||
4ebf4a3ff5ee70473284d2008df145905cd09b80 |
@@ -0,0 +1 @@ | |||
b7b6eea84bc331c0f6485bc9cda1f263 |
@@ -0,0 +1 @@ | |||
a08204dc89d2b3324143ed6e73c0c79249920a6d |
@@ -0,0 +1 @@ | |||
95041ac6ca18e5d2edfd076a1db17260 |
@@ -0,0 +1 @@ | |||
241a1816ec34ac7199bdad4245aa23f26eff0dbc |
@@ -0,0 +1,66 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>geronimo</groupId> | |||
<version>1.1</version> | |||
<relativePath>../../pom.xml</relativePath> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<packaging>ejb</packaging> | |||
<name>DayTrader :: EJBs</name> | |||
<version>1.1</version> | |||
<description>Daytrader EJBs</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ejb</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ejb</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/ejb</url> | |||
</scm> | |||
<build> | |||
<resources> | |||
<resource> | |||
<filtering>true</filtering> | |||
<directory>${basedir}/src/main/resources</directory> | |||
</resource> | |||
</resources> | |||
<plugins> | |||
<plugin> | |||
<artifactId>maven-ejb-plugin</artifactId> | |||
<configuration> | |||
<generateClient>true</generateClient> | |||
<archive> | |||
<manifestEntries> | |||
<Class-Path>wsappclient.jar</Class-Path> | |||
</manifestEntries> | |||
</archive> | |||
</configuration> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<scope>compile</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.specs</groupId> | |||
<artifactId>geronimo-j2ee_1.4_spec</artifactId> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>commons-logging</groupId> | |||
<artifactId>commons-logging</artifactId> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>junit</groupId> | |||
<artifactId>junit</artifactId> | |||
<scope>test</scope> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
f74a51504ccf227e4ef23e2e39a2b795 |
@@ -0,0 +1 @@ | |||
71ea326f41c0e11f213a31453eb295cdaafedaf3 |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170050</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
0ad0dd0c31b907837cd76d8d078fa1a7 |
@@ -0,0 +1 @@ | |||
727eab340e25ac049dfd7e1440e36adbfa0b36c3 |
@@ -0,0 +1 @@ | |||
a9307b318ad24de6968916fae2369b24 |
@@ -0,0 +1 @@ | |||
5797a7262ea7b78573e4417cb1580c4857331ad0 |
@@ -0,0 +1,51 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>geronimo</groupId> | |||
<version>1.1</version> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<name>DayTrader :: Quote Streamer</name> | |||
<version>1.1</version> | |||
<description>Streamer Application for Day Trader</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/streamer</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/streamer</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/ear</url> | |||
</scm> | |||
<build> | |||
<plugins> | |||
<plugin> | |||
<artifactId>maven-jar-plugin</artifactId> | |||
<configuration> | |||
<archive> | |||
<manifestEntries> | |||
<class-path>dt-ejb.jar</class-path> | |||
</manifestEntries> | |||
<manifest> | |||
<main-class>org.apache.geronimo.samples.daytrader.client.TradeClient</main-class> | |||
</manifest> | |||
</archive> | |||
</configuration> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<version>1.1</version> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.specs</groupId> | |||
<artifactId>geronimo-j2ee_1.4_spec</artifactId> | |||
<version>1.0</version> | |||
<scope>provided</scope> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
05fa18418ae91126094fc348968f5998 |
@@ -0,0 +1 @@ | |||
4d31788221b2c52d706ed2f699ce1cef378f93fa |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170053</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
967fd6db15ca4b281d3d7e17d2d42748 |
@@ -0,0 +1 @@ | |||
8db116301bb933dd2bd84aa095d969915a518e71 |
@@ -0,0 +1 @@ | |||
ce74ccd6ed0386fe1f5f864e9306b7ac |
@@ -0,0 +1 @@ | |||
cfae8bc6d35bd3fcbd09645ec5f21cdb65af606a |
@@ -0,0 +1,95 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>geronimo</groupId> | |||
<version>1.1</version> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<artifactId>daytrader-web</artifactId> | |||
<packaging>war</packaging> | |||
<name>DayTrader :: Web Application</name> | |||
<version>1.1</version> | |||
<description>Daytrader Web</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/web</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/web</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/web</url> | |||
</scm> | |||
<build> | |||
<plugins> | |||
<plugin> | |||
<groupId>org.codehaus.mojo</groupId> | |||
<artifactId>jspc-maven-plugin</artifactId> | |||
<executions> | |||
<execution> | |||
<id>jspc</id> | |||
<goals> | |||
<goal>compile</goal> | |||
</goals> | |||
<configuration></configuration> | |||
</execution> | |||
</executions> | |||
</plugin> | |||
<plugin> | |||
<artifactId>maven-war-plugin</artifactId> | |||
<configuration> | |||
<webXml>${basedir}/target/jspweb.xml</webXml> | |||
<filters> | |||
<filter>${basedir}/src/main/webapp/WEB-INF/classes/build.properties</filter> | |||
</filters> | |||
<archive> | |||
<manifestEntries> | |||
<Class-Path>dt-ejb.jar streamer.jar wsappclient.jar</Class-Path> | |||
</manifestEntries> | |||
</archive> | |||
<resources> | |||
<resource implementation="org.apache.maven.model.Resource"> | |||
<filtering>true</filtering> | |||
<directory>${basedir}/src/main/webapp/WEB-INF</directory> | |||
<includes> | |||
<include>web.xml</include> | |||
</includes> | |||
</resource> | |||
</resources> | |||
</configuration> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<type>ejb</type> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.specs</groupId> | |||
<artifactId>geronimo-j2ee_1.4_spec</artifactId> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>taglibs</groupId> | |||
<artifactId>standard</artifactId> | |||
<version>1.1.1</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.codehaus.mojo</groupId> | |||
<artifactId>jspc-maven-plugin</artifactId> | |||
<version>1.4.4</version> | |||
<scope>provided</scope> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
f64549509bac5f2c69892b06b7dcb051 |
@@ -0,0 +1 @@ | |||
390de11af26257916a4b769a1e99fcdb552c8b6b |
@@ -0,0 +1 @@ | |||
a111f4992ee5d79118c90753fe90f454 |
@@ -0,0 +1 @@ | |||
4719d0a316edce8be88aa49aecdda9279a57f6bf |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170104</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
66fccfaec7b4497965881d16ebc05440 |
@@ -0,0 +1 @@ | |||
8acf1d833362bb10815081a409e90cf1574da49b |
@@ -0,0 +1 @@ | |||
dfde38fb74217c2aa45cd06dbccf1eb4 |
@@ -0,0 +1 @@ | |||
cc4b661113efbc5e49504e69e5893b1bfcf30c22 |
@@ -0,0 +1 @@ | |||
af58ccd15e4fdd7581037fd3efff9d39 |
@@ -0,0 +1 @@ | |||
fbf8eb5bab1378d1513dc31c93bed5cb4024d6a6 |
@@ -0,0 +1 @@ | |||
ec9f4f9b63e2005e91769c7144c97230 |
@@ -0,0 +1 @@ | |||
b67e0befef623ec302d99cc0ccc8a6f51046dc2c |
@@ -0,0 +1,45 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>geronimo</groupId> | |||
<version>1.1</version> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<name>DayTrader :: WS Application Client</name> | |||
<version>1.1</version> | |||
<description>Client demonstrating Web Services</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/wsappclient</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/wsappclient</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/wsappclient</url> | |||
</scm> | |||
<build> | |||
<plugins> | |||
<plugin> | |||
<artifactId>maven-jar-plugin</artifactId> | |||
<configuration> | |||
<archive> | |||
<manifestEntries> | |||
<class-path>dt-ejb.jar</class-path> | |||
</manifestEntries> | |||
<manifest> | |||
<main-class>org.apache.geronimo.samples.daytrader.client.ws.ClientApp</main-class> | |||
</manifest> | |||
</archive> | |||
</configuration> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>org.apache.geronimo.specs</groupId> | |||
<artifactId>geronimo-j2ee_1.4_spec</artifactId> | |||
<version>1.0</version> | |||
<scope>provided</scope> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
8a7724b36f3985aeab383cd606f0ff4e |
@@ -0,0 +1 @@ | |||
dede1bb862486b428417019c4d964aba36792b07 |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170045</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
971ba8f9fdb30858c671346073cb9b33 |
@@ -0,0 +1 @@ | |||
e5b14072df36ae9b0ad8ec79512bc632164a4148 |
@@ -0,0 +1,205 @@ | |||
<project> | |||
<modelVersion>4.0.0</modelVersion> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader</artifactId> | |||
<name>DayTrader :: Performance Benchmark Sample</name> | |||
<packaging>pom</packaging> | |||
<version>1.1</version> | |||
<description>J2EE 1.4 Performance Benchmark Sample Application</description> | |||
<issueManagement> | |||
<system>jira</system> | |||
<url>http://issues.apache.org/jira/browse/GERONIMO</url> | |||
</issueManagement> | |||
<ciManagement> | |||
<system>continuum</system> | |||
<url>http://ci.gbuild.org/continuum</url> | |||
<notifiers> | |||
<notifier> | |||
<configuration> | |||
<address>scm@geronimo.apache.org</address> | |||
</configuration> | |||
</notifier> | |||
</notifiers> | |||
</ciManagement> | |||
<inceptionYear>2005</inceptionYear> | |||
<properties> | |||
<!-- | |||
| | |||
| daytrader module versions | |||
| | |||
--> | |||
<daytraderVersion>1.1</daytraderVersion> | |||
</properties> | |||
<developers> | |||
<developer> | |||
<name>Jeff Genender</name> | |||
<id>jgenender</id> | |||
<email>jgenender@apache.org</email> | |||
<organization>Apache Software Foundation</organization> | |||
<roles> | |||
<role>Development</role> | |||
</roles> | |||
<timezone>+7</timezone> | |||
</developer> | |||
<developer> | |||
<name>Matt Hogstrom</name> | |||
<id>hogstrom</id> | |||
<email>hogstrom@apache.org</email> | |||
<organization>Apache Software Foundation</organization> | |||
<roles> | |||
<role>Performance Analysis</role> | |||
</roles> | |||
<timezone>+5</timezone> | |||
</developer> | |||
<developer> | |||
<name>Vincent Massol</name> | |||
<id>vmassol</id> | |||
<email>vmassol@apache.org</email> | |||
<organization>Apache Software Foundation</organization> | |||
<roles> | |||
<role>Build Engineer</role> | |||
</roles> | |||
<timezone>+1</timezone> | |||
</developer> | |||
</developers> | |||
<contributors> | |||
<contributor> | |||
<name>Christopher Blythe</name> | |||
<roles> | |||
<role>Added code to improve stability and new features</role> | |||
</roles> | |||
</contributor> | |||
<contributor> | |||
<name>Stan (John) Cox</name> | |||
<roles> | |||
<role>Original Developer</role> | |||
</roles> | |||
<timezone>+5</timezone> | |||
</contributor> | |||
<contributor> | |||
<name>Andrew Spyker</name> | |||
<roles> | |||
<role>Added the WSAppClient</role> | |||
</roles> | |||
<timezone>+5</timezone> | |||
</contributor> | |||
</contributors> | |||
<dependencies/> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/gbuild/trunk/</url> | |||
</scm> | |||
<organization> | |||
<name>Apache Software Foundation</name> | |||
<url>http://www.apache.org/</url> | |||
</organization> | |||
<modules> | |||
<module>modules/ejb</module> | |||
<module>modules/web</module> | |||
<module>modules/streamer</module> | |||
<module>modules/wsappclient</module> | |||
<module>modules/ear</module> | |||
</modules> | |||
<dependencyManagement> | |||
<dependencies> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<version>1.1</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<version>1.1</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.specs</groupId> | |||
<artifactId>geronimo-j2ee_1.4_spec</artifactId> | |||
<version>1.0</version> | |||
<scope>provided</scope> | |||
</dependency> | |||
<dependency> | |||
<groupId>commons-logging</groupId> | |||
<artifactId>commons-logging</artifactId> | |||
<version>1.0.3</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>junit</groupId> | |||
<artifactId>junit</artifactId> | |||
<version>3.8.1</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<version>1.1</version> | |||
<type>ejb</type> | |||
</dependency> | |||
<!--dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<version>1.1</version> | |||
<type>ejb-client</type> | |||
</dependency--> | |||
<dependency> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<version>1.1</version> | |||
<type>war</type> | |||
</dependency> | |||
</dependencies> | |||
</dependencyManagement> | |||
<distributionManagement> | |||
<repository> | |||
<id>apache.releases</id> | |||
<name>Apache Release Distribution Repository</name> | |||
<url>scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</url> | |||
</repository> | |||
<snapshotRepository> | |||
<id>apache.snapshots</id> | |||
<name>Apache Development Snapshot Repository</name> | |||
<url>scp://people.apache.org/www/people.apache.org/repo/m2-snapshot-repository</url> | |||
</snapshotRepository> | |||
<site> | |||
<id>geronimo-website</id> | |||
<url>scp://people.apache.org/www/geronimo.apache.org/maven/genesis/config/project-config/daytrader</url> | |||
</site> | |||
</distributionManagement> | |||
<profiles> | |||
<profile> | |||
<id>db2</id> | |||
<activation> | |||
<activeByDefault>true</activeByDefault> | |||
<property> | |||
<name>database</name> | |||
<value>db2</value> | |||
</property> | |||
</activation> | |||
<properties> | |||
<jboss.mapping>DB2</jboss.mapping> | |||
</properties> | |||
</profile> | |||
<profile> | |||
<id>mysql</id> | |||
<activation> | |||
<property> | |||
<name>database</name> | |||
<value>mysql</value> | |||
</property> | |||
</activation> | |||
<properties> | |||
<jboss.mapping>mySQL</jboss.mapping> | |||
</properties> | |||
</profile> | |||
<profile> | |||
<id>test</id> | |||
<modules> | |||
<module>functional-tests</module> | |||
</modules> | |||
</profile> | |||
</profiles> | |||
</project> |
@@ -0,0 +1 @@ | |||
24bb4da72c86f29c900802d1c9fc9581 |
@@ -0,0 +1 @@ | |||
67198346b344f6260e61dc42511d854e885f6b23 |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>geronimo</groupId> | |||
<artifactId>daytrader</artifactId> | |||
<version>1.1</version> | |||
<versioning> | |||
<versions> | |||
<version>1.1</version> | |||
</versions> | |||
<lastUpdated>20070201170041</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
84aef5b30a8d48c3902bacf9fbcb9205 |
@@ -0,0 +1 @@ | |||
19606e25290454d398e3187466d7d78d2f2800c1 |
@@ -0,0 +1 @@ | |||
9772846681b2691f343a8f4790c7e881 |
@@ -0,0 +1 @@ | |||
744189233a2fc36f9180b1c814e60e1e974ebdc7 |
@@ -0,0 +1,84 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><project> | |||
<parent> | |||
<artifactId>daytrader</artifactId> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<version>2.0-SNAPSHOT</version> | |||
<relativePath>../../pom.xml</relativePath> | |||
</parent> | |||
<modelVersion>4.0.0</modelVersion> | |||
<artifactId>daytrader-ear</artifactId> | |||
<packaging>ear</packaging> | |||
<name>DayTrader :: Enterprise Application</name> | |||
<version>2.0-SNAPSHOT</version> | |||
<description>Daytrader EAR</description> | |||
<scm> | |||
<connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ear</connection> | |||
<developerConnection>scm:svn:http://svn.apache.org/repos/asf/geronimo/daytrader/trunk/modules/ear</developerConnection> | |||
<url>http://svn.apache.org/viewcvs.cgi/geronimo/daytrader/trunk/modules/ear</url> | |||
</scm> | |||
<build> | |||
<plugins> | |||
<plugin> | |||
<artifactId>maven-ear-plugin</artifactId> | |||
<version>2.2</version> | |||
<configuration> | |||
<displayName>DayTrader 2.0</displayName> | |||
<description>DayTrader Stock Trading Performance Benchmark Sample</description> | |||
<version>1.4</version> | |||
<modules> | |||
<webModule> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<contextRoot>/daytrader</contextRoot> | |||
<bundleFileName>web.war</bundleFileName> | |||
</webModule> | |||
<ejbModule> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<bundleFileName>dt-ejb.jar</bundleFileName> | |||
</ejbModule> | |||
<javaModule> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<bundleFileName>streamer.jar</bundleFileName> | |||
<includeInApplicationXml>true</includeInApplicationXml> | |||
</javaModule> | |||
<javaModule> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<bundleFileName>wsappclient.jar</bundleFileName> | |||
<includeInApplicationXml>true</includeInApplicationXml> | |||
</javaModule> | |||
</modules> | |||
</configuration> | |||
</plugin> | |||
</plugins> | |||
</build> | |||
<dependencies> | |||
<dependency> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-web</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
<type>war</type> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-ejb</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
<type>ejb</type> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-streamer</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
</dependency> | |||
<dependency> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-wsappclient</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
</dependency> | |||
</dependencies> | |||
<distributionManagement> | |||
<status>deployed</status> | |||
</distributionManagement> | |||
</project> |
@@ -0,0 +1 @@ | |||
8a4922d2c9a041baa484f927ca34631c |
@@ -0,0 +1 @@ | |||
1c9b3fd6b2b060d1a9d42e562f981abd5ad7422a |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-ear</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
<versioning> | |||
<snapshot> | |||
<buildNumber>1</buildNumber> | |||
</snapshot> | |||
<lastUpdated>20070201164634</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
5d9d60fca5422465a5532859c94ecc8c |
@@ -0,0 +1 @@ | |||
cc53fcda992f0515fa761bc8947053e9c2931f01 |
@@ -0,0 +1,11 @@ | |||
<?xml version="1.0" encoding="UTF-8"?><metadata> | |||
<groupId>org.apache.geronimo.daytrader</groupId> | |||
<artifactId>daytrader-ear</artifactId> | |||
<version>2.0-SNAPSHOT</version> | |||
<versioning> | |||
<versions> | |||
<version>2.0-SNAPSHOT</version> | |||
</versions> | |||
<lastUpdated>20070201164634</lastUpdated> | |||
</versioning> | |||
</metadata> |
@@ -0,0 +1 @@ | |||
400a4c18b70498f60437ff8ad66de5a3 |
@@ -0,0 +1 @@ | |||
4e4f57ef76ee335161112382342d3407e9bca2cc |
@@ -0,0 +1 @@ | |||
408c7c6961e83e707f65fac084de1f94 |
@@ -0,0 +1 @@ | |||
a9c4f781137bab2f4d00c9124e80925c421ead8c |
@@ -0,0 +1 @@ | |||
234db44ad6eb80cf4484528e496a4b25 |
@@ -0,0 +1 @@ | |||
c7a91a4dd1b5a414779f2f04f2f054849dee4f57 |