[jboss-cvs] JBossAS SVN: r97690 - in projects/profileservice/trunk: core/src/main/java/org/jboss/profileservice/hotdeploy and 18 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Dec 10 05:30:48 EST 2009


Author: emuckenhuber
Date: 2009-12-10 05:30:47 -0500 (Thu, 10 Dec 2009)
New Revision: 97690

Removed:
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactId.java
   projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomDeploymentMetaData.java
   projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomProfileMetaData.java
Modified:
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/bootstrap/AbstractProfileServiceBootstrap.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/hotdeploy/AbstractHDScannerFactory.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/BasicProfileFactory.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileFactory.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/BasicProfileDeploymentMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/VirtualProfileDeploymentMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ClassPathProfileMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ScanPeriod.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/plugin/ClassPathAdapterProfile.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactRepository.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/BasicRepositoryConfiguration.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactId.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactRepositoryFactory.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/LocalMavenArtifactRepository.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifact.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactId.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactRepositoryMetaData.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualDeploymentRepository.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualProfileFactory.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/VirtualDeploymentProfile.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/AbstractVirtualDeploymentAssembly.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/BasicVirtualAssemblyContext.java
   projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/deployment/AbstractVirtualDeployment.java
   projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/repository/test/ArtifactRepositoryUnitTestCase.java
   projects/profileservice/trunk/core/src/test/resources/system/bootstrap.xml
   projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/Profile.java
   projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/metadata/ProfileDeploymentMetaData.java
   projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/repository/ArtifactRepository.java
   projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/virtual/VirtualDeployment.java
Log:
update deployment meta data, some cleanup

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/bootstrap/AbstractProfileServiceBootstrap.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/bootstrap/AbstractProfileServiceBootstrap.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/bootstrap/AbstractProfileServiceBootstrap.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -49,8 +49,8 @@
 {
    
    /** The local profile domain bean name. */
-   public static final String LOCALDOMAIN_BEANNAME = "org.jboss:service=LocalProfileServiceDomain";
-   public static final String PROFILESERVICE_BEANNAME = "org.jboss:service=ProfileService";
+   public static final String LOCALDOMAIN_BEANNAME = "jboss.profileservice:service=LocalProfileServiceDomain";
+   public static final String PROFILESERVICE_BEANNAME = "jboss.profileservice:service=ProfileService";
 
    protected abstract Kernel getKernel();
    protected abstract KernelController getController();
@@ -69,16 +69,12 @@
          throw new IllegalStateException("failed to create local domain");
       }
       //
-      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(PROFILESERVICE_BEANNAME, AbstractProfileService.class.getName());
-      builder.addConstructorParameter(Kernel.class.getName(), getKernel());
-      builder.addPropertyMetaData("domain", builder.createInject(localDomain.getName()));
-      
-      // TODO
-      ControllerContext ps = getController().install(builder.getBeanMetaData());
 
+      BeanMetaData bmd = createProfileService();
+      ControllerContext ps = getController().install(bmd);
+
       return (ProfileService) ps.getTarget();
    }
-   
 
    protected BeanMetaData createLocalDomain(AbstractDomainMetaData domainMetaData) throws Throwable
    {
@@ -118,7 +114,13 @@
       // The management domain
       ManagementDomain mgtDomain = new ManagementDomain(domainName);
       
-      // Create the local domain
+      BeanMetaData bmd = createLocalProfileServiceDomain(mgtDomain, serverName);
+      getController().install(bmd);
+      return bmd;
+   }
+   
+   protected BeanMetaData createLocalProfileServiceDomain(ManagementDomain mgtDomain, String serverName)
+   {
       BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(
             LOCALDOMAIN_BEANNAME, LocalProfileServiceDomain.class.getName());
       builder.addConstructorParameter(ManagementDomain.class.getName(), mgtDomain);
@@ -126,12 +128,16 @@
       // Inject the DeployersRegistry and profileFactory
       builder.addPropertyMetaData("profileDeployers", getDeployerRegistry());
       builder.addPropertyMetaData("profileFactory", getProfileFactory());
-      
-      // Install
-      BeanMetaData bmd = builder.getBeanMetaData();
-      getController().install(bmd);
-      return bmd;
+      return builder.getBeanMetaData();
    }
    
+   protected BeanMetaData createProfileService()
+   {
+      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(PROFILESERVICE_BEANNAME, AbstractProfileService.class.getName());
+      builder.addConstructorParameter(Kernel.class.getName(), getKernel());
+      builder.addPropertyMetaData("domain", builder.createInject(LOCALDOMAIN_BEANNAME));
+      return builder.getBeanMetaData();
+   }
+   
 }
 

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/hotdeploy/AbstractHDScannerFactory.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/hotdeploy/AbstractHDScannerFactory.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/hotdeploy/AbstractHDScannerFactory.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -26,6 +26,7 @@
 import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.TimeUnit;
 
