org.jboss.system.server.profileservice.repository.clustered
Class ImmutableClusteredDeploymentRepository

java.lang.Object
  extended by org.jboss.system.server.profileservice.repository.AbstractVFSProfileSource
      extended by org.jboss.system.server.profileservice.repository.AbstractDeploymentRepository
          extended by org.jboss.system.server.profileservice.repository.BasicDeploymentRepository
              extended by org.jboss.system.server.profileservice.repository.HotDeploymentRepository
                  extended by org.jboss.system.server.profileservice.repository.clustered.ClusteredDeploymentRepository
                      extended by org.jboss.system.server.profileservice.repository.clustered.ImmutableClusteredDeploymentRepository
All Implemented Interfaces:
org.jboss.profileservice.spi.DeploymentRepository

public class ImmutableClusteredDeploymentRepository
extends ClusteredDeploymentRepository

A ClusteredDeploymentRepository that will only accept content changes pulled from the cluster at load time; pushing updates to the cluster at load is not support, nor are changes after load supported. Such a repository can be used to provision a node from the cluster at startup, while leaving content immutable thereafter.

Author:
Brian Stansberry

Field Summary
 
Fields inherited from class org.jboss.system.server.profileservice.repository.AbstractDeploymentRepository
ignoreFlags
 
Fields inherited from class org.jboss.system.server.profileservice.repository.AbstractVFSProfileSource
log, uris
 
Constructor Summary
ImmutableClusteredDeploymentRepository(org.jboss.profileservice.spi.ProfileKey key, URI[] uris, Map<org.jboss.profileservice.spi.ProfileKey,RepositoryClusteringHandler> clusteringHandlers, Set<LocalContentManagerFactory<?>> persisterFactories)
          Create a new ImmutableClusteredDeploymentRepository.
 
Method Summary
 String addDeploymentContent(String vfsPath, InputStream contentIS, org.jboss.profileservice.spi.DeploymentOption... options)
           
 Collection<org.jboss.profileservice.spi.ModificationInfo> getModifiedDeployments()
           
 boolean registerClusteringHandler(RepositoryClusteringHandler handler)
           
 void remove()
           
 
Methods inherited from class org.jboss.system.server.profileservice.repository.clustered.ClusteredDeploymentRepository
create, getClusteringHandler, getPartitionName, load, removeDeployment, unload, unregisterClusteringHandler
 
Methods inherited from class org.jboss.system.server.profileservice.repository.HotDeploymentRepository
applyAddedDeployments, checkForAdditions, cleanUpRoot, getChecker, setChecker
 
Methods inherited from class org.jboss.system.server.profileservice.repository.BasicDeploymentRepository
addDeployment, addDeploymentContent, getUploadUri, internalAddDeployment, isFailIfAlreadyExists, lockRead, lockWrite, removeDeployment, setFailIfAlreadyExists, setUploadUri, unlockRead, unlockWrite
 
Methods inherited from class org.jboss.system.server.profileservice.repository.AbstractDeploymentRepository
acceptsDeployment, clearDeploymentContentFlags, getDeployment, getDeploymentContent, getDeploymentContentFlags, getProfileKey, getRepositoryNames, hasDeploymentContentFlags, lockDeploymentContent, setDeploymentContentFlags, unlockDeploymentContent
 
Methods inherited from class org.jboss.system.server.profileservice.repository.AbstractVFSProfileSource
addedDeployment, addedDeployments, addVirtualFileCache, createDeployment, destroy, findDeploymentContent, getCachedVirtualFile, getCachedVirtualFile, getDeploymentFilter, getDeploymentNames, getDeployments, getLastModified, getRepositoryURIs, isRecursiveScan, loadApplications, setDeploymentFilter, setRecursiveScan, updateLastModfied
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.profileservice.spi.DeploymentRepository
getDeploymentNames, getDeployments, getLastModified, getRepositoryURIs
 

Constructor Detail

ImmutableClusteredDeploymentRepository

public ImmutableClusteredDeploymentRepository(org.jboss.profileservice.spi.ProfileKey key,
                                              URI[] uris,
                                              Map<org.jboss.profileservice.spi.ProfileKey,RepositoryClusteringHandler> clusteringHandlers,
                                              Set<LocalContentManagerFactory<?>> persisterFactories)
                                       throws IOException
Create a new ImmutableClusteredDeploymentRepository.

Parameters:
key -
uris -
Throws:
IOException
Method Detail

getModifiedDeployments

public Collection<org.jboss.profileservice.spi.ModificationInfo> getModifiedDeployments()
                                                                                 throws Exception
Specified by:
getModifiedDeployments in interface org.jboss.profileservice.spi.DeploymentRepository
Overrides:
getModifiedDeployments in class ClusteredDeploymentRepository
Throws:
Exception

addDeploymentContent

public String addDeploymentContent(String vfsPath,
                                   InputStream contentIS,
                                   org.jboss.profileservice.spi.DeploymentOption... options)
                            throws IOException
Specified by:
addDeploymentContent in interface org.jboss.profileservice.spi.DeploymentRepository
Overrides:
addDeploymentContent in class ClusteredDeploymentRepository
Throws:
IOException

remove

public void remove()
            throws Exception
Specified by:
remove in interface org.jboss.profileservice.spi.DeploymentRepository
Overrides:
remove in class ClusteredDeploymentRepository
Throws:
Exception

registerClusteringHandler

public boolean registerClusteringHandler(RepositoryClusteringHandler handler)
Overrides:
registerClusteringHandler in class ClusteredDeploymentRepository


Copyright © 2009 JBoss, a division of Red Hat, Inc.. All Rights Reserved.