http://git-wip-us.apache.org/repos/asf/geode/blob/654d65b5/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheCreation.java ---------------------------------------------------------------------- diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheCreation.java b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheCreation.java index b07ccba..7f623c7 100755 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheCreation.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheCreation.java @@ -24,11 +24,11 @@ import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.List; import java.util.Map; +import java.util.Map.Entry; import java.util.Properties; import java.util.Set; import java.util.concurrent.Executor; @@ -56,15 +56,16 @@ import org.apache.geode.cache.RegionExistsException; import org.apache.geode.cache.RegionFactory; import org.apache.geode.cache.RegionShortcut; import org.apache.geode.cache.TimeoutException; +import org.apache.geode.cache.TransactionListener; import org.apache.geode.cache.asyncqueue.AsyncEventQueue; import org.apache.geode.cache.asyncqueue.AsyncEventQueueFactory; import org.apache.geode.cache.asyncqueue.internal.AsyncEventQueueFactoryImpl; +import org.apache.geode.cache.asyncqueue.internal.AsyncEventQueueImpl; import org.apache.geode.cache.client.Pool; import org.apache.geode.cache.client.PoolFactory; import org.apache.geode.cache.client.PoolManager; import org.apache.geode.cache.client.internal.ClientMetadataService; import org.apache.geode.cache.client.internal.PoolImpl; -import org.apache.geode.cache.execute.FunctionService; import org.apache.geode.cache.query.CqAttributes; import org.apache.geode.cache.query.CqException; import org.apache.geode.cache.query.CqExistsException; @@ -80,6 +81,7 @@ import org.apache.geode.cache.query.Query; import org.apache.geode.cache.query.QueryInvalidException; import org.apache.geode.cache.query.QueryService; import org.apache.geode.cache.query.RegionNotFoundException; +import org.apache.geode.cache.query.internal.QueryMonitor; import org.apache.geode.cache.query.internal.cq.CqService; import org.apache.geode.cache.server.CacheServer; import org.apache.geode.cache.snapshot.CacheSnapshotService; @@ -93,7 +95,9 @@ import org.apache.geode.distributed.DistributedLockService; import org.apache.geode.distributed.DistributedMember; import org.apache.geode.distributed.DistributedSystem; import org.apache.geode.distributed.internal.DM; +import org.apache.geode.distributed.internal.DistributionAdvisor; import org.apache.geode.distributed.internal.InternalDistributedSystem; +import org.apache.geode.distributed.internal.membership.InternalDistributedMember; import org.apache.geode.i18n.LogWriterI18n; import org.apache.geode.internal.Assert; import org.apache.geode.internal.SystemTimer; @@ -102,9 +106,12 @@ import org.apache.geode.internal.cache.CacheServerImpl; import org.apache.geode.internal.cache.CacheConfig; import org.apache.geode.internal.cache.CacheServerLauncher; import org.apache.geode.internal.cache.CacheService; +import org.apache.geode.internal.cache.DiskStoreAttributes; import org.apache.geode.internal.cache.DiskStoreFactoryImpl; import org.apache.geode.internal.cache.DiskStoreImpl; +import org.apache.geode.internal.cache.DiskStoreMonitor; import org.apache.geode.internal.cache.DistributedRegion; +import org.apache.geode.internal.cache.EventTracker.ExpiryTask; import org.apache.geode.internal.cache.ExpirationScheduler; import org.apache.geode.internal.cache.FilterProfile; import org.apache.geode.internal.cache.GemFireCacheImpl; @@ -115,6 +122,7 @@ import org.apache.geode.internal.cache.PartitionedRegion; import org.apache.geode.internal.cache.PoolFactoryImpl; import org.apache.geode.internal.cache.PoolManagerImpl; import org.apache.geode.internal.cache.RegionListener; +import org.apache.geode.internal.cache.TXEntryStateFactory; import org.apache.geode.internal.cache.TXManagerImpl; import org.apache.geode.internal.cache.TombstoneService; import org.apache.geode.internal.cache.control.InternalResourceManager; @@ -123,6 +131,7 @@ import org.apache.geode.internal.cache.extension.Extensible; import org.apache.geode.internal.cache.extension.ExtensionPoint; import org.apache.geode.internal.cache.extension.SimpleExtensionPoint; import org.apache.geode.internal.cache.ha.HARegionQueue; +import org.apache.geode.internal.cache.persistence.BackupManager; import org.apache.geode.internal.cache.persistence.PersistentMemberManager; import org.apache.geode.internal.cache.tier.sockets.CacheClientNotifier; import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID; @@ -135,6 +144,8 @@ import org.apache.geode.internal.logging.InternalLogWriter; import org.apache.geode.internal.logging.LocalLogWriter; import org.apache.geode.internal.logging.LogWriterFactory; import org.apache.geode.internal.offheap.MemoryAllocator; +import org.apache.geode.management.internal.JmxManagerAdvisor; +import org.apache.geode.management.internal.RestAgent; import org.apache.geode.pdx.PdxInstance; import org.apache.geode.pdx.PdxInstanceFactory; import org.apache.geode.pdx.PdxSerializer; @@ -157,14 +168,14 @@ public class CacheCreation implements InternalCache { private int lockLease = GemFireCacheImpl.DEFAULT_LOCK_LEASE; private boolean hasLockLease = false; - /** The amount of time to wait for a <code>netSearch</code> */ + /** The amount of time to wait for a {@code netSearch} */ private int searchTimeout = GemFireCacheImpl.DEFAULT_SEARCH_TIMEOUT; private boolean hasSearchTimeout = false; private boolean hasMessageSyncInterval = false; /** This cache's roots keyed on name */ - protected final Map roots = new LinkedHashMap(); + protected final Map<String, Region<?, ?>> roots = new LinkedHashMap<>(); /** Are dynamic regions enabled in this cache? */ private DynamicRegionFactory.Config dynamicRegionFactoryConfig = null; @@ -175,17 +186,16 @@ public class CacheCreation implements InternalCache { private boolean hasServer = false; /** The bridge servers configured for this cache */ - private final List bridgeServers = new ArrayList(); + private final List<CacheServer> bridgeServers = new ArrayList<>(); // Stores the properties used to initialize declarables. - private final Map<Declarable, Properties> declarablePropertiesMap = - new HashMap<Declarable, Properties>(); + private final Map<Declarable, Properties> declarablePropertiesMap = new HashMap<>(); - private Set<GatewaySender> gatewaySenders = new HashSet<GatewaySender>(); + private final Set<GatewaySender> gatewaySenders = new HashSet<>(); - private Set<GatewayReceiver> gatewayReceivers = new HashSet<GatewayReceiver>(); + private final Set<GatewayReceiver> gatewayReceivers = new HashSet<>(); - private Set<AsyncEventQueue> asyncEventQueues = new HashSet<AsyncEventQueue>(); + private final Set<AsyncEventQueue> asyncEventQueues = new HashSet<>(); private GatewayConflictResolver gatewayConflictResolver; @@ -194,47 +204,44 @@ public class CacheCreation implements InternalCache { private boolean hasCopyOnRead = false; /** The CacheTransactionManager representative for this Cache */ - protected CacheTransactionManagerCreation txMgrCreation = null; - - /** JNDI Context associated with the Gemfire */ - // private static Context ctx; + CacheTransactionManagerCreation txMgrCreation = null; /** The named region attributes associated with this cache */ - private final Map namedRegionAttributes = new HashMap(); + private final Map<String, RegionAttributes<?, ?>> namedRegionAttributes = new HashMap<>(); /** * The names of the region attributes in the order in which they were added. Keeping track of this * ensures that named region attributes are processed in the correct order. That is, "parent" * named region attributes will be processed before "children" named region attributes. */ - protected final List regionAttributesNames = new ArrayList(); + final List<String> regionAttributesNames = new ArrayList<>(); /** * The named disk store attributes associated with this cache. Made this linked so its iteration * would be in insert order. This is important for unit testing 44914. */ - protected final Map diskStores = new LinkedHashMap(); + protected final Map<String, DiskStore> diskStores = new LinkedHashMap<>(); - private final List<File> backups = new ArrayList<File>(); + private final List<File> backups = new ArrayList<>(); - private CacheConfig cacheConfig = new CacheConfig(); + private final CacheConfig cacheConfig = new CacheConfig(); /** A logger that is used in debugging */ - private InternalLogWriter logWriter = new LocalLogWriter(InternalLogWriter.ALL_LEVEL, System.out); + private final InternalLogWriter logWriter = + new LocalLogWriter(InternalLogWriter.ALL_LEVEL, System.out); - private InternalLogWriter securityLogWriter = LogWriterFactory.toSecurityLogWriter(logWriter); + private final InternalLogWriter securityLogWriter = + LogWriterFactory.toSecurityLogWriter(this.logWriter); /** * {@link ExtensionPoint} support. * * @since GemFire 8.1 */ - private SimpleExtensionPoint<Cache> extensionPoint = new SimpleExtensionPoint<Cache>(this, this); - - //////////////////////// Constructors //////////////////////// + private final SimpleExtensionPoint<Cache> extensionPoint = new SimpleExtensionPoint<>(this, this); /** - * Creates a new <code>CacheCreation</code> with no root regions + * Creates a new {@code CacheCreation} with no root regions */ public CacheCreation() { this(false); @@ -242,7 +249,7 @@ public class CacheCreation implements InternalCache { /** clear thread locals that may have been set by previous uses of CacheCreation */ public static void clearThreadLocals() { - createInProgress = new ThreadLocal<>(); + createInProgress.remove(); } /** @@ -253,20 +260,18 @@ public class CacheCreation implements InternalCache { public CacheCreation(boolean forParsing) { initializeRegionShortcuts(); if (!forParsing) { - createInProgress.set(this.pm); + createInProgress.set(this.poolManager); } } /** * @since GemFire 5.7 */ - public void startingGenerate() { + void startingGenerate() { createInProgress.set(null); } - ////////////////////// Instance Methods ////////////////////// - - static final private RegionAttributes defaults = new AttributesFactory().create(); + private static final RegionAttributes defaults = new AttributesFactory().create(); RegionAttributes getDefaultAttributes() { return defaults; @@ -280,7 +285,7 @@ public class CacheCreation implements InternalCache { * Sets the attributes of the root region * * @throws RegionExistsException If this cache already contains a region with the same name as - * <code>root</code>. + * {@code root}. */ void addRootRegion(RegionCreation root) throws RegionExistsException { @@ -294,10 +299,12 @@ public class CacheCreation implements InternalCache { } } + @Override public int getLockTimeout() { return this.lockTimeout; } + @Override public void setLockTimeout(int seconds) { this.lockTimeout = seconds; this.hasLockTimeout = true; @@ -307,10 +314,12 @@ public class CacheCreation implements InternalCache { return this.hasLockTimeout; } + @Override public int getLockLease() { return this.lockLease; } + @Override public void setLockLease(int seconds) { this.lockLease = seconds; this.hasLockLease = true; @@ -320,10 +329,12 @@ public class CacheCreation implements InternalCache { return this.hasLockLease; } + @Override public int getSearchTimeout() { return this.searchTimeout; } + @Override public void setSearchTimeout(int seconds) { this.searchTimeout = seconds; this.hasSearchTimeout = true; @@ -333,10 +344,12 @@ public class CacheCreation implements InternalCache { return this.hasSearchTimeout; } + @Override public int getMessageSyncInterval() { return HARegionQueue.getMessageSyncInterval(); } + @Override public void setMessageSyncInterval(int seconds) { if (seconds < 0) { throw new IllegalArgumentException( @@ -351,11 +364,9 @@ public class CacheCreation implements InternalCache { return this.hasMessageSyncInterval; } - public Set rootRegions() { - Set regions = new LinkedHashSet(); - for (Iterator itr = this.roots.values().iterator(); itr.hasNext();) { - regions.add(itr.next()); - } + @Override + public Set<Region<?, ?>> rootRegions() { + Set<Region<?, ?>> regions = new LinkedHashSet<>(this.roots.values()); return Collections.unmodifiableSet(regions); } @@ -364,6 +375,7 @@ public class CacheCreation implements InternalCache { * * @since GemFire prPersistSprint2 */ + @Override public DiskStoreFactory createDiskStoreFactory() { return new DiskStoreFactoryImpl(this); } @@ -374,7 +386,7 @@ public class CacheCreation implements InternalCache { * * @since GemFire 5.7 */ - private static ThreadLocal createInProgress = new ThreadLocal(); + private static final ThreadLocal<PoolManagerImpl> createInProgress = new ThreadLocal<>(); /** * Returns null if the current thread is not doing a CacheCreation create. Otherwise returns the @@ -382,23 +394,18 @@ public class CacheCreation implements InternalCache { * * @since GemFire 5.7 */ - public static final PoolManagerImpl getCurrentPoolManager() { - return (PoolManagerImpl) createInProgress.get(); + public static PoolManagerImpl getCurrentPoolManager() { + return createInProgress.get(); } /** * Fills in the contents of a {@link Cache} based on this creation object's state. - * - * @throws TimeoutException - * @throws CacheWriterException - * @throws RegionExistsException - * @throws GatewayException */ - void create(GemFireCacheImpl cache) + void create(InternalCache cache) throws TimeoutException, CacheWriterException, GatewayException, RegionExistsException { - extensionPoint.beforeCreate(cache); + this.extensionPoint.beforeCreate(cache); - cache.setDeclarativeCacheConfig(cacheConfig); + cache.setDeclarativeCacheConfig(this.cacheConfig); if (cache.isClient()) { throw new IllegalStateException( @@ -419,20 +426,13 @@ public class CacheCreation implements InternalCache { if (this.gatewayConflictResolver != null) { cache.setGatewayConflictResolver(this.gatewayConflictResolver); } - // if (this.hasCopyOnRead()) { - // cache.setCopyOnRead(this.copyOnRead); - // } - { // create connection pools - Map m = getPools(); - if (!m.isEmpty()) { - Iterator it = m.values().iterator(); - while (it.hasNext()) { - Pool cp = (Pool) it.next(); - PoolFactoryImpl f; - f = (PoolFactoryImpl) PoolManager.createFactory(); - f.init(cp); - PoolImpl p = (PoolImpl) f.create(cp.getName()); - } + // create connection pools + Map<String, Pool> pools = getPools(); + if (!pools.isEmpty()) { + for (Pool pool : pools.values()) { + PoolFactoryImpl poolFactory = (PoolFactoryImpl) PoolManager.createFactory(); + poolFactory.init(pool); + poolFactory.create(pool.getName()); } } @@ -445,8 +445,8 @@ public class CacheCreation implements InternalCache { cache.initializePdxRegistry(); - for (Iterator iter = this.diskStores.values().iterator(); iter.hasNext();) { - DiskStoreAttributesCreation creation = (DiskStoreAttributesCreation) iter.next(); + for (DiskStore diskStore : this.diskStores.values()) { + DiskStoreAttributesCreation creation = (DiskStoreAttributesCreation) diskStore; if (creation != pdxRegDSC) { createDiskStore(creation, cache); } @@ -472,7 +472,7 @@ public class CacheCreation implements InternalCache { } for (GatewaySender senderCreation : this.getGatewaySenders()) { - GatewaySenderFactory factory = (GatewaySenderFactory) cache.createGatewaySenderFactory(); + GatewaySenderFactory factory = cache.createGatewaySenderFactory(); ((InternalGatewaySenderFactory) factory).configureGatewaySender(senderCreation); GatewaySender gatewaySender = factory.create(senderCreation.getId(), senderCreation.getRemoteDSId()); @@ -490,9 +490,6 @@ public class CacheCreation implements InternalCache { asyncQueueFactory.configureAsyncEventQueue(asyncEventQueueCreation); AsyncEventQueue asyncEventQueue = cache.getAsyncEventQueue(asyncEventQueueCreation.getId()); - // AsyncEventQueue asyncEventQueue = - // asyncQueueFactory.create(asyncEventQueueCreation.getId(), - // asyncEventQueueCreation.getAsyncEventListener()); if (asyncEventQueue == null) { asyncQueueFactory.create(asyncEventQueueCreation.getId(), asyncEventQueueCreation.getAsyncEventListener()); @@ -501,16 +498,13 @@ public class CacheCreation implements InternalCache { cache.initializePdxRegistry(); - - for (Iterator iter = this.regionAttributesNames.iterator(); iter.hasNext();) { - String id = (String) iter.next(); + for (String id : this.regionAttributesNames) { RegionAttributesCreation creation = (RegionAttributesCreation) getRegionAttributes(id); creation.inheritAttributes(cache, false); - RegionAttributes attrs; // Don't let the RegionAttributesCreation escape to the user - AttributesFactory factory = new AttributesFactory(creation); - attrs = factory.create(); + AttributesFactory<?, ?> factory = new AttributesFactory<>(creation); + RegionAttributes<?, ?> attrs = factory.create(); cache.setRegionAttributes(id, attrs); } @@ -521,14 +515,13 @@ public class CacheCreation implements InternalCache { // Create and start the BridgeServers. This code was moved from // before region initialization to after it to fix bug 33587. - // Create and start the CacheServers after the gateways have been intialized + // Create and start the CacheServers after the gateways have been initialized // to fix bug 39736. Integer serverPort = CacheServerLauncher.getServerPort(); String serverBindAdd = CacheServerLauncher.getServerBindAddress(); Boolean disableDefaultServer = CacheServerLauncher.getDisableDefaultServer(); - startCacheServers(this.getCacheServers(), cache, serverPort, serverBindAdd, - disableDefaultServer); + startCacheServers(getCacheServers(), cache, serverPort, serverBindAdd, disableDefaultServer); for (GatewayReceiver receiverCreation : this.getGatewayReceivers()) { GatewayReceiverFactory factory = cache.createGatewayReceiverFactory(); @@ -555,16 +548,14 @@ public class CacheCreation implements InternalCache { runInitializer(); cache.setInitializer(getInitializer(), getInitializerProps()); - // UnitTest CacheXml81Test.testCacheExtension // Create all extensions - extensionPoint.fireCreate(cache); + this.extensionPoint.fireCreate(cache); } - protected void initializeRegions(Map declarativeRegions, Cache cache) { - Iterator it = declarativeRegions.values().iterator(); - while (it.hasNext()) { - RegionCreation r = (RegionCreation) it.next(); - r.createRoot(cache); + void initializeRegions(Map<String, Region<?, ?>> declarativeRegions, Cache cache) { + for (Region region : declarativeRegions.values()) { + RegionCreation regionCreation = (RegionCreation) region; + regionCreation.createRoot(cache); } } @@ -572,9 +563,8 @@ public class CacheCreation implements InternalCache { * starts declarative cache servers if a server is not running on the port already. Also adds a * default server to the param declarativeCacheServers if a serverPort is specified. */ - protected void startCacheServers(List declarativeCacheServers, Cache cache, Integer serverPort, + void startCacheServers(List<CacheServer> declarativeCacheServers, Cache cache, Integer serverPort, String serverBindAdd, Boolean disableDefaultServer) { - CacheServerCreation defaultServer = null; if (declarativeCacheServers.size() > 1 && (serverPort != null || serverBindAdd != null)) { throw new RuntimeException( @@ -582,8 +572,11 @@ public class CacheCreation implements InternalCache { .toLocalizedString()); } - if (declarativeCacheServers.isEmpty() && (serverPort != null || serverBindAdd != null) - && (disableDefaultServer == null || !disableDefaultServer)) { + CacheServerCreation defaultServer = null; + boolean hasServerPortOrBindAddress = serverPort != null || serverBindAdd != null; + boolean isDefaultServerDisabled = disableDefaultServer == null || !disableDefaultServer; + if (declarativeCacheServers.isEmpty() && hasServerPortOrBindAddress + && isDefaultServerDisabled) { boolean existingCacheServer = false; List<CacheServer> cacheServers = cache.getCacheServers(); @@ -596,13 +589,13 @@ public class CacheCreation implements InternalCache { } if (!existingCacheServer) { - defaultServer = new CacheServerCreation((GemFireCacheImpl) cache, false); + defaultServer = new CacheServerCreation((InternalCache) cache, false); declarativeCacheServers.add(defaultServer); } } - for (Iterator iter = declarativeCacheServers.iterator(); iter.hasNext();) { - CacheServerCreation declaredCacheServer = (CacheServerCreation) iter.next(); + for (CacheServer declarativeCacheServer : declarativeCacheServers) { + CacheServerCreation declaredCacheServer = (CacheServerCreation) declarativeCacheServer; boolean startServer = true; List<CacheServer> cacheServers = cache.getCacheServers(); @@ -632,8 +625,9 @@ public class CacheCreation implements InternalCache { } try { - if (!impl.isRunning()) + if (!impl.isRunning()) { impl.start(); + } } catch (IOException ex) { throw new GemFireIOException( @@ -646,7 +640,7 @@ public class CacheCreation implements InternalCache { /** * Returns a description of the disk store used by the pdx registry. */ - protected DiskStoreAttributesCreation initializePdxDiskStore(GemFireCacheImpl cache) { + DiskStoreAttributesCreation initializePdxDiskStore(InternalCache cache) { // to fix bug 44271 create the disk store used by the pdx registry first. // If it is using the default disk store we need to create it now. // If the cache has a pool then no need to create disk store. @@ -670,15 +664,14 @@ public class CacheCreation implements InternalCache { return pdxRegDSC; } - protected void createDiskStore(DiskStoreAttributesCreation creation, GemFireCacheImpl cache) { + protected void createDiskStore(DiskStoreAttributesCreation creation, InternalCache cache) { // Don't let the DiskStoreAttributesCreation escape to the user DiskStoreFactory factory = cache.createDiskStoreFactory(creation); factory.create(creation.getName()); } /** - * Returns whether or not this <code>CacheCreation</code> is equivalent to another - * <code>Cache</code>. + * Returns whether or not this {@code CacheCreation} is equivalent to another {@code Cache}. */ public boolean sameAs(Cache other) { boolean sameConfig = other.getLockLease() == this.getLockLease() @@ -720,18 +713,17 @@ public class CacheCreation implements InternalCache { } } - Collection myBridges = this.getCacheServers(); - Collection otherBridges = other.getCacheServers(); + Collection<CacheServer> myBridges = this.getCacheServers(); + Collection<CacheServer> otherBridges = other.getCacheServers(); if (myBridges.size() != otherBridges.size()) { throw new RuntimeException( LocalizedStrings.CacheCreation_CACHESERVERS_SIZE.toLocalizedString()); } - for (Iterator myIter = myBridges.iterator(); myIter.hasNext();) { - CacheServerCreation myBridge = (CacheServerCreation) myIter.next(); + for (CacheServer myBridge1 : myBridges) { + CacheServerCreation myBridge = (CacheServerCreation) myBridge1; boolean found = false; - for (Iterator otherIter = otherBridges.iterator(); otherIter.hasNext();) { - CacheServer otherBridge = (CacheServer) otherIter.next(); + for (CacheServer otherBridge : otherBridges) { if (myBridge.sameAs(otherBridge)) { found = true; break; @@ -744,60 +736,54 @@ public class CacheCreation implements InternalCache { } } - { // compare connection pools - Map m1 = getPools(); - Map m2 = (other instanceof CacheCreation) ? ((CacheCreation) other).getPools() - : PoolManager.getAll(); - int m1Size = m1.size(); - { - // ignore any gateway instances - Iterator it1 = m1.values().iterator(); - while (it1.hasNext()) { - Pool cp = (Pool) it1.next(); - if (((PoolImpl) cp).isUsedByGateway()) { - m1Size--; - } - } - } - int m2Size = m2.size(); - { - // ignore any gateway instances - Iterator it2 = m2.values().iterator(); - while (it2.hasNext()) { - Pool cp = (Pool) it2.next(); - if (((PoolImpl) cp).isUsedByGateway()) { - m2Size--; - } - } + // compare connection pools + Map<String, Pool> m1 = getPools(); + Map<String, Pool> m2 = other instanceof CacheCreation ? ((CacheCreation) other).getPools() + : PoolManager.getAll(); + int m1Size = m1.size(); + + // ignore any gateway instances + for (Pool cp : m1.values()) { + if (((PoolImpl) cp).isUsedByGateway()) { + m1Size--; } - if (m2Size == 1) { - // if it is just the DEFAULT pool then ignore it - Pool p = (Pool) m2.values().iterator().next(); - if (p.getName().equals("DEFAULT")) { - m2Size = 0; - } + } + + int m2Size = m2.size(); + + // ignore any gateway instances + for (Pool cp : m2.values()) { + if (((PoolImpl) cp).isUsedByGateway()) { + m2Size--; } + } - if (m1Size != m2Size) { - throw new RuntimeException("pool sizes differ m1Size=" + m1Size + " m2Size=" + m2Size - + " m1=" + m1.values() + " m2=" + m2.values()); + if (m2Size == 1) { + // if it is just the DEFAULT pool then ignore it + Pool p = (Pool) m2.values().iterator().next(); + if (p.getName().equals("DEFAULT")) { + m2Size = 0; } + } - if (m1Size > 0) { - Iterator it1 = m1.values().iterator(); - while (it1.hasNext()) { - PoolImpl cp = (PoolImpl) it1.next(); - // ignore any gateway instances - if (!(cp).isUsedByGateway()) { - cp.sameAs(m2.get(cp.getName())); - } + if (m1Size != m2Size) { + throw new RuntimeException("pool sizes differ m1Size=" + m1Size + " m2Size=" + m2Size + + " m1=" + m1.values() + " m2=" + m2.values()); + } + + if (m1Size > 0) { + for (Pool pool : m1.values()) { + PoolImpl poolImpl = (PoolImpl) pool; + // ignore any gateway instances + if (!poolImpl.isUsedByGateway()) { + poolImpl.sameAs(m2.get(poolImpl.getName())); } } } // compare disk stores - for (Iterator myIter = diskStores.values().iterator(); myIter.hasNext();) { - DiskStoreAttributesCreation dsac = (DiskStoreAttributesCreation) myIter.next(); + for (DiskStore diskStore : this.diskStores.values()) { + DiskStoreAttributesCreation dsac = (DiskStoreAttributesCreation) diskStore; String name = dsac.getName(); DiskStore ds = other.findDiskStore(name); if (ds == null) { @@ -814,20 +800,21 @@ public class CacheCreation implements InternalCache { } } - Map myNamedAttributes = this.listRegionAttributes(); - Map otherNamedAttributes = other.listRegionAttributes(); + Map<String, RegionAttributes<?, ?>> myNamedAttributes = this.listRegionAttributes(); + Map<String, RegionAttributes<Object, Object>> otherNamedAttributes = + other.listRegionAttributes(); if (myNamedAttributes.size() != otherNamedAttributes.size()) { throw new RuntimeException( LocalizedStrings.CacheCreation_NAMEDATTRIBUTES_SIZE.toLocalizedString()); } - for (Iterator myIter = myNamedAttributes.entrySet().iterator(); myIter.hasNext();) { - Map.Entry myEntry = (Map.Entry) myIter.next(); + for (Object object : myNamedAttributes.entrySet()) { + Entry myEntry = (Entry) object; String myId = (String) myEntry.getKey(); Assert.assertTrue(myEntry.getValue() instanceof RegionAttributesCreation, "Entry value is a " + myEntry.getValue().getClass().getName()); RegionAttributesCreation myAttrs = (RegionAttributesCreation) myEntry.getValue(); - RegionAttributes otherAttrs = other.getRegionAttributes(myId); + RegionAttributes<Object, Object> otherAttrs = other.getRegionAttributes(myId); if (otherAttrs == null) { getLogger().fine("No attributes for " + myId); throw new RuntimeException( @@ -842,19 +829,19 @@ public class CacheCreation implements InternalCache { } } - Collection myRoots = this.roots.values(); - Collection otherRoots = other.rootRegions(); + Collection<Region<?, ?>> myRoots = this.roots.values(); + Collection<Region<?, ?>> otherRoots = other.rootRegions(); if (myRoots.size() != otherRoots.size()) { throw new RuntimeException(LocalizedStrings.CacheCreation_ROOTS_SIZE.toLocalizedString()); } - Iterator it = myRoots.iterator(); - while (it.hasNext()) { - RegionCreation r = (RegionCreation) it.next(); - Region r2 = other.getRegion(r.getName()); - if (r2 == null) { + + for (final Region<?, ?> myRoot : myRoots) { + RegionCreation rootRegion = (RegionCreation) myRoot; + Region<Object, Object> otherRegion = other.getRegion(rootRegion.getName()); + if (otherRegion == null) { throw new RuntimeException( - LocalizedStrings.CacheCreation_NO_ROOT_0.toLocalizedString(r.getName())); - } else if (!r.sameAs(r2)) { + LocalizedStrings.CacheCreation_NO_ROOT_0.toLocalizedString(rootRegion.getName())); + } else if (!rootRegion.sameAs(otherRegion)) { throw new RuntimeException( LocalizedStrings.CacheCreation_REGIONS_DIFFER.toLocalizedString()); } @@ -865,8 +852,10 @@ public class CacheCreation implements InternalCache { // Currently the GemFireCache always has a CacheTransactionManager, // whereas that is not true for CacheTransactionManagerCreation. - List otherTxListeners = Arrays.asList(other.getCacheTransactionManager().getListeners()); - List thisTxListeners = Arrays.asList(getCacheTransactionManager().getListeners()); + List<TransactionListener> otherTxListeners = + Arrays.asList(other.getCacheTransactionManager().getListeners()); + List<TransactionListener> thisTxListeners = + Arrays.asList(getCacheTransactionManager().getListeners()); if (!thisTxListeners.equals(otherTxListeners)) { throw new RuntimeException(LocalizedStrings.CacheCreation_TXLISTENER.toLocalizedString()); @@ -881,88 +870,93 @@ public class CacheCreation implements InternalCache { return true; } - ////////// Inherited methods that don't do anything ////////// - + @Override public void close() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - public void close(boolean keepalive) { + @Override + public void close(boolean keepAlive) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - // public Region createRootRegion(RegionAttributes aRegionAttributes) - // throws RegionExistsException, TimeoutException { - // - // throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); - // } - - // see Cache.isReconnecting() + @Override public boolean isReconnecting() { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - // see Cache.waitUntilReconnected(long, TimeUnit) + @Override public boolean waitUntilReconnected(long time, TimeUnit units) throws InterruptedException { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - // see Cache.stopReconnecting() + @Override public void stopReconnecting() { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - // see Cache.getReconnectedCache() + @Override public Cache getReconnectedCache() { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public LogWriter getLogger() { return this.logWriter; } + @Override public LogWriter getSecurityLogger() { return this.securityLogWriter; } + @Override public LogWriterI18n getLoggerI18n() { return this.logWriter.convertToLogWriterI18n(); } + @Override public LogWriterI18n getSecurityLoggerI18n() { return this.securityLogWriter.convertToLogWriterI18n(); } + @Override public DistributedSystem getDistributedSystem() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public boolean isClosed() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public String getName() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public CancelCriterion getCancelCriterion() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - public org.apache.geode.cache.query.QueryService getQueryService() { - return queryService; + @Override + public QueryService getQueryService() { + return this.queryService; } /** * @since GemFire 6.5 */ - public <K, V> RegionFactory<K, V> createRegionFactory(RegionShortcut atts) { + @Override + public <K, V> RegionFactory<K, V> createRegionFactory(RegionShortcut shortcut) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } /** * @since GemFire 6.5 */ + @Override public <K, V> RegionFactory<K, V> createRegionFactory() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @@ -970,6 +964,7 @@ public class CacheCreation implements InternalCache { /** * @since GemFire 6.5 */ + @Override public <K, V> RegionFactory<K, V> createRegionFactory(String regionAttributesId) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @@ -977,24 +972,27 @@ public class CacheCreation implements InternalCache { /** * @since GemFire 6.5 */ + @Override public <K, V> RegionFactory<K, V> createRegionFactory(RegionAttributes<K, V> regionAttributes) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - public Region createVMRegion(String name, RegionAttributes attrs) + @Override + public Region createVMRegion(String name, RegionAttributes aRegionAttributes) throws RegionExistsException, TimeoutException { - return createRegion(name, attrs); + return createRegion(name, aRegionAttributes); } - public Region createRegion(String name, RegionAttributes attrs) + @Override + public Region createRegion(String name, RegionAttributes aRegionAttributes) throws RegionExistsException, TimeoutException { - if (attrs instanceof RegionAttributesCreation) { - ((RegionAttributesCreation) attrs).inheritAttributes(this); - ((RegionAttributesCreation) attrs).prepareForValidation(); + if (aRegionAttributes instanceof RegionAttributesCreation) { + ((RegionAttributesCreation) aRegionAttributes).inheritAttributes(this); + ((RegionAttributesCreation) aRegionAttributes).prepareForValidation(); } - AttributesFactory.validateAttributes(attrs); + AttributesFactory.validateAttributes(aRegionAttributes); RegionCreation region = new RegionCreation(this, name, null); - region.setAttributes(attrs); + region.setAttributes(aRegionAttributes); this.addRootRegion(region); return region; } @@ -1006,13 +1004,15 @@ public class CacheCreation implements InternalCache { return region; } + @Override public Region getRegion(String path) { - if (path.indexOf('/') != -1) { - throw new UnsupportedOperationException(); + if (path.contains("/")) { + throw new UnsupportedOperationException("Region path '" + path + "' contains '/'"); } - return (Region) this.roots.get(path); + return this.roots.get(path); } + @Override public CacheServer addCacheServer() { return addCacheServer(false); } @@ -1023,31 +1023,193 @@ public class CacheCreation implements InternalCache { return bridge; } - public void addDeclarableProperties(final Declarable declarable, final Properties properties) { + @Override + public void setReadSerialized(final boolean value) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public PdxInstanceFactory createPdxInstanceFactory(final String className, + final boolean expectDomainClass) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void waitForRegisterInterestsInProgress() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + void addDeclarableProperties(final Declarable declarable, final Properties properties) { this.declarablePropertiesMap.put(declarable, properties); } - public List getCacheServers() { + @Override + public List<CacheServer> getCacheServers() { return this.bridgeServers; } - public GatewaySender addGatewaySender(GatewaySender sender) { + @Override + public void addGatewaySender(GatewaySender sender) { this.gatewaySenders.add(sender); - return sender; } - public GatewayReceiver addGatewayReceiver(GatewayReceiver receiver) { + @Override + public void addAsyncEventQueue(final AsyncEventQueueImpl asyncQueue) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void removeAsyncEventQueue(final AsyncEventQueue asyncQueue) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public QueryMonitor getQueryMonitor() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void close(final String reason, final Throwable systemFailureCause, + final boolean keepAlive, final boolean keepDS) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public JmxManagerAdvisor getJmxManagerAdvisor() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public List<Properties> getDeclarableProperties(final String className) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public int getUpTime() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public Set<Region<?, ?>> rootRegions(final boolean includePRAdminRegions) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public Set<LocalRegion> getAllRegions() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public DistributedRegion getRegionInDestroy(final String path) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void addRegionOwnedDiskStore(final DiskStoreImpl dsi) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public DiskStoreMonitor getDiskStoreMonitor() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void close(final String reason, final Throwable optionalCause) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public LocalRegion getRegionByPathForProcessing(final String path) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public List getCacheServersAndGatewayReceiver() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public boolean isGlobalRegionInitializing(final String fullPath) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public DistributionAdvisor getDistributionAdvisor() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void setQueryMonitorRequiredForResourceManager(final boolean required) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public boolean isQueryMonitorDisabledForLowMemory() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public boolean isRESTServiceRunning() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public InternalLogWriter getInternalLogWriter() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public InternalLogWriter getSecurityInternalLogWriter() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public Set<LocalRegion> getApplicationRegions() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void removeGatewaySender(final GatewaySender sender) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public DistributedLockService getGatewaySenderLockService() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public RestAgent getRestAgent() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public Properties getDeclarableProperties(final Declarable declarable) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void setRESTServiceRunning(final boolean isRESTServiceRunning) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void close(final String reason, final boolean keepAlive, final boolean keepDS) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + public void addGatewayReceiver(GatewayReceiver receiver) { this.gatewayReceivers.add(receiver); - return receiver; } - public AsyncEventQueue addAsyncEventQueue(AsyncEventQueue asyncEventQueue) { + public void addAsyncEventQueue(AsyncEventQueue asyncEventQueue) { this.asyncEventQueues.add(asyncEventQueue); - return asyncEventQueue; } + @Override public Set<GatewaySender> getGatewaySenders() { - Set<GatewaySender> tempSet = new HashSet<GatewaySender>(); + Set<GatewaySender> tempSet = new HashSet<>(); for (GatewaySender sender : this.gatewaySenders) { if (!((AbstractGatewaySender) sender).isForInternalUse()) { tempSet.add(sender); @@ -1056,23 +1218,27 @@ public class CacheCreation implements InternalCache { return tempSet; } - public GatewaySender getGatewaySender(String Id) { + @Override + public GatewaySender getGatewaySender(String id) { for (GatewaySender sender : this.gatewaySenders) { - if (sender.getId().equals(Id)) { + if (sender.getId().equals(id)) { return sender; } } return null; } + @Override public Set<GatewayReceiver> getGatewayReceivers() { return this.gatewayReceivers; } + @Override public Set<AsyncEventQueue> getAsyncEventQueues() { return this.asyncEventQueues; } + @Override public AsyncEventQueue getAsyncEventQueue(String id) { for (AsyncEventQueue asyncEventQueue : this.asyncEventQueues) { if (asyncEventQueue.getId().equals(id)) { @@ -1082,17 +1248,15 @@ public class CacheCreation implements InternalCache { return null; } + @Override public void setIsServer(boolean isServer) { this.isServer = isServer; this.hasServer = true; } + @Override public boolean isServer() { - if (!this.isServer) { - return (this.bridgeServers.size() > 0); - } else { - return true; - } + return this.isServer || !this.bridgeServers.isEmpty(); } boolean hasServer() { @@ -1108,10 +1272,11 @@ public class CacheCreation implements InternalCache { return this.hasDynamicRegionFactory; } - public DynamicRegionFactory.Config getDynamicRegionFactoryConfig() { + DynamicRegionFactory.Config getDynamicRegionFactoryConfig() { return this.dynamicRegionFactoryConfig; } + @Override public CacheTransactionManager getCacheTransactionManager() { return this.txMgrCreation; } @@ -1121,6 +1286,7 @@ public class CacheCreation implements InternalCache { * * @since GemFire 4.0 */ + @Override public void setCopyOnRead(boolean copyOnRead) { this.copyOnRead = copyOnRead; this.hasCopyOnRead = true; @@ -1131,6 +1297,7 @@ public class CacheCreation implements InternalCache { * * @since GemFire 4.0 */ + @Override public boolean getCopyOnRead() { return this.copyOnRead; } @@ -1153,17 +1320,17 @@ public class CacheCreation implements InternalCache { /** * @return Context jndi context associated with the Cache. */ + @Override public Context getJNDIContext() { return JNDIInvoker.getJNDIContext(); } - // It's not used - public DiskStore findDiskStore(String storeName) { - String s = storeName; - if (s == null) { - s = GemFireCacheImpl.getDefaultDiskStoreName(); + @Override + public DiskStore findDiskStore(String name) { + if (name == null) { + name = GemFireCacheImpl.getDefaultDiskStoreName(); } - return (DiskStore) this.diskStores.get(s); + return this.diskStores.get(name); } public void addDiskStore(DiskStore ds) { @@ -1175,20 +1342,21 @@ public class CacheCreation implements InternalCache { * * @since GemFire prPersistSprint2 */ - public Collection<DiskStoreImpl> listDiskStores() { + @Override + public Collection<DiskStore> listDiskStores() { return this.diskStores.values(); } - public void setDiskStore(String name, DiskStoreAttributesCreation dsac) { - // Assert.assertTrue(ds instanceof DiskStoreAttributesCreation, - // "Attributes are a " + ds.getClass().getName()); + void setDiskStore(String name, DiskStoreAttributesCreation dsac) { this.diskStores.put(name, dsac); } + @Override public RegionAttributes getRegionAttributes(String id) { - return (RegionAttributes) this.namedRegionAttributes.get(id); + return this.namedRegionAttributes.get(id); } + @Override public void setRegionAttributes(String id, RegionAttributes attrs) { RegionAttributes a = attrs; if (!(a instanceof RegionAttributesCreation)) { @@ -1198,83 +1366,71 @@ public class CacheCreation implements InternalCache { this.regionAttributesNames.add(id); } - public Map listRegionAttributes() { + @Override + public Map<String, RegionAttributes<?, ?>> listRegionAttributes() { return Collections.unmodifiableMap(this.namedRegionAttributes); } + @Override public void loadCacheXml(InputStream is) throws TimeoutException, CacheWriterException, RegionExistsException { - throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public void readyForEvents() { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } - private final PoolManagerImpl pm = new PoolManagerImpl(false); + private final PoolManagerImpl poolManager = new PoolManagerImpl(false); + private volatile FunctionServiceCreation functionServiceCreation; - public Map getPools() { - return this.pm.getMap(); + public Map<String, Pool> getPools() { + return this.poolManager.getMap(); } public PoolFactory createPoolFactory() { - return (new PoolFactoryImpl(this.pm)).setStartDisabled(true); - } - - public Pool findPool(String name) { - return this.pm.find(name); + return new PoolFactoryImpl(this.poolManager).setStartDisabled(true); } - public void setFunctionServiceCreation(FunctionServiceCreation f) { - this.functionServiceCreation = f; - } - - public FunctionServiceCreation getFunctionServiceCreation() { - return this.functionServiceCreation; + public void setFunctionServiceCreation(FunctionServiceCreation functionServiceCreation) { + this.functionServiceCreation = functionServiceCreation; } private volatile boolean hasResourceManager = false; + private volatile ResourceManagerCreation resourceManagerCreation; - public void setResourceManagerCreation(ResourceManagerCreation rmc) { + public void setResourceManagerCreation(ResourceManagerCreation resourceManagerCreation) { this.hasResourceManager = true; - this.resourceManagerCreation = rmc; + this.resourceManagerCreation = resourceManagerCreation; } + @Override public ResourceManagerCreation getResourceManager() { return this.resourceManagerCreation; } - public boolean hasResourceManager() { + boolean hasResourceManager() { return this.hasResourceManager; } - private volatile boolean hasSerializerRegistration = false; private volatile SerializerCreation serializerCreation; - public void setSerializerCreation(SerializerCreation sc) { - this.hasSerializerRegistration = true; - this.serializerCreation = sc; + public void setSerializerCreation(SerializerCreation serializerCreation) { + this.serializerCreation = serializerCreation; } - public SerializerCreation getSerializerCreation() { + SerializerCreation getSerializerCreation() { return this.serializerCreation; } - public boolean hasSerializerCreation() { - return this.hasSerializerRegistration; - } - - public FunctionService getFunctionService() { - throw new UnsupportedOperationException(); - } - public void addBackup(File backup) { this.backups.add(backup); } + @Override public List<File> getBackupFiles() { return Collections.unmodifiableList(this.backups); } @@ -1300,12 +1456,12 @@ public class CacheCreation implements InternalCache { } @Override - public void addRegionListener(final RegionListener l) { + public void addRegionListener(final RegionListener regionListener) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @Override - public void removeRegionListener(final RegionListener l) { + public void removeRegionListener(final RegionListener regionListener) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @@ -1314,36 +1470,39 @@ public class CacheCreation implements InternalCache { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public GatewaySenderFactory createGatewaySenderFactory() { return WANServiceProvider.createGatewaySenderFactory(this); } + @Override public GatewayReceiverFactory createGatewayReceiverFactory() { return WANServiceProvider.createGatewayReceiverFactory(this); } + @Override public AsyncEventQueueFactory createAsyncEventQueueFactory() { return new AsyncEventQueueFactoryImpl(this); } public void setPdxReadSerialized(boolean readSerialized) { - cacheConfig.setPdxReadSerialized(readSerialized); + this.cacheConfig.setPdxReadSerialized(readSerialized); } public void setPdxIgnoreUnreadFields(boolean ignore) { - cacheConfig.setPdxIgnoreUnreadFields(ignore); + this.cacheConfig.setPdxIgnoreUnreadFields(ignore); } public void setPdxSerializer(PdxSerializer serializer) { - cacheConfig.setPdxSerializer(serializer); + this.cacheConfig.setPdxSerializer(serializer); } public void setPdxDiskStore(String diskStore) { - cacheConfig.setPdxDiskStore(diskStore); + this.cacheConfig.setPdxDiskStore(diskStore); } public void setPdxPersistent(boolean persistent) { - cacheConfig.setPdxPersistent(persistent); + this.cacheConfig.setPdxPersistent(persistent); } /** @@ -1353,102 +1512,196 @@ public class CacheCreation implements InternalCache { * * @since GemFire 6.6 */ + @Override public boolean getPdxReadSerialized() { - return cacheConfig.isPdxReadSerialized(); + return this.cacheConfig.isPdxReadSerialized(); } + @Override public PdxSerializer getPdxSerializer() { - return cacheConfig.getPdxSerializer(); + return this.cacheConfig.getPdxSerializer(); } + @Override public String getPdxDiskStore() { - return cacheConfig.getPdxDiskStore(); + return this.cacheConfig.getPdxDiskStore(); } + @Override public boolean getPdxPersistent() { - return cacheConfig.isPdxPersistent(); + return this.cacheConfig.isPdxPersistent(); } + @Override public boolean getPdxIgnoreUnreadFields() { - return cacheConfig.getPdxIgnoreUnreadFields(); + return this.cacheConfig.getPdxIgnoreUnreadFields(); } - + @Override public CacheConfig getCacheConfig() { - return cacheConfig; + return this.cacheConfig; } - /* - * (non-Javadoc) - * - * @see org.apache.geode.cache.Cache#getMembers() - */ + @Override + public boolean getPdxReadSerializedByAnyGemFireServices() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public BackupManager getBackupManager() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void setDeclarativeCacheConfig(final CacheConfig cacheConfig) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void initializePdxRegistry() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void readyDynamicRegionFactory() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void setBackupFiles(final List<File> backups) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void addDeclarableProperties(final Map<Declarable, Properties> mapOfNewDeclarableProps) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override public Set<DistributedMember> getMembers() { - return Collections.EMPTY_SET; + return Collections.emptySet(); } - /* - * (non-Javadoc) - * - * @see org.apache.geode.cache.Cache#getAdminMembers() - */ + @Override public Set<DistributedMember> getAdminMembers() { - return Collections.EMPTY_SET; + return Collections.emptySet(); } - /* - * (non-Javadoc) - * - * @see org.apache.geode.cache.Cache#getMembers(org.apache.geode.cache.Region) - */ + @Override public Set<DistributedMember> getMembers(Region region) { - return Collections.EMPTY_SET; + return Collections.emptySet(); } private Declarable initializer = null; + private Properties initializerProps = null; + @Override public Declarable getInitializer() { return this.initializer; } + @Override public Properties getInitializerProps() { return this.initializerProps; } - public void setInitializer(Declarable d, Properties props) { - this.initializer = d; + @Override + public void setInitializer(Declarable declarable, Properties props) { + this.initializer = declarable; this.initializerProps = props; } - protected void runInitializer() { + @Override + public boolean hasPool() { + return false; + } + + @Override + public DiskStoreFactory createDiskStoreFactory(final DiskStoreAttributes attrs) { + return null; + } + + @Override + public void determineDefaultPool() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public <K, V> Region<K, V> basicCreateRegion(final String name, + final RegionAttributes<K, V> attrs) throws RegionExistsException, TimeoutException { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public BackupManager startBackup(final InternalDistributedMember sender) throws IOException { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public Throwable getDisconnectCause() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void addPartitionedRegion(final PartitionedRegion region) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void removePartitionedRegion(final PartitionedRegion region) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void addDiskStore(final DiskStoreImpl dsi) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public TXEntryStateFactory getTXEntryStateFactory() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public ExpiryTask getEventTrackerTask() { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + @Override + public void removeDiskStore(final DiskStoreImpl diskStore) { + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); + } + + void runInitializer() { if (getInitializer() != null) { getInitializer().init(getInitializerProps()); } } - public void setGatewayConflictResolver(GatewayConflictResolver g) { - this.gatewayConflictResolver = g; + @Override + public void setGatewayConflictResolver(GatewayConflictResolver resolver) { + this.gatewayConflictResolver = resolver; } + @Override public GatewayConflictResolver getGatewayConflictResolver() { return this.gatewayConflictResolver; } + @Override public PdxInstanceFactory createPdxInstanceFactory(String className) { - throw new UnsupportedOperationException(); - } - - public PdxInstanceFactory createPdxInstanceFactory(String className, boolean b) { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public PdxInstance createPdxEnum(String className, String enumName, int enumOrdinal) { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } + @Override public CacheSnapshotService getSnapshotService() { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } /** @@ -1457,16 +1710,16 @@ public class CacheCreation implements InternalCache { */ @Override public ExtensionPoint<Cache> getExtensionPoint() { - return extensionPoint; + return this.extensionPoint; } @Override - public DistributedMember getMyId() { + public InternalDistributedMember getMyId() { return null; } @Override - public Collection<DiskStoreImpl> listDiskStoresIncludingRegionOwned() { + public Collection<DiskStore> listDiskStoresIncludingRegionOwned() { return null; } @@ -1475,9 +1728,9 @@ public class CacheCreation implements InternalCache { return null; } - public QueryService queryService = new org.apache.geode.cache.query.QueryService() { + private final QueryService queryService = new QueryService() { - private Map<String, List> indexes = new HashMap<String, List>(); + private final Map<String, List<Index>> indexes = new HashMap<>(); @Override public Query newQuery(String queryString) { @@ -1505,21 +1758,21 @@ public class CacheCreation implements InternalCache { return createIndex(indexName, indexType, indexedExpression, fromClause, ""); } - @Override /** * Due to not having the full implementation to determine region names etc this implementation * will only match a single region with no alias at this time */ + @Override public Index createIndex(String indexName, IndexType indexType, String indexedExpression, String fromClause, String imports) throws IndexInvalidException, IndexNameConflictException, IndexExistsException, RegionNotFoundException, UnsupportedOperationException { IndexCreationData indexData = new IndexCreationData(indexName); indexData.setFunctionalIndexData(fromClause, indexedExpression, imports); indexData.setIndexType(indexType.toString()); - List indexesForRegion = indexes.get(fromClause); + List<Index> indexesForRegion = this.indexes.get(fromClause); if (indexesForRegion == null) { - indexesForRegion = new ArrayList(); - indexes.put(fromClause, indexesForRegion); + indexesForRegion = new ArrayList<>(); + this.indexes.put(fromClause, indexesForRegion); } indexesForRegion.add(indexData); return indexData; @@ -1560,7 +1813,7 @@ public class CacheCreation implements InternalCache { @Override public Collection<Index> getIndexes(Region<?, ?> region) { - return indexes.get(region.getFullPath()); + return this.indexes.get(region.getFullPath()); } @Override @@ -1659,7 +1912,7 @@ public class CacheCreation implements InternalCache { @Override - public void defineKeyIndex(String indexName, String indexedExpression, String fromClause) + public void defineKeyIndex(String indexName, String indexedExpression, String regionPath) throws RegionNotFoundException { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @@ -1702,7 +1955,7 @@ public class CacheCreation implements InternalCache { @Override public <T extends CacheService> T getService(Class<T> clazz) { - throw new UnsupportedOperationException(); + throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); } @Override @@ -1799,8 +2052,9 @@ public class CacheCreation implements InternalCache { } @Override - public RegionAttributes invokeRegionBefore(final LocalRegion parent, final String name, - final RegionAttributes attrs, final InternalRegionArguments internalRegionArgs) { + public <K, V> RegionAttributes<K, V> invokeRegionBefore(final LocalRegion parent, + final String name, final RegionAttributes<K, V> attrs, + final InternalRegionArguments internalRegionArgs) { throw new UnsupportedOperationException(LocalizedStrings.SHOULDNT_INVOKE.toLocalizedString()); }
http://git-wip-us.apache.org/repos/asf/geode/blob/654d65b5/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlGenerator.java ---------------------------------------------------------------------- diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlGenerator.java b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlGenerator.java index 21431a0..0cee768 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlGenerator.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlGenerator.java @@ -14,9 +14,9 @@ */ package org.apache.geode.internal.cache.xmlcache; +import static javax.xml.XMLConstants.*; import static org.apache.geode.internal.cache.xmlcache.XmlGeneratorUtils.*; import static org.apache.geode.management.internal.configuration.utils.XmlConstants.*; -import static javax.xml.XMLConstants.*; import java.io.File; import java.io.FileWriter; @@ -42,7 +42,6 @@ import javax.xml.transform.TransformerFactory; import javax.xml.transform.sax.SAXSource; import javax.xml.transform.stream.StreamResult; -import org.apache.geode.cache.wan.*; import org.xml.sax.Attributes; import org.xml.sax.ContentHandler; import org.xml.sax.DTDHandler; @@ -93,6 +92,7 @@ import org.apache.geode.cache.client.ClientRegionShortcut; import org.apache.geode.cache.client.Pool; import org.apache.geode.cache.client.PoolFactory; import org.apache.geode.cache.client.PoolManager; +import org.apache.geode.cache.client.internal.InternalClientCache; import org.apache.geode.cache.client.internal.PoolImpl; import org.apache.geode.cache.execute.Function; import org.apache.geode.cache.execute.FunctionService; @@ -103,6 +103,11 @@ import org.apache.geode.cache.query.internal.index.PrimaryKeyIndex; import org.apache.geode.cache.server.CacheServer; import org.apache.geode.cache.server.ServerLoadProbe; import org.apache.geode.cache.util.ObjectSizer; +import org.apache.geode.cache.wan.GatewayEventFilter; +import org.apache.geode.cache.wan.GatewayEventSubstitutionFilter; +import org.apache.geode.cache.wan.GatewayReceiver; +import org.apache.geode.cache.wan.GatewaySender; +import org.apache.geode.cache.wan.GatewayTransportFilter; import org.apache.geode.distributed.Role; import org.apache.geode.internal.Assert; import org.apache.geode.internal.cache.AbstractRegion; @@ -111,6 +116,7 @@ import org.apache.geode.internal.cache.ClientSubscriptionConfigImpl; import org.apache.geode.internal.cache.ColocationHelper; import org.apache.geode.internal.cache.DiskWriteAttributesImpl; import org.apache.geode.internal.cache.GemFireCacheImpl; +import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.internal.cache.LocalRegion; import org.apache.geode.internal.cache.PartitionAttributesImpl; import org.apache.geode.internal.cache.PartitionedRegion; @@ -127,7 +133,6 @@ import org.apache.geode.pdx.ReflectionBasedAutoSerializer; * developed for testing purposes, but it is conceivable that it could be used in the product as * well. * - * * @since GemFire 3.0 */ @SuppressWarnings("deprecation") @@ -139,8 +144,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { /** The content handler to which SAX events are generated */ private ContentHandler handler; - ///////////////////////// Instance Fields //////////////////////// - /** The Cache that we're generating XML for */ final private Cache cache; @@ -151,18 +154,9 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { private boolean includeKeysValues = true; private final boolean generateDefaults; - // final private int cacheLockLease; - // final private int cacheLockTimeout; - // final private int cacheSearchTimeout; - // final private boolean isServer; - // final private boolean copyOnRead; - /** The <code>CacheCreation</code> from which XML is generated */ private final CacheCreation creation; - /////////////////////// Static Methods /////////////////////// - - /** * Examines the given <code>Cache</code> and from it generates XML data that is written to the * given <code>PrintWriter</code>. The schema/dtd for the current version of GemFire is used. @@ -280,9 +274,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { (new CacheXmlGenerator()).generate(pw); } - - //////////////////////// Constructors //////////////////////// - /** * Creates a new <code>CacheXmlGenerator</code> that generates XML for a given <code>Cache</code>. */ @@ -304,7 +295,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { this.creation.startingGenerate(); } else if (cache instanceof GemFireCacheImpl) { - if (((GemFireCacheImpl) cache).isClient()) { + if (((InternalCache) cache).isClient()) { this.creation = new ClientCacheCreation(); if (generateDefaults() || cache.getCopyOnRead()) { this.creation.setCopyOnRead(cache.getCopyOnRead()); @@ -402,8 +393,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { creation.setCopyOnRead(GemFireCacheImpl.DEFAULT_COPY_ON_READ); } - ////////////////////// Instance Methods ////////////////////// - /** * Writes the generator's state to pw */ @@ -563,7 +552,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { if (this.version.compareTo(CacheXmlVersion.GEMFIRE_6_5) >= 0) { if (this.cache instanceof GemFireCacheImpl) { - GemFireCacheImpl gfc = (GemFireCacheImpl) this.cache; + InternalCache gfc = (InternalCache) this.cache; for (DiskStore ds : gfc.listDiskStores()) { generate(ds); } @@ -587,7 +576,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { // we need to exclude them in all versions. // It would be better if CacheCreation could only predefine them // for versions 6.5 and later but that is not easy to do - /* if (this.version.compareTo(CacheXmlVersion.GEMFIRE_6_5) >= 0) */ { + { if (this.creation instanceof ClientCacheCreation) { try { ClientRegionShortcut.valueOf(id); @@ -632,8 +621,8 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { if (!isClientCache) { if (this.version.compareTo(CacheXmlVersion.GEMFIRE_6_5) >= 0) { if (this.cache instanceof GemFireCacheImpl) { - GemFireCacheImpl gfc = (GemFireCacheImpl) this.cache; - for (File file : gfc.getBackupFiles()) { + InternalCache internalCache = (InternalCache) this.cache; + for (File file : internalCache.getBackupFiles()) { generateBackupFile(file); } } else { @@ -646,12 +635,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { if (this.version.compareTo(CacheXmlVersion.GEMFIRE_6_6) >= 0) { generateInitializer(); } - } else { - if (handler instanceof LexicalHandler) { - // LexicalHandler lex = (LexicalHandler) handler; - // lex.comment(comment.toCharArray(), 0, comment.length()); - } - } if (cache instanceof Extensible) { @@ -670,12 +653,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { private void generatePdx() throws SAXException { AttributesImpl atts = new AttributesImpl(); - CacheConfig config; - if (this.cache instanceof CacheCreation) { - config = ((CacheCreation) cache).getCacheConfig(); - } else { - config = ((GemFireCacheImpl) cache).getCacheConfig(); - } + CacheConfig config = ((InternalCache) cache).getCacheConfig(); if (config.pdxReadSerializedUserSet) { if (generateDefaults() || this.cache.getPdxReadSerialized()) atts.addAttribute("", "", READ_SERIALIZED, "", @@ -929,7 +907,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { * * @since GemFire 5.7 */ - private void generateClientHaQueue(CacheServer bridge) throws SAXException { AttributesImpl atts = new AttributesImpl(); ClientSubscriptionConfigImpl csc = @@ -1006,11 +983,10 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { String.valueOf(bridge.getMaximumMessageCount())); if (generateDefaults() - || bridge.getMessageTimeToLive() != CacheServer.DEFAULT_MESSAGE_TIME_TO_LIVE) + || bridge.getMessageTimeToLive() != CacheServer.DEFAULT_MESSAGE_TIME_TO_LIVE) { atts.addAttribute("", "", MESSAGE_TIME_TO_LIVE, "", String.valueOf(bridge.getMessageTimeToLive())); - - + } if (this.version.compareTo(CacheXmlVersion.GEMFIRE_5_7) < 0) { return; @@ -1063,8 +1039,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { if (generateDefaults() || !probe.equals(CacheServer.DEFAULT_LOAD_PROBE)) { generate(LOAD_PROBE, probe); } - - } if (this.version.compareTo(CacheXmlVersion.GEMFIRE_5_7) >= 0) { handler.endElement("", "", CACHE_SERVER); @@ -1184,8 +1158,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { /** * Compare regions by name - * - * */ class RegionComparator implements Comparator { public int compare(Object o1, Object o2) { @@ -1197,7 +1169,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } } - /** * Generates XML for the given connection pool * @@ -1598,7 +1569,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } private void generateGatewayEventFilter(GatewayEventFilter gef) throws SAXException { - handler.startElement("", GATEWAY_EVENT_FILTER, GATEWAY_EVENT_FILTER, EMPTY); String className = gef.getClass().getName(); @@ -1614,7 +1584,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } private void generateGatewayTransportFilter(GatewayTransportFilter gef) throws SAXException { - handler.startElement("", GATEWAY_TRANSPORT_FILTER, GATEWAY_TRANSPORT_FILTER, EMPTY); String className = gef.getClass().getName(); @@ -1646,24 +1615,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } handler.endElement("", GATEWAY_EVENT_SUBSTITUTION_FILTER, GATEWAY_EVENT_SUBSTITUTION_FILTER); } - // - // private void generateGatewayEventListener(GatewayEventListener gef) - // throws SAXException { - // - // handler.startElement("", GATEWAY_EVENT_LISTENER, GATEWAY_EVENT_LISTENER, - // EMPTY); - // String className = gef.getClass().getName(); - // - // handler.startElement("", CLASS_NAME, CLASS_NAME, EMPTY); - // handler.characters(className.toCharArray(), 0, className.length()); - // handler.endElement("", CLASS_NAME, CLASS_NAME); - // Properties props = null; - // if (gef instanceof Declarable2) { - // props = ((Declarable2)gef).getConfig(); - // generate(props, null); - // } - // handler.endElement("", GATEWAY_EVENT_LISTENER, GATEWAY_EVENT_LISTENER); - // } /** * Generates XML for a given region @@ -1996,8 +1947,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } } - - if ((!(attrs instanceof RegionAttributesCreation) || ((RegionAttributesCreation) attrs).hasStatisticsEnabled())) { if (generateDefaults() || attrs.getStatisticsEnabled()) @@ -2230,7 +2179,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { * Generates XML for a <code>CacheCallback</code> */ private void generate(String kind, Object callback) throws SAXException { - if (callback == null) { return; } @@ -2248,7 +2196,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } else if (callback instanceof ReflectionBasedAutoSerializer) { props = ((ReflectionBasedAutoSerializer) callback).getConfig(); } else if (callback instanceof Declarable && cache instanceof GemFireCacheImpl) { - props = ((GemFireCacheImpl) cache).getDeclarableProperties((Declarable) callback); + props = ((InternalCache) cache).getDeclarableProperties((Declarable) callback); } generate(props, null); @@ -2256,7 +2204,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } private void generate(String kind, Declarable d, Properties p) throws SAXException { - if (d == null) { return; } @@ -2274,7 +2221,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } private void generate(EvictionAttributes ea) throws SAXException { - EvictionAction eAction = ea.getAction(); if (eAction.isNone()) { return; @@ -2366,7 +2312,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { * Generates XML for <code>SubscriptionAttributes</code> */ private void generate(SubscriptionAttributes attrs) throws SAXException { - if (attrs == null) { return; } @@ -2394,7 +2339,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { * Generates XML for a <code>PartitionAttributes</code> */ private void generate(PartitionAttributes pa) throws SAXException { - AttributesImpl atts = new AttributesImpl(); if (generateDefaults() || pa.getRedundantCopies() != 0) @@ -2530,7 +2474,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } } - /** * Generates XML for a <code>DiskWriteAttributes</code> */ @@ -2631,29 +2574,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { if (d instanceof Declarable2) { Properties props = ((Declarable2) d).getConfig(); generate(props, null); - // for (Iterator iter = props.entrySet().iterator(); - // iter.hasNext(); ) { - // Map.Entry entry = (Map.Entry) iter.next(); - // String name = (String) entry.getKey(); - // Object value = entry.getValue(); - // - // AttributesImpl atts = new AttributesImpl(); - // atts.addAttribute("", "", NAME, "", name); - // - // handler.startElement("", PARAMETER, PARAMETER, atts); - // - // if (value instanceof String) { - // generate((String) value); - // - // } else if (value instanceof Declarable) { - // generate((Declarable) value); - // - // } else { - // // Ignore it - // } - // - // handler.endElement("", PARAMETER, PARAMETER); - // } } if (includeDeclarable) { @@ -2705,7 +2625,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } } - private void generate(final Properties props, String elementName) throws SAXException { if (props == null || props.isEmpty()) { return; @@ -2762,8 +2681,6 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { return this; } - ////////// Inherited methods that don't do anything ////////// - public boolean getFeature(String name) throws SAXNotRecognizedException, SAXNotSupportedException { return false; @@ -2771,7 +2688,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { public void setFeature(String name, boolean value) throws SAXNotRecognizedException, SAXNotSupportedException { - + // nothing } public Object getProperty(String name) @@ -2782,11 +2699,11 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException { - + // nothing } public void setEntityResolver(EntityResolver resolver) { - + // nothing } public EntityResolver getEntityResolver() { @@ -2794,7 +2711,7 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } public void setDTDHandler(DTDHandler handler) { - + // nothing } public DTDHandler getDTDHandler() { @@ -2802,14 +2719,13 @@ public class CacheXmlGenerator extends CacheXml implements XMLReader { } public void setErrorHandler(ErrorHandler handler) { - + // nothing } public void parse(String systemId) throws IOException, SAXException { - + // nothing } - /** * Used by gemfire build.xml to generate a default gemfire.properties for use by applications. See * bug 30995 for the feature request. http://git-wip-us.apache.org/repos/asf/geode/blob/654d65b5/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlParser.java ---------------------------------------------------------------------- diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlParser.java b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlParser.java index fd8fb2a..04ab020 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlParser.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/xmlcache/CacheXmlParser.java @@ -108,7 +108,7 @@ import org.apache.geode.internal.cache.DiskStoreAttributes; import org.apache.geode.internal.cache.DiskWriteAttributesImpl; import org.apache.geode.internal.cache.EvictionAttributesImpl; import org.apache.geode.internal.cache.FixedPartitionAttributesImpl; -import org.apache.geode.internal.cache.GemFireCacheImpl; +import org.apache.geode.internal.cache.InternalCache; import org.apache.geode.internal.cache.PartitionAttributesImpl; import org.apache.geode.internal.cache.PartitionedRegionHelper; import org.apache.geode.internal.cache.lru.LRUCapacityController; @@ -318,7 +318,6 @@ public class CacheXmlParser extends CacheXml implements ContentHandler { } } - ////////////////////// Instance Methods ////////////////////// /** * Returns the {@link CacheCreation} generated by this parser. */ @@ -328,12 +327,8 @@ public class CacheXmlParser extends CacheXml implements ContentHandler { /** * Creates cache artifacts ({@link Cache}s, etc.) based upon the XML parsed by this parser. - * - * @throws TimeoutException - * @throws CacheWriterException - * @throws RegionExistsException */ - public void create(GemFireCacheImpl cache) + public void create(InternalCache cache) throws TimeoutException, GatewayException, CacheWriterException, RegionExistsException { if (this.cache == null) { String s = "A cache or client-cache element is required";