+import org.jboss.logging.Logger;
 import org.jboss.profileservice.spi.MutableProfile;
 import org.jboss.profileservice.spi.ProfileKey;
 
@@ -39,6 +40,9 @@
 public abstract class AbstractHDScannerFactory implements HDScannerFactory
 {
    
+   /** The logger. */
+   private static final Logger log = Logger.getLogger(HDScannerFactory.class);
+   
    /** The active scans. */
    private Map<ProfileKey, ScannerWrapper> activeScans = new ConcurrentHashMap<ProfileKey, ScannerWrapper>(); 
 

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/BasicProfileFactory.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/BasicProfileFactory.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/BasicProfileFactory.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -21,7 +21,7 @@
 */
 package org.jboss.profileservice.profile;
 
-import java.util.List;
+import java.util.Collection;
 
 import org.jboss.profileservice.profile.metadata.BasicProfileMetaData;
 import org.jboss.profileservice.profile.metadata.FileRepositorySourceMetaData;
@@ -29,7 +29,7 @@
 import org.jboss.profileservice.repository.virtual.VirtualDeploymentProfile;
 import org.jboss.profileservice.spi.ProfileFactory;
 import org.jboss.profileservice.spi.ProfileKey;
-import org.jboss.profileservice.spi.virtual.VirtualDeployment;
+import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 
 /**
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
@@ -67,7 +67,7 @@
          throw new IllegalArgumentException("null profile meta data");
       }
       FileRepositorySourceMetaData source = metaData.getSource();
-      List<VirtualDeployment> virtual = getVirtualDeployments(metaData); 
+      Collection<ProfileDeploymentMetaData> virtual = metaData.getDeployments(); 
       return new VirtualDeploymentProfile(key, virtual, createRepository(source)); 
    }
 

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileFactory.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileFactory.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileFactory.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -21,14 +21,14 @@
  */ 
 package org.jboss.profileservice.profile.bootstrap;
 
-import java.util.List;
+import java.util.Collection;
 
 import org.jboss.profileservice.profile.metadata.FileRepositorySourceMetaData;
 import org.jboss.profileservice.repository.virtual.AbstractVirtualProfileFactory;
 import org.jboss.profileservice.repository.virtual.VirtualDeploymentProfile;
 import org.jboss.profileservice.spi.ProfileFactory;
 import org.jboss.profileservice.spi.ProfileKey;
-import org.jboss.profileservice.spi.virtual.VirtualDeployment;
+import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 
 /**
  * The bootstrap profile factory.
@@ -61,7 +61,7 @@
          throw new IllegalArgumentException("null profile meta data");
       }
       FileRepositorySourceMetaData source = metaData.getSource();
-      List<VirtualDeployment> virtual = getVirtualDeployments(metaData); 
+      Collection<ProfileDeploymentMetaData> virtual = metaData.getDeployments(); 
       return new VirtualDeploymentProfile(key, virtual, createRepository(source)); 
    }
 

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/bootstrap/BootstrapProfileMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -38,6 +38,7 @@
 import org.jboss.profileservice.profile.metadata.CommonProfileNameSpaces;
 import org.jboss.profileservice.profile.metadata.FileRepositorySourceMetaData;
 import org.jboss.profileservice.profile.metadata.NamespaceFeatureCapability;
+import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitor;
 import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitorNode;
 import org.jboss.profileservice.spi.metadata.helpers.AbstractProfileMetaData;
@@ -60,14 +61,14 @@
    private FileRepositorySourceMetaData source;
    
    /** The deployments. */
-   private List<BasicProfileDeploymentMetaData> deployments;
+   private List<ProfileDeploymentMetaData> deployments;
 
    public BootstrapProfileMetaData()
    {
       super();
    }
    
-   public List<BasicProfileDeploymentMetaData> getDeployments()
+   public List<ProfileDeploymentMetaData> getDeployments()
    {
       return this.deployments;
    }
@@ -114,7 +115,7 @@
    }
    
    @XmlElement(name = "deployment", type = BasicProfileDeploymentMetaData.class)
-   public void setDeployments(List<BasicProfileDeploymentMetaData> deployments)
+   public void setDeployments(List<ProfileDeploymentMetaData> deployments)
    {
       this.deployments = deployments;
    }

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/BasicProfileDeploymentMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/BasicProfileDeploymentMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/BasicProfileDeploymentMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -41,7 +41,7 @@
  * @version $Revision$
  */
 @XmlType(name = "basicDeploymentType", propOrder = {"name"})
