Package org.jboss.system.server.profileservice.repository.clustered.metadata

Examples of org.jboss.system.server.profileservice.repository.clustered.metadata.RepositoryRootMetadata


   }

   public RepositoryContentMetadata getContentMetadataForAdd(RepositoryItemMetadata toAdd, InputStream contentIS) throws IOException
   {
      RepositoryContentMetadata result = new RepositoryContentMetadata(getOfficialContentMetadata());
      RepositoryRootMetadata rmd = result.getRepositoryRootMetadata(toAdd.getRootName());
      if (rmd == null)
      {
         throw new IllegalArgumentException("Unknown root name " + toAdd.getRootName());
      }
      RepositoryItemMetadata remove = rmd.getItemMetadata(toAdd.getRelativePathElements());
      if (remove != null)
      {
         Collection<RepositoryItemMetadata> content = rmd.getContent();
         if (remove.isDirectory())
         {
            for (Iterator<RepositoryItemMetadata> it = content.iterator(); it.hasNext(); )
            {
               if (it.next().isChildOf(remove))
               {
                  it.remove();
               }
            }
         }
         content.remove(remove);
      }
      rmd.getContent().add(toAdd);
      pendingStreams.put(toAdd, contentIS);     
      return result;
   }
View Full Code Here


   }
  
   public RepositoryContentMetadata getContentMetadataForRemove(String repositoryRoot, String relativePath) throws IOException
   {
      RepositoryContentMetadata cmd = new RepositoryContentMetadata(getOfficialContentMetadata());
      RepositoryRootMetadata root = cmd.getRepositoryRootMetadata(repositoryRoot);
     
      if (root == null)
      {
         throw new IllegalArgumentException(repositoryRoot + " is not a child of any known roots");
      }
     
      RepositoryItemMetadata remove = root.getItemMetadata(RepositoryItemMetadata.getPathElements(relativePath));     
      if (remove != null)
      {
         Collection<RepositoryItemMetadata> items = root.getContent();
         if (remove.isDirectory())
         {
            for (Iterator<RepositoryItemMetadata> it = items.iterator(); it.hasNext(); )
            {
               if (it.next().isChildOf(remove))
View Full Code Here

      }
      try
      {     
         RepositoryContentMetadata existingRCMD = new RepositoryContentMetadata(this.localContentManager.getOfficialContentMetadata());        
         RepositoryItemMetadata newRIMD = this.clusteringHandler.addDeploymentContent(vfsPath, contentIS);
         RepositoryRootMetadata existingRRMD = existingRCMD.getRepositoryRootMetadata(newRIMD.getRootName());
         boolean exists = existingRRMD != null && existingRRMD.getItemMetadata(newRIMD.getRelativePathElements()) != null;
         VirtualFile root = getCachedVirtualFile(namedURIMap.get(newRIMD.getRootName()));
         VirtualFile contentVF = root.getChild(newRIMD.getRelativePath());

         try
         {
View Full Code Here

*/
public class RepositoryRootMetadataUnitTestCase extends TestCase
{
   public void testIteratorRemoval()
   {
      RepositoryRootMetadata root = getNewRepositoryRootMetadata("A", "B");
      Iterator<RepositoryItemMetadata> it = root.getContent().iterator();
      it.hasNext();
      RepositoryItemMetadata toRemove = it.next();
      it.remove();
      assertNull(root.getItemMetadata(toRemove.getRelativePathElements()));
   }
View Full Code Here

   }

  
   private static RepositoryRootMetadata getNewRepositoryRootMetadata(String ... itemNames)
   {
      RepositoryRootMetadata base = new RepositoryRootMetadata();
      base.setName("name");
      for (String itemName : itemNames)
      {
         RepositoryItemMetadata item = new RepositoryItemMetadata();
         item.setRelativePath(itemName);
         base.getContent().add(item);
      }
     
      return base;
   }
View Full Code Here

  
   public void testSerializationDeserialization() throws Exception
   {
      ProfileKey key = new ProfileKey("domain", "server", "name");
      RepositoryContentMetadata rcm = new RepositoryContentMetadata(key);
      RepositoryRootMetadata rrm = new RepositoryRootMetadata("normal");
      Collection<RepositoryItemMetadata> rims = rrm.getContent();
     
      RepositoryItemMetadata rim = new RepositoryItemMetadata();
      rim.setRelativePath("/item");
      rim.setOriginatingNode("192.168.100.1:1099");
      rim.setTimestamp(1);
      rims.add(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_item");
      rim.setRemoved(true);
      rim.setOriginatingNode("192.168.100.1:1099");
      rim.setTimestamp(2);
      rims.add(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(4);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/item.jar");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(4);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/META-INF");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setDirectory(true);
      rim.setTimestamp(3);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/META-INF/jboss-beans.xml");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(3);
      rims.add(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/ejb.jar");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(5);
      rim.setRemoved(true);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/META-INF");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/META-INF/application.xml");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rims.add(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/war.war");
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(6);
      rim.setRemoved(true);
      rims.add(rim);
     
      RepositoryRootMetadata emptyRRM = new RepositoryRootMetadata("empty");
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/");
      rim.setOriginatingNode("192.168.100.4:1099");
      rim.setTimestamp(10);
      rcm.setRepositories(Arrays.asList(new RepositoryRootMetadata[]{rrm, emptyRRM}));
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/");
      rim.setOriginatingNode("127.0.0.1:1099");
      rim.setTimestamp(20);
      emptyRRM.getContent().add(rim);
     
      File temp = new File(System.getProperty("java.io.tmpdir"));
     
      JAXBRepositoryContentMetadataPersister testee = new JAXBRepositoryContentMetadataPersister(temp.toURI());
      testee.store("test", rcm);
View Full Code Here

      base.setDomain("domain");
      base.setServer("server");
      base.setName("name");
      for (String rootName : rootNames)
      {
         RepositoryRootMetadata root = new RepositoryRootMetadata();
         root.setName(rootName);
         base.getRepositories().add(root);
      }
     
      return base;
   }
View Full Code Here

      }
     
      installModifications(modifications, updated);
     
      official = this.contentManager.getOfficialContentMetadata();
      RepositoryRootMetadata rrmd = official.getRepositoryRootMetadata(item.getRootName());
      return rrmd.getItemMetadata(item.getRelativePathElements());
   }
View Full Code Here

  
   public void testSerializationDeserialization() throws Exception
   {
      ProfileKey key = new ProfileKey("domain", "server", "name");
      RepositoryContentMetadata rcm = new RepositoryContentMetadata(key);
      RepositoryRootMetadata rrm = new RepositoryRootMetadata("normal");
     
      RepositoryItemMetadata rim = new RepositoryItemMetadata();
      rim.setRelativePath("/item");
      rim.setOriginatingNode("192.168.100.1:1099");
      rim.setTimestamp(1);
      rrm.addItemMetadata(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_item");
      rim.setRemoved(true);
      rim.setOriginatingNode("192.168.100.1:1099");
      rim.setTimestamp(2);
      rrm.addItemMetadata(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(4);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/item.jar");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(4);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/META-INF");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setDirectory(true);
      rim.setTimestamp(3);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/dir.sar/META-INF/jboss-beans.xml");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(3);
      rrm.addItemMetadata(rim);
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/ejb.jar");
      rim.setOriginatingNode("192.168.100.2:1099");
      rim.setTimestamp(5);
      rim.setRemoved(true);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/META-INF");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/META-INF/application.xml");
      rim.setDirectory(true);
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(7);
      rim.setRemoved(true);
      rrm.addItemMetadata(rim);
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/removed_dir.ear/war.war");
      rim.setOriginatingNode("192.168.100.3:1099");
      rim.setTimestamp(6);
      rim.setRemoved(true);
      rrm.addItemMetadata(rim);
     
      RepositoryRootMetadata emptyRRM = new RepositoryRootMetadata("empty");
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/");
      rim.setOriginatingNode("192.168.100.4:1099");
      rim.setTimestamp(10);
      rcm.setRepositories(Arrays.asList(new RepositoryRootMetadata[]{rrm, emptyRRM}));
     
      rim = new RepositoryItemMetadata();
      rim.setRelativePath("/");
      rim.setOriginatingNode("127.0.0.1:1099");
      rim.setTimestamp(20);
      emptyRRM.addItemMetadata(rim);
     
      File temp = new File(System.getProperty("java.io.tmpdir"));
     
      JAXBRepositoryContentMetadataPersister testee = new JAXBRepositoryContentMetadataPersister(temp.toURI());
      testee.store("test", rcm);
View Full Code Here

      else if (mod.getType() == Type.REMOVE_FROM_CLUSTER)
      {
         // An addition has been rejected. We don't record the item as
         // removed in the metadata, we just remove it.
         RepositoryContentMetadata contentMetadata = getContext().getInProgressMetadata();
         RepositoryRootMetadata rmd = contentMetadata.getRepositoryRootMetadata(mod.getRootName());
         rmd.removeItemMetadata(modItem.getRelativePathElements());        
      }
      else
      {
         // Add a record of the item, marked as removed
         RepositoryItemMetadata markedRemoved = getMarkedRemovedItem(mod);
         RepositoryContentMetadata contentMetadata = getContext().getInProgressMetadata();
         RepositoryRootMetadata rmd = contentMetadata.getRepositoryRootMetadata(mod.getRootName());
         rmd.addItemMetadata(markedRemoved);
      }
   }
View Full Code Here

TOP

Related Classes of org.jboss.system.server.profileservice.repository.clustered.metadata.RepositoryRootMetadata

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.