-public class BasicProfileDeploymentMetaData implements ProfileDeploymentMetaData, VirtualDeployment
+public class BasicProfileDeploymentMetaData implements ProfileDeploymentMetaData
 {
 
    /** The name. */
@@ -72,7 +72,7 @@
    }
 
    @Override
-   public ArtifactId getPath()
+   public ArtifactId getArtifact()
    {
       return new FileArtifactId(getName());
    }

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/VirtualProfileDeploymentMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/VirtualProfileDeploymentMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/VirtualProfileDeploymentMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -35,7 +35,7 @@
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
- at XmlType(propOrder = {"name", "path", "artifacts", "requires", "children" })
+ at XmlType(propOrder = {"name", "artifact", "artifacts", "requires", "children" })
 public class VirtualProfileDeploymentMetaData extends AbstractVirtualDeployment
    implements ProfileDeploymentMetaData
 {

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ClassPathProfileMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ClassPathProfileMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ClassPathProfileMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -21,6 +21,7 @@
 */
 package org.jboss.profileservice.profile.metadata.plugin;
 
+import java.util.Collections;
 import java.util.List;
 
 import javax.xml.bind.annotation.XmlAttribute;
@@ -33,10 +34,14 @@
 import org.jboss.profileservice.domain.spi.DomainFeatureNode;
 import org.jboss.profileservice.domain.spi.DomainFeatureVisitor;
 import org.jboss.profileservice.profile.metadata.CommonProfileNameSpaces;
+import org.jboss.profileservice.repository.artifact.file.FileArtifactId;
 import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitor;
 import org.jboss.profileservice.spi.metadata.ProfileSourceMetaData;
 import org.jboss.profileservice.spi.metadata.helpers.AbstractProfileMetaData;
+import org.jboss.profileservice.spi.repository.ArtifactId;
+import org.jboss.profileservice.spi.virtual.VirtualArtifactMetaData;
+import org.jboss.profileservice.spi.virtual.VirtualDeployment;
 import org.jboss.xb.annotations.JBossXmlSchema;
 
 /**
@@ -121,6 +126,35 @@
       }
       
       @Override
+      @XmlTransient
+      public String getName()
+      {
+         // TODO
+         return getPath();
+      }
+      
+      @Override
+      @XmlTransient
+      public ArtifactId getArtifact()
+      {
+         return new FileArtifactId(getPath());
+      }
+      
+      @Override
+      @XmlTransient
+      public List<VirtualArtifactMetaData> getArtifacts()
+      {
+         return Collections.emptyList();
+      }
+      
+      @Override
+      @XmlTransient
+      public List<VirtualDeployment> getChildren()
+      {
+         return Collections.emptyList();
+      }
+      
+      @Override
       public void visit(ProfileMetaDataVisitor visitor)
       {
          // nothing

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ScanPeriod.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ScanPeriod.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/metadata/plugin/ScanPeriod.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -102,5 +102,19 @@
       }
    }
    
+   @Override
+   public String toString()
+   {
+      StringBuilder builder = new StringBuilder(getClass().getSimpleName());
+      builder.append("{interval=").append(getInterval());
+      builder.append(", time-unit=").append(getTimeUnit());
+      if(isDisabled())
+      {
+         builder.append(", disabled=").append(isDisabled());
+      }
+      builder.append("}");
+      return builder.toString();
+   }
+   
 }
 

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/plugin/ClassPathAdapterProfile.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/plugin/ClassPathAdapterProfile.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/profile/plugin/ClassPathAdapterProfile.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -110,7 +110,7 @@
    }
 
    @Override
-   public Collection<? extends ProfileDeployment> getDeployments()
+   public Collection<ProfileDeployment> getDeployments()
    {
       return Collections.singleton(classPathDeployment);
    }

Deleted: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactId.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactId.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactId.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -1,34 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2009, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.profileservice.repository.artifact;
-
-import org.jboss.profileservice.spi.repository.ArtifactId;
-
-/**
- * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
- * @version $Revision$
- */
-public abstract class AbstractArtifactId implements ArtifactId
-{
-
-}
-

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactRepository.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactRepository.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/AbstractArtifactRepository.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -33,13 +33,15 @@
 import org.jboss.virtual.VirtualFile;
 
 /**
+ * The abstract artifact repository.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
 public abstract class AbstractArtifactRepository<T extends ArtifactId> implements ArtifactRepository<T>
 {
 
-   /** The id. */
+   /** The identifier. */
    private ArtifactRepositoryId identifier;
    
    /** The repository configuration. */
@@ -59,8 +61,8 @@
          throw new IllegalArgumentException("null repository root.");
       }
       this.repositoryRoot = VFS.getRoot(root);
+      this.identifier = identifier;
       this.configuration = new BasicRepositoryConfiguration(root, false);;
-      this.identifier = identifier;
    }
 
    public AbstractArtifactRepository(ArtifactRepositoryId identifier, VirtualFile root) throws IOException, URISyntaxException
@@ -74,8 +76,8 @@
          throw new IllegalArgumentException("null repository root.");
       }
       this.repositoryRoot = root;
+      this.identifier = identifier;
       this.configuration = new BasicRepositoryConfiguration(root.toURI(), false);
-      this.identifier = identifier;
    }
    
    @Override

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/BasicRepositoryConfiguration.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/BasicRepositoryConfiguration.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/BasicRepositoryConfiguration.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -26,6 +26,8 @@
 import org.jboss.profileservice.spi.repository.ArtifactRepositoryConfiguration;
 
 /**
+ * The basic repository configuration.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactId.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactId.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactId.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -23,7 +23,6 @@
 
 import javax.xml.bind.annotation.XmlAttribute;
 
-import org.jboss.profileservice.repository.artifact.AbstractArtifactId;
 import org.jboss.profileservice.spi.repository.ArtifactId;
 
 /**
@@ -32,7 +31,7 @@
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
-public class FileArtifactId extends AbstractArtifactId
+public class FileArtifactId implements ArtifactId
 {
    
    /** The serialVersionUID */
@@ -55,8 +54,9 @@
    public FileArtifactId(String path)
    {
       if(path == null)
+      {
          throw new IllegalArgumentException("null path name");
-      
+      }
       this.path = path;
    }   
    

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactRepositoryFactory.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactRepositoryFactory.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/file/FileArtifactRepositoryFactory.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -42,7 +42,7 @@
 {
 
    /** The file repository root. */
-   private VirtualFile root;
+   private final VirtualFile root;
    
    public FileArtifactRepositoryFactory(URI rootURI) throws IOException
    {

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/LocalMavenArtifactRepository.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/LocalMavenArtifactRepository.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/LocalMavenArtifactRepository.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -37,6 +37,11 @@
 import org.jboss.virtual.VirtualFile;
 
 /**
+ * A local mvn like artifact repository,  based on a repository
+ * meta data defining the actual contents in this repository. 
+ * Synchronization and content retrieval from a remote repository 
+ * has to happen outside of profileservice itself.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
@@ -44,18 +49,28 @@
       implements ArtifactRepositoryFactory<MavenArtifactId>
 {
    
-   /** The artifact repository id. */
-   public static final ArtifactRepositoryId ID = new AbstractRepositoryId("###DEFAULT###", MavenArtifactId.TYPE); 
-
    /** The meta data. */
    private final MavenArtifactRepositoryMetaData metaData;
    
    /** The artifacts. */
    private final List<MavenArtifact> artifacts = new ArrayList<MavenArtifact>();
+
+   /** The artifact repository id. */
+   public static final ArtifactRepositoryId REPOSITORY_ID;
    
+   static
+   {
+      // There should only be one local mvn artifact repo
+      REPOSITORY_ID = new AbstractRepositoryId("###DEFAULT###", MavenArtifactId.TYPE);      
+   }
+   
    public LocalMavenArtifactRepository(MavenArtifactRepositoryMetaData metaData, URI root) throws IOException
    {
-      super(ID, root);
+      super(REPOSITORY_ID, root);
+      if(metaData == null)
+      {
+         throw new IllegalArgumentException("null artifact repository meta data");
+      }
       this.metaData = metaData;
       initialize();
    }
@@ -128,9 +143,12 @@
    
    protected void initialize()
    {
-      for(MavenArtifactMetaData artifactId : metaData.getArtifacts())
+      if(metaData.getArtifacts() != null && metaData.getArtifacts().isEmpty() == false)
       {
-         artifacts.add(new MavenArtifact(artifactId, this));
+         for(MavenArtifactMetaData artifactId : metaData.getArtifacts())
+         {
+            artifacts.add(new MavenArtifact(artifactId, this));
+         }
       }
    }
    

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifact.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifact.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifact.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -25,6 +25,8 @@
 import org.jboss.profileservice.spi.repository.ArtifactRepository;
 
 /**
+ * A mvn like artifact.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactId.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactId.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactId.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -24,6 +24,8 @@
 import org.jboss.profileservice.spi.repository.ArtifactId;
 
 /**
+ * A mvn like artifact id.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -27,6 +27,8 @@
 import org.jboss.profileservice.version.helpers.VersionSupport;
 
 /**
+ * The maven artifact meta data.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactRepositoryMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactRepositoryMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/artifact/maven/MavenArtifactRepositoryMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -28,6 +28,9 @@
 import javax.xml.bind.annotation.XmlType;
 
 /**
+ * The repository meta data describing what artifacts are included
+ * in a local repository.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualDeploymentRepository.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualDeploymentRepository.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualDeploymentRepository.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -33,6 +33,8 @@
 import org.jboss.virtual.VirtualFile;
 
 /**
+ * The abstract virtual deployment repository.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
@@ -41,7 +43,6 @@
 
    /**
     * Create a ProfileDeployment.
-    * TODO - ProfileDeployment should maybe be a virtual deployment?
     * 
     * @param deployment the virtual deployment descriptor
     * @return the profile deployment

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualProfileFactory.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualProfileFactory.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/AbstractVirtualProfileFactory.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -22,8 +22,6 @@
 package org.jboss.profileservice.repository.virtual;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
 
 import org.jboss.profileservice.profile.metadata.FileRepositorySourceMetaData;
 import org.jboss.profileservice.repository.artifact.AbstractRepositoryId;
@@ -32,8 +30,6 @@
 import org.jboss.profileservice.repository.artifact.maven.LocalMavenArtifactRepository;
 import org.jboss.profileservice.spi.ProfileDeployment;
 import org.jboss.profileservice.spi.VirtualDeploymentRepository;
-import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
-import org.jboss.profileservice.spi.metadata.ProfileMetaData;
 import org.jboss.profileservice.spi.repository.ArtifactId;
 import org.jboss.profileservice.spi.repository.ArtifactRepository;
 import org.jboss.profileservice.spi.repository.ArtifactRepositoryId;
@@ -53,11 +49,16 @@
    private ArtifactRepositoryManager repositoryManager;
    
    /** The maven artifact repository id. */
-   protected static final ArtifactRepositoryId MVN_ID = LocalMavenArtifactRepository.ID;
+   protected static final ArtifactRepositoryId MVN_ID = LocalMavenArtifactRepository.REPOSITORY_ID;
    
    /** A unconfigured virtual repository instance. */
-   protected final static VirtualDeploymentRepository UNCONFIGURED = new UnconfiguredVirtualDeploymentRepository();
+   protected final static VirtualDeploymentRepository UNCONFIGURED;
    
+   static
+   {
+      UNCONFIGURED = new UnconfiguredVirtualDeploymentRepository();
+   }
+   
    public ArtifactRepositoryManager getRepositoryManager()
    {
       return repositoryManager;
@@ -78,7 +79,7 @@
 
    protected VirtualDeploymentRepository createRepository(FileRepositorySourceMetaData source) throws Exception
    {
-      if(source != null && source.getGroup()!= null)
+      if(source != null && source.getGroup() != null)
       {
          // Create the file repository, based on the group
          ArtifactRepository<ArtifactId> fileRepository = repositoryManager.
@@ -94,29 +95,6 @@
    {
       return new AbstractRepositoryId(group, FileArtifactId.TYPE);
    }
-   
-   // FIXME
-   protected static List<VirtualDeployment> getVirtualDeployments(ProfileMetaData metaData)
-   {
-      List<? extends ProfileDeploymentMetaData> deployments = metaData.getDeployments();
-      List<VirtualDeployment> virtual = new ArrayList<VirtualDeployment>();
-      // TODO ProfileDeploymentMetaData extends VirtualDeployment ?
-      if(deployments != null && deployments.isEmpty() == false)
-      {
-         for(ProfileDeploymentMetaData deployment : deployments)
-         {
-            if(deployment instanceof VirtualDeployment)
-            {
-               virtual.add((VirtualDeployment) deployment);
-            }
-            else
-            {
-               throw new IllegalStateException("deployment not a virtual deployment " + deployment);
-            }
-         }
-      }
-      return virtual;
-   }
 
    static class UnconfiguredVirtualDeploymentRepository implements VirtualDeploymentRepository
    {

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/VirtualDeploymentProfile.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/VirtualDeploymentProfile.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/repository/virtual/VirtualDeploymentProfile.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -22,8 +22,8 @@
 package org.jboss.profileservice.repository.virtual;
 
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
@@ -33,7 +33,7 @@
 import org.jboss.profileservice.spi.ProfileDeployment;
 import org.jboss.profileservice.spi.ProfileKey;
 import org.jboss.profileservice.spi.VirtualDeploymentRepository;
-import org.jboss.profileservice.spi.virtual.VirtualDeployment;
+import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 
 /**
  * A immutable profile implementation getting it's deployments from
@@ -52,19 +52,19 @@
    private final ProfileKey key;
    
    /** The virtual deployments. */
-   private final List<VirtualDeployment> deploymentMetaData;
+   private final Collection<ProfileDeploymentMetaData> deploymentMetaData;
    
    /** The virtual deployment repository. */
    private final VirtualDeploymentRepository repository;
    
    /** The deployments. */
-   private Map<String, ProfileDeployment> deployments = new HashMap<String, ProfileDeployment>();
+   private Map<String, ProfileDeployment> deployments = Collections.emptyMap();
    
    /** The last modified. */
    private final long lastModified;
    
    public VirtualDeploymentProfile(ProfileKey key,
-         List<VirtualDeployment> virtual, VirtualDeploymentRepository repository)
+         Collection<ProfileDeploymentMetaData> virtual, VirtualDeploymentRepository repository)
    {
       if(key == null)
       {
@@ -91,7 +91,8 @@
    {
       if(deploymentMetaData != null && deploymentMetaData.isEmpty() == false)
       {
-         for(VirtualDeployment virtual: deploymentMetaData)
+         this.deployments = new HashMap<String, ProfileDeployment>();
+         for(ProfileDeploymentMetaData virtual: deploymentMetaData)
          {
             try
             {
@@ -129,7 +130,7 @@
     * {@inheritDoc}
     */
    @Override
-   public Collection<? extends ProfileDeployment> getDeployments()
+   public Collection<ProfileDeployment> getDeployments()
    {
       return this.deployments.values();
    }
@@ -173,13 +174,13 @@
    /**
     * Create the ProfileDeployment.
     * 
-    * @param virtual the virtual deployment meta data
+    * @param deployment the virtual deployment meta data
     * @return the profile deployment
     * @throws Exception
     */
-   protected ProfileDeployment createDeployment(VirtualDeployment virtual) throws Exception
+   protected ProfileDeployment createDeployment(ProfileDeploymentMetaData deployment) throws Exception
    {
-      return getRepository().createDeployment(virtual);
+      return getRepository().createDeployment(deployment);
    }
    
    /**

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/AbstractVirtualDeploymentAssembly.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/AbstractVirtualDeploymentAssembly.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/AbstractVirtualDeploymentAssembly.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -186,9 +186,9 @@
     */
    protected VirtualDeploymentAssemblyContext createNonAssembledContext(VirtualDeployment deployment) throws IOException
    {
-      if(deployment.getPath() != null)
+      if(deployment.getArtifact() != null)
       {
-         VirtualFile vf = getVirtualFile(deployment.getPath()); 
+         VirtualFile vf = getVirtualFile(deployment.getArtifact()); 
          return new ImmutableAssemblyContext(vf);         
       }
       return null;

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/BasicVirtualAssemblyContext.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/BasicVirtualAssemblyContext.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/assembly/BasicVirtualAssemblyContext.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -34,6 +34,8 @@
 import org.jboss.virtual.VirtualFileFilter;
 
 /**
+ * The basic virtual assembly context.
+ * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */

Modified: projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/deployment/AbstractVirtualDeployment.java
===================================================================
--- projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/deployment/AbstractVirtualDeployment.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/main/java/org/jboss/profileservice/virtual/deployment/AbstractVirtualDeployment.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -40,7 +40,7 @@
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
- at XmlType(propOrder = {"name", "path", "artifacts", "requires", "children" })
+ at XmlType(propOrder = {"name", "artifact", "artifacts", "requires", "children" })
 public class AbstractVirtualDeployment extends AbstractProfileCapability implements VirtualDeployment
 {
    
@@ -48,7 +48,7 @@
    private static final long serialVersionUID = -1017243455955127135L;
 
    /** The artifact id. */
-   private VirtualArtifactMetaData path;
+   private VirtualArtifactMetaData artifact;
    
    /** The artifacts. */
    private List<VirtualArtifactMetaData> artifacts;
@@ -80,27 +80,27 @@
    }
    
    /**
-    * Get the path.
+    * Get the artifact.
     * 
-    * @return the path.
+    * @return the artifact.
     */
    @XmlElements({
       @XmlElement(name = "file", type = AbstractVirtualFileArtifact.class)
       // @XmlElement(name = "artifact", type = VirtualMavenArtifactMetaData.class)
    })
-   public VirtualArtifactMetaData getPath()
+   public VirtualArtifactMetaData getArtifact()
    {
-      return path;
+      return artifact;
    }
 
    /**
-    * Set the path.
+    * Set the artifact.
     * 
-    * @param path The path to set.
+    * @param artifact The artifact.
     */
-   public void setPath(VirtualArtifactMetaData path)
+   public void setArtifact(VirtualArtifactMetaData artifact)
    {
-      this.path = path;
+      this.artifact = artifact;
    }
 
    /**

Deleted: projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomDeploymentMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomDeploymentMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomDeploymentMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -1,86 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */ 
-package org.jboss.test.profileservice.metadata.support;
-
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
-
-import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
-import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitor;
-
-/**
- * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
- * @version $Revision$
- */
- at XmlType(name = "cDeploymentType", propOrder = { "groupId", "name", "version" })
-public class CustomDeploymentMetaData implements ProfileDeploymentMetaData
-{
-
-   /** The deployment name. */
-   private String name;
-   
-   /** The groudId. */
-   private String groupId;
-   
-   /** The version. */
-   private String version;
-   
-   @XmlElement(name = "name")
-   public String getName()
-   {
-      return name;
-   }
-   
-   public void setName(String name)
-   {
-      this.name = name;
-   }
-   
-   @XmlElement(name = "group-id")
-   public String getGroupId()
-   {
-      return groupId;
-   }
-   
-   public void setGroupId(String groupId)
-   {
-      this.groupId = groupId;
-   }
-   
-   @XmlElement(name = "version")
-   public String getVersion()
-   {
-      return version;
-   }
-   
-   public void setVersion(String version)
-   {
-      this.version = version;
-   }
-
-   public void visit(ProfileMetaDataVisitor visitor)
-   {
-      // nothing
-   }
-   
-}
-

Deleted: projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomProfileMetaData.java
===================================================================
--- projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomProfileMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/metadata/support/CustomProfileMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -1,129 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2009, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */ 
-package org.jboss.test.profileservice.metadata.support;
-
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlNsForm;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlTransient;
-import javax.xml.bind.annotation.XmlType;
-
-import org.jboss.profileservice.profile.metadata.BasicSubProfileMetaData;
-import org.jboss.profileservice.profile.metadata.plugin.PropertyProfileSourceMetaData;
-import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
-import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitor;
-import org.jboss.profileservice.spi.metadata.ProfileMetaDataVisitorNode;
-import org.jboss.profileservice.spi.metadata.ProfileSourceMetaData;
-import org.jboss.profileservice.spi.metadata.helpers.AbstractProfileMetaData;
-import org.jboss.xb.annotations.JBossXmlSchema;
-
-/**
- * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
- * @version $Revision$
- */
- at JBossXmlSchema(namespace="urn:jboss:profileservice:profile:custom:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
- at XmlRootElement(name = "custom-profile")
- at XmlType(name = "customProfileType", propOrder = {"source", "features", "deployments"})
-public class CustomProfileMetaData extends AbstractProfileMetaData
-{
-
-   /** The profile source. */
-   private ProfileSourceMetaData source;
-   
-   /** The deployments. */
-   private List<ProfileDeploymentMetaData> deployments;
-
-   public CustomProfileMetaData()
-   {
-      super();
-   }
-   
-   public List<ProfileDeploymentMetaData> getDeployments()
-   {
-      return this.deployments;
-   }
-   
-   /**
-    * The domain attribute needs to be configured
-    * in the domain meta data and is shared across
-    * all local profiles.
-    */
-   @Override
-   @XmlTransient
-   public String getDomain()
-   {
-      return super.getDomain();
-   }
-   
-   /**
-    * The server attribute needs to be configured
-    * in the domain meta data and is shared across
-    * all local profiles.
-    */
-   @Override
-   @XmlTransient
-   public String getServer()
-   {
-      return super.getServer();
-   }
-   
-   @Override
-   @XmlAttribute(name = "name")
-   public String getName()
-   {
-      return super.getName();
-   }
-   
-   @Override
-   @XmlElement(name = "profile-dependency", type = BasicSubProfileMetaData.class)
-   public List<ProfileMetaDataVisitorNode> getFeatures()
-   {
-      return super.getFeatures();
-   }
-   
-   @XmlElement(name = "profile-deployment",  type = CustomDeploymentMetaData.class)
-   public void setDeployments(List<ProfileDeploymentMetaData> deployments)
-   {
-      this.deployments = deployments;
-   }
-
-   @XmlElement(name = "custom-source", type = PropertyProfileSourceMetaData.class)
-   public ProfileSourceMetaData getSource()
-   {
-      return this.source;
-   }
-   
-   public void setSource(ProfileSourceMetaData source)
-   {
-      this.source = source;
-   }
- 
-   public void visit(ProfileMetaDataVisitor visitor)
-   {
-      super.visit(visitor);
-   }
-
-}
-

Modified: projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/repository/test/ArtifactRepositoryUnitTestCase.java
===================================================================
--- projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/repository/test/ArtifactRepositoryUnitTestCase.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/test/java/org/jboss/test/profileservice/repository/test/ArtifactRepositoryUnitTestCase.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -34,7 +34,6 @@
 import org.jboss.profileservice.spi.metadata.ProfileDeploymentMetaData;
 import org.jboss.profileservice.spi.metadata.ProfileMetaData;
 import org.jboss.profileservice.spi.repository.ArtifactRepository;
-import org.jboss.profileservice.spi.virtual.VirtualDeployment;
 import org.jboss.profileservice.spi.virtual.assembly.VirtualDeploymentAssemblyContext;
 import org.jboss.test.profileservice.ProfileServiceTestBase;
 import org.jboss.test.profileservice.virtual.support.TestArtifactRepository;
@@ -64,13 +63,14 @@
       {
          for(ProfileDeploymentMetaData deployment : md.getDeployments())
          {
-            ProfileDeployment d = factory.createDeployment((VirtualDeployment) deployment);
+            ProfileDeployment d = factory.createDeployment(deployment);
             assertNotNull(d);
             assertNotNull(d.getAttachment(VirtualDeploymentAssemblyContext.class.getName()));
          }
       }
    }
    
+   @SuppressWarnings("unchecked")
    protected VirtualDeploymentRepository createRepository(MavenArtifactRepositoryMetaData metaData) throws Exception
    {
       TestVirtualDeploymentRepository repository = new TestVirtualDeploymentRepository();

Modified: projects/profileservice/trunk/core/src/test/resources/system/bootstrap.xml
===================================================================
--- projects/profileservice/trunk/core/src/test/resources/system/bootstrap.xml	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/core/src/test/resources/system/bootstrap.xml	2009-12-10 10:30:47 UTC (rev 97690)
@@ -50,12 +50,11 @@
 		</constructor>
 	</bean>
 	
-	<!-- 
+	<bean name="MavenArtifactMetaData" class="org.jboss.profileservice.repository.artifact.maven.MavenArtifactRepositoryMetaData" />
 	<bean name="MavenArtifactRepository" class="org.jboss.profileservice.repository.artifact.maven.LocalMavenArtifactRepository">
 		<constructor>
-			<parameter>TODO metadata</parameter>
+			<parameter><inject bean="MavenArtifactMetaData" /></parameter>
 			<parameter class="java.net.URI">${jboss.artifact.repository.url}</parameter>
 		</constructor>
 	</bean>
- 	-->
 </deployment>
\ No newline at end of file

Modified: projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/Profile.java
===================================================================
--- projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/Profile.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/Profile.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -51,7 +51,7 @@
     * Get all deployments defined in this profile
     * @return the deployment instances in this profile.
     */
-   Collection<? extends ProfileDeployment> getDeployments();
+   Collection<ProfileDeployment> getDeployments();
    
    /**
     * Get a named deployment.

Modified: projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/metadata/ProfileDeploymentMetaData.java
===================================================================
--- projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/metadata/ProfileDeploymentMetaData.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/metadata/ProfileDeploymentMetaData.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -21,14 +21,15 @@
  */ 
 package org.jboss.profileservice.spi.metadata;
 
+import org.jboss.profileservice.spi.virtual.VirtualDeployment;
 
 /**
- * The meta data for a profile deployment.
+ * The meta data describing a (virtual) profile deployment.
  * 
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
-public interface ProfileDeploymentMetaData extends ProfileMetaDataVisitorNode
+public interface ProfileDeploymentMetaData extends VirtualDeployment, ProfileMetaDataVisitorNode
 {
      
 }

Modified: projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/repository/ArtifactRepository.java
===================================================================
--- projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/repository/ArtifactRepository.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/repository/ArtifactRepository.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -32,6 +32,7 @@
  * @author <a href="mailto:emuckenh at redhat.com">Emanuel Muckenhuber</a>
  * @version $Revision$
  */
+// TODO move this out of the PS spi?
 public interface ArtifactRepository<T extends ArtifactId> extends Identifiable<ArtifactRepositoryId>
 {
    

Modified: projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/virtual/VirtualDeployment.java
===================================================================
--- projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/virtual/VirtualDeployment.java	2009-12-10 10:24:14 UTC (rev 97689)
+++ projects/profileservice/trunk/spi/src/main/java/org/jboss/profileservice/spi/virtual/VirtualDeployment.java	2009-12-10 10:30:47 UTC (rev 97690)
@@ -46,7 +46,7 @@
     * 
     * @return the artifact id
     */
-   ArtifactId getPath();
+   ArtifactId getArtifact();
    
    /**
     * Get the deployment artifacts.




More information about the jboss-cvs-commits mailing list