From 8ae81f85021e49d6e0c5b8c1c813e9f3c6ebbe21 Mon Sep 17 00:00:00 2001 From: Tristan Tarrant Date: Mon, 5 Nov 2018 17:47:04 +0100 Subject: [PATCH] ISPN-9679 Move property replacement to the XMLStreamReader --- .../configuration/parsing/Parser.java | 95 +++++++++---------- .../configuration/parsing/ParserRegistry.java | 20 +++- .../parsing/SecurityActions.java | 32 +++++++ .../parsing/XMLExtendedStreamReaderImpl.java | 16 +++- .../StringPropertyReplacementTest.java | 13 +-- .../configuration/XmlFileParsingTest.java | 4 +- .../module/MyParserExtension.java | 4 +- .../parsing/UnifiedXmlFileParsingTest.java | 5 +- .../test/fwk/TestCacheManagerFactory.java | 2 +- .../CounterConfigurationParser.java | 11 +-- .../CLInterfaceLoaderConfigurationParser.java | 4 +- .../JdbcStoreConfigurationParser.java | 10 +- .../JpaStoreConfigurationParser.java | 3 +- .../LevelDBStoreConfigurationParser.java | 7 +- .../RemoteStoreConfigurationParser.java | 18 ++-- .../RestStoreConfigurationParser.java | 8 +- .../RocksDBStoreConfigurationParser.java | 7 +- ...SoftIndexFileStoreConfigurationParser.java | 4 +- .../infinispan/tools/config/v6/Parser60.java | 75 ++++++++------- .../jdbc/JdbcStoreConfigurationParser60.java | 18 ++-- .../v6/jpa/JpaStoreConfigurationParser60.java | 3 +- .../LevelDBStoreConfigurationParser60.java | 6 +- .../RemoteStoreConfigurationParser60.java | 10 +- .../rest/RestStoreConfigurationParser60.java | 6 +- .../tools/ConfigurationConverterTest.java | 5 +- 25 files changed, 207 insertions(+), 179 deletions(-) create mode 100644 core/src/main/java/org/infinispan/configuration/parsing/SecurityActions.java diff --git a/core/src/main/java/org/infinispan/configuration/parsing/Parser.java b/core/src/main/java/org/infinispan/configuration/parsing/Parser.java index be3f2dc76fb9..9bd102285107 100644 --- a/core/src/main/java/org/infinispan/configuration/parsing/Parser.java +++ b/core/src/main/java/org/infinispan/configuration/parsing/Parser.java @@ -1,6 +1,5 @@ package org.infinispan.configuration.parsing; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; import static org.infinispan.factories.KnownComponentNames.ASYNC_NOTIFICATION_EXECUTOR; import static org.infinispan.factories.KnownComponentNames.ASYNC_OPERATIONS_EXECUTOR; import static org.infinispan.factories.KnownComponentNames.ASYNC_TRANSPORT_EXECUTOR; @@ -136,7 +135,7 @@ private void parseSerialization(final XMLExtendedStreamReader reader, final Conf GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -169,7 +168,7 @@ private void parseAdvancedExternalizers(final XMLExtendedStreamReader reader, fi Integer id = null; ParseUtils.requireAttributes(reader, Attribute.CLASS.getLocalName()); for (int i = 0; i < attributes; i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLASS: { @@ -251,7 +250,7 @@ private void parseBlockingBoundedQueueThreadPool(XMLExtendedStreamReader reader, for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -304,7 +303,7 @@ private void parseScheduledThreadPool(XMLExtendedStreamReader reader, Configurat String threadFactoryName = null; for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -340,7 +339,7 @@ private void parseCachedThreadPool(XMLExtendedStreamReader reader, Configuration String threadFactoryName = null; for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -378,7 +377,7 @@ private void parseThreadFactory(XMLExtendedStreamReader reader) throws XMLStream for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -414,7 +413,7 @@ private void parseJGroups(XMLExtendedStreamReader reader, ConfigurationBuilderHo Transport transport = null; for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -452,7 +451,7 @@ private void parseStackFile(XMLExtendedStreamReader reader, ConfigurationBuilder String stackName = null; for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -483,7 +482,7 @@ private void parseContainer(XMLExtendedStreamReader reader, ConfigurationBuilder } for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -670,7 +669,7 @@ private void parseGlobalSecurity(XMLExtendedStreamReader reader, ConfigurationBu private void parseGlobalAuthorization(XMLExtendedStreamReader reader, ConfigurationBuilderHolder holder) throws XMLStreamException { GlobalAuthorizationConfigurationBuilder builder = holder.getGlobalConfigurationBuilder().security().authorization().enable(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AUDIT_LOGGER: { @@ -763,7 +762,7 @@ private void parseJmx(XMLExtendedStreamReader reader, ConfigurationBuilderHolder GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case JMX_DOMAIN: { @@ -802,7 +801,7 @@ private void parseTransport(XMLExtendedStreamReader reader, ConfigurationBuilder } TransportConfigurationBuilder transport = holder.getGlobalConfigurationBuilder().transport(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case STACK: { @@ -1187,7 +1186,7 @@ private void parseGlobalState(XMLExtendedStreamReader reader, ConfigurationBuild } private String parseGlobalStatePath(XMLExtendedStreamReader reader) throws XMLStreamException { - String path = replaceProperties(ParseUtils.requireAttributes(reader, Attribute.PATH.getLocalName())[0]); + String path = ParseUtils.requireAttributes(reader, Attribute.PATH.getLocalName())[0]; for (int i = 0; i < reader.getAttributeCount(); i++) { Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -1234,7 +1233,7 @@ private void parseLocalCache(XMLExtendedStreamReader reader, ConfigurationBuilde ConfigurationBuilder builder = getConfigurationBuilder(holder, name, template, configuration); builder.clustering().cacheMode(CacheMode.LOCAL); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); this.parseCacheAttribute(reader, i, attribute, value, builder); } @@ -1318,7 +1317,7 @@ private void parsePartitionHandling(XMLExtendedStreamReader reader, Configuratio ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); PartitionHandlingConfigurationBuilder ph = builder.clustering().partitionHandling(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: { @@ -1347,7 +1346,7 @@ private void parsePartitionHandling(XMLExtendedStreamReader reader, Configuratio private void parseBackup(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { BackupConfigurationBuilder backup = builder.sites().addBackup(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SITE: { @@ -1408,7 +1407,7 @@ private void parseBackup(XMLExtendedStreamReader reader, ConfigurationBuilder bu private void parseTakeOffline(XMLExtendedStreamReader reader, BackupConfigurationBuilder backup) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case TAKE_BACKUP_OFFLINE_AFTER_FAILURES: { @@ -1429,7 +1428,7 @@ private void parseTakeOffline(XMLExtendedStreamReader reader, BackupConfiguratio private void parseXSiteStateTransfer(XMLExtendedStreamReader reader, BackupConfigurationBuilder backup) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CHUNK_SIZE: @@ -1454,7 +1453,7 @@ private void parseXSiteStateTransfer(XMLExtendedStreamReader reader, BackupConfi private void parseBackupFor(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { builder.sites().backupFor().reset(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case REMOTE_CACHE: { @@ -1492,7 +1491,7 @@ private void parseCacheSecurity(XMLExtendedStreamReader reader, ConfigurationBui private void parseCacheAuthorization(XMLExtendedStreamReader reader, AuthorizationConfigurationBuilder authzBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: { @@ -1602,7 +1601,7 @@ private void parseDataContainer(final XMLExtendedStreamReader reader, final Conf ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLASS: @@ -1665,7 +1664,7 @@ private void parseOffHeapMemoryAttributes(final XMLExtendedStreamReader reader, MemoryConfigurationBuilder memoryBuilder = holder.getCurrentConfigurationBuilder().memory(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SIZE: @@ -1691,7 +1690,7 @@ private void parseObjectMemoryAttributes(final XMLExtendedStreamReader reader, f MemoryConfigurationBuilder memoryBuilder = holder.getCurrentConfigurationBuilder().memory(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SIZE: @@ -1711,7 +1710,7 @@ private void parseBinaryMemoryAttributes(final XMLExtendedStreamReader reader, f MemoryConfigurationBuilder memoryBuilder = holder.getCurrentConfigurationBuilder().memory(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SIZE: @@ -1738,7 +1737,7 @@ private void parseStoreAsBinary(final XMLExtendedStreamReader reader, final Conf builder.memory().storageType(StorageType.BINARY); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case STORE_KEYS_AS_BINARY: @@ -1763,7 +1762,7 @@ private void parseCompatibility(XMLExtendedStreamReader reader, ConfigurationBui builder.compatibility().enable(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case MARSHALLER_CLASS: @@ -1814,7 +1813,7 @@ private void parseInterceptor(XMLExtendedStreamReader reader, ConfigurationBuild InterceptorConfigurationBuilder interceptorBuilder = builder.customInterceptors().addInterceptor(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AFTER: @@ -1842,7 +1841,7 @@ private void parseInterceptor(XMLExtendedStreamReader reader, ConfigurationBuild protected void parseLocking(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ISOLATION: { @@ -1882,7 +1881,7 @@ protected void parseTransaction(XMLExtendedStreamReader reader, ConfigurationBui } } for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case STOP_TIMEOUT: { @@ -1962,7 +1961,7 @@ protected void parseDataType(XMLExtendedStreamReader reader, ConfigurationBuilde private void parseContentType(XMLExtendedStreamReader reader, ConfigurationBuilderHolder holder, ContentTypeConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case MEDIA_TYPE: @@ -1977,7 +1976,7 @@ private void parseContentType(XMLExtendedStreamReader reader, ConfigurationBuild private void parseEviction(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { log.elementDeprecatedUseOther(Element.EVICTION, Element.MEMORY); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case STRATEGY: @@ -2000,7 +1999,7 @@ private void parseEviction(XMLExtendedStreamReader reader, ConfigurationBuilder private void parseExpiration(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case MAX_IDLE: { @@ -2033,7 +2032,7 @@ private void parseInvalidationCache(XMLExtendedStreamReader reader, Configuratio CacheMode baseCacheMode = configuration == null ? CacheMode.INVALIDATION_SYNC : builder.clustering().cacheMode(); builder.clustering().cacheMode(baseCacheMode); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case KEY_PARTITIONER: { @@ -2128,7 +2127,7 @@ private void parseReplicatedCache(XMLExtendedStreamReader reader, ConfigurationB CacheMode baseCacheMode = configuration == null ? CacheMode.REPL_SYNC : builder.clustering().cacheMode(); builder.clustering().cacheMode(baseCacheMode); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); parseSegmentedCacheAttribute(reader, i, attribute, value, builder, holder.getClassLoader(), baseCacheMode); } @@ -2146,7 +2145,7 @@ private void parseReplicatedCache(XMLExtendedStreamReader reader, ConfigurationB private void parseStateTransfer(XMLExtendedStreamReader reader, ConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AWAIT_INITIAL_TRANSFER: { @@ -2183,7 +2182,7 @@ private void parseDistributedCache(XMLExtendedStreamReader reader, Configuration CacheMode baseCacheMode = configuration == null ? CacheMode.DIST_SYNC : builder.clustering().cacheMode(); builder.clustering().cacheMode(baseCacheMode); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case OWNERS: { @@ -2232,7 +2231,7 @@ private void parseGroups(final XMLExtendedStreamReader reader, final Configurati ParseUtils.requireSingleAttribute(reader, "enabled"); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -2270,7 +2269,7 @@ private void parseScatteredCache(XMLExtendedStreamReader reader, ConfigurationBu CacheMode baseCacheMode = configuration == null ? CacheMode.SCATTERED_SYNC : builder.clustering().cacheMode(); builder.clustering().cacheMode(baseCacheMode); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case INVALIDATION_BATCH_SIZE: { @@ -2317,7 +2316,7 @@ private void parsePersistence(final XMLExtendedStreamReader reader, final Config ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PASSIVATION: @@ -2364,7 +2363,7 @@ private void parseClusterLoader(XMLExtendedStreamReader reader, ConfigurationBui ClusterLoaderConfigurationBuilder cclb = builder.persistence().addClusterLoader(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { @@ -2382,7 +2381,7 @@ private void parseClusterLoader(XMLExtendedStreamReader reader, ConfigurationBui protected void parseFileStore(XMLExtendedStreamReader reader, ConfigurationBuilderHolder holder) throws XMLStreamException { SingleFileStoreConfigurationBuilder storeBuilder = holder.getCurrentConfigurationBuilder().persistence().addSingleFileStore(); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case RELATIVE_TO: { @@ -2413,7 +2412,7 @@ protected void parseFileStore(XMLExtendedStreamReader reader, ConfigurationBuild * This method is public static so that it can be reused by custom cache store/loader configuration parsers */ public static void parseStoreAttribute(XMLExtendedStreamReader reader, int index, AbstractStoreConfigurationBuilder storeBuilder) throws XMLStreamException { - String value = replaceProperties(reader.getAttributeValue(index)); + String value = reader.getAttributeValue(index); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(index)); switch (attribute) { case SHARED: { @@ -2483,7 +2482,7 @@ public static void parseStoreElement(XMLExtendedStreamReader reader, StoreConfig public static void parseStoreWriteBehind(XMLExtendedStreamReader reader, AsyncStoreConfigurationBuilder storeBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FLUSH_LOCK_TIMEOUT: { @@ -2539,7 +2538,7 @@ private void parseCustomStore(final XMLExtendedStreamReader reader, final Config for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLASS: @@ -2634,7 +2633,7 @@ private void parseIndexing(final XMLExtendedStreamReader reader, final Configura ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case INDEX: @@ -2694,7 +2693,7 @@ private static void parseProperty(XMLExtendedStreamReader reader, Properties pro String key = null; String propertyValue; for (int i = 0; i < attributes; i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case NAME: { @@ -2706,7 +2705,7 @@ private static void parseProperty(XMLExtendedStreamReader reader, Properties pro } } } - propertyValue = replaceProperties(reader.getElementText()); + propertyValue = reader.getElementText(); properties.setProperty(key, propertyValue); } diff --git a/core/src/main/java/org/infinispan/configuration/parsing/ParserRegistry.java b/core/src/main/java/org/infinispan/configuration/parsing/ParserRegistry.java index bea62891e395..928ea509f721 100644 --- a/core/src/main/java/org/infinispan/configuration/parsing/ParserRegistry.java +++ b/core/src/main/java/org/infinispan/configuration/parsing/ParserRegistry.java @@ -17,6 +17,7 @@ import java.util.Collection; import java.util.Collections; import java.util.Map; +import java.util.Properties; import java.util.ServiceLoader; import java.util.concurrent.ConcurrentMap; @@ -58,18 +59,20 @@ public class ParserRegistry implements NamespaceMappingParser { private static final Log log = LogFactory.getLog(ParserRegistry.class); private final WeakReference cl; private final ConcurrentMap parserMappings; + private final Properties properties; public ParserRegistry() { this(Thread.currentThread().getContextClassLoader()); } public ParserRegistry(ClassLoader classLoader) { - this(classLoader, false); + this(classLoader, false, SecurityActions.getSystemProperties()); } - public ParserRegistry(ClassLoader classLoader, boolean defaultOnly) { + public ParserRegistry(ClassLoader classLoader, boolean defaultOnly, Properties properties) { this.parserMappings = CollectionFactory.makeConcurrentMap(); this.cl = new WeakReference<>(classLoader); + this.properties = properties; Collection parsers = ServiceFinder.load(ConfigurationParser.class, cl.get(), ParserRegistry.class.getClassLoader()); for (ConfigurationParser parser : parsers) { @@ -130,10 +133,19 @@ public ConfigurationBuilderHolder parse(InputStream is) { } } + private void setIfSupported(final XMLInputFactory inputFactory, final String property, final Object value) { + if (inputFactory.isPropertySupported(property)) { + inputFactory.setProperty(property, value); + } + } + public void parse(InputStream is, ConfigurationBuilderHolder holder) throws XMLStreamException { BufferedInputStream input = new BufferedInputStream(is); - XMLStreamReader subReader = XMLInputFactory.newInstance().createXMLStreamReader(input); - XMLExtendedStreamReader reader = new XMLExtendedStreamReaderImpl(this, subReader); + XMLInputFactory factory = XMLInputFactory.newInstance(); + setIfSupported(factory, XMLInputFactory.IS_VALIDATING, Boolean.FALSE); + setIfSupported(factory, XMLInputFactory.SUPPORT_DTD, Boolean.FALSE); + XMLStreamReader subReader = factory.createXMLStreamReader(input); + XMLExtendedStreamReader reader = new XMLExtendedStreamReaderImpl(this, subReader, properties); parse(reader, holder); subReader.close(); // Fire all parsingComplete events if any diff --git a/core/src/main/java/org/infinispan/configuration/parsing/SecurityActions.java b/core/src/main/java/org/infinispan/configuration/parsing/SecurityActions.java new file mode 100644 index 000000000000..602b64817888 --- /dev/null +++ b/core/src/main/java/org/infinispan/configuration/parsing/SecurityActions.java @@ -0,0 +1,32 @@ +package org.infinispan.configuration.parsing; + +import java.security.AccessController; +import java.security.PrivilegedAction; +import java.util.Properties; + +import org.infinispan.security.Security; + +/** + * SecurityActions for the org.infinispan.configuration.parsing + * + * Do not move. Do not change class and method visibility to avoid being called from other + * {@link java.security.CodeSource}s, thus granting privilege escalation to external code. + * + * @author Tristan Tarrant + * @since 10.0 + */ +final class SecurityActions { + private static T doPrivileged(PrivilegedAction action) { + if (System.getSecurityManager() != null) { + return AccessController.doPrivileged(action); + } else { + return Security.doPrivileged(action); + } + } + + static Properties getSystemProperties() { + return doPrivileged(() -> System.getProperties()); + } + + +} diff --git a/core/src/main/java/org/infinispan/configuration/parsing/XMLExtendedStreamReaderImpl.java b/core/src/main/java/org/infinispan/configuration/parsing/XMLExtendedStreamReaderImpl.java index f51a08687bfa..c6c062fcf167 100644 --- a/core/src/main/java/org/infinispan/configuration/parsing/XMLExtendedStreamReaderImpl.java +++ b/core/src/main/java/org/infinispan/configuration/parsing/XMLExtendedStreamReaderImpl.java @@ -2,6 +2,7 @@ import java.util.ArrayDeque; import java.util.Deque; +import java.util.Properties; import javax.xml.namespace.NamespaceContext; import javax.xml.namespace.QName; @@ -9,6 +10,8 @@ import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamReader; +import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; + /** * @author David M. Lloyd * @author Tristan Tarrant @@ -20,10 +23,12 @@ final class XMLExtendedStreamReaderImpl implements XMLExtendedStreamReader { private final XMLStreamReader streamReader; private final Deque stack = new ArrayDeque(); private Schema schema; + private Properties properties; - XMLExtendedStreamReaderImpl(final NamespaceMappingParser parser, final XMLStreamReader streamReader) { + XMLExtendedStreamReaderImpl(final NamespaceMappingParser parser, final XMLStreamReader streamReader, Properties properties) { this.parser = parser; this.streamReader = streamReader; + this.properties = properties; stack.push(new Context()); } @@ -79,7 +84,8 @@ public void require(final int type, final String namespaceURI, final String loca @Override public String getElementText() throws XMLStreamException { - return streamReader.getElementText().trim(); + String text = streamReader.getElementText().trim(); + return replaceProperties(text, properties); } @Override @@ -139,7 +145,8 @@ public boolean isWhiteSpace() { @Override public String getAttributeValue(final String namespaceURI, final String localName) { - return streamReader.getAttributeValue(namespaceURI, localName); + String value = streamReader.getAttributeValue(namespaceURI, localName); + return replaceProperties(value, properties); } @Override @@ -174,7 +181,8 @@ public String getAttributeType(final int index) { @Override public String getAttributeValue(final int index) { - return streamReader.getAttributeValue(index); + String value = streamReader.getAttributeValue(index); + return replaceProperties(value, properties); } @Override diff --git a/core/src/test/java/org/infinispan/configuration/StringPropertyReplacementTest.java b/core/src/test/java/org/infinispan/configuration/StringPropertyReplacementTest.java index 6624c395c630..bb9fb656cbdb 100644 --- a/core/src/test/java/org/infinispan/configuration/StringPropertyReplacementTest.java +++ b/core/src/test/java/org/infinispan/configuration/StringPropertyReplacementTest.java @@ -24,12 +24,13 @@ public class StringPropertyReplacementTest extends AbstractInfinispanTest { protected ConfigurationBuilderHolder parse() throws Exception { - System.setProperty("StringPropertyReplacementTest.asyncListenerMaxThreads","2"); - System.setProperty("StringPropertyReplacementTest.persistenceMaxThreads","4"); - System.setProperty("StringPropertyReplacementTest.IsolationLevel","READ_COMMITTED"); - System.setProperty("StringPropertyReplacementTest.writeSkewCheck","true"); - System.setProperty("StringPropertyReplacementTest.SyncCommitPhase","true"); - ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true); + Properties properties = new Properties(); + properties.setProperty("StringPropertyReplacementTest.asyncListenerMaxThreads","2"); + properties.setProperty("StringPropertyReplacementTest.persistenceMaxThreads","4"); + properties.setProperty("StringPropertyReplacementTest.IsolationLevel","READ_COMMITTED"); + properties.setProperty("StringPropertyReplacementTest.writeSkewCheck","true"); + properties.setProperty("StringPropertyReplacementTest.SyncCommitPhase","true"); + ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true, properties); return parserRegistry.parseFile("configs/string-property-replaced.xml"); } diff --git a/core/src/test/java/org/infinispan/configuration/XmlFileParsingTest.java b/core/src/test/java/org/infinispan/configuration/XmlFileParsingTest.java index 0e91754144f4..7545a8b99be2 100644 --- a/core/src/test/java/org/infinispan/configuration/XmlFileParsingTest.java +++ b/core/src/test/java/org/infinispan/configuration/XmlFileParsingTest.java @@ -18,6 +18,7 @@ import org.infinispan.commons.CacheConfigurationException; import org.infinispan.commons.equivalence.AnyEquivalence; import org.infinispan.commons.executors.BlockingThreadPoolExecutorFactory; +import org.infinispan.commons.jmx.PerThreadMBeanServerLookup; import org.infinispan.commons.marshall.AdvancedExternalizer; import org.infinispan.commons.marshall.jboss.GenericJBossMarshaller; import org.infinispan.configuration.cache.AbstractStoreConfiguration; @@ -37,7 +38,6 @@ import org.infinispan.eviction.EvictionType; import org.infinispan.factories.threads.DefaultThreadFactory; import org.infinispan.interceptors.FooInterceptor; -import org.infinispan.commons.jmx.PerThreadMBeanServerLookup; import org.infinispan.marshall.AdvancedExternalizerTest; import org.infinispan.marshall.TestObjectStreamMarshaller; import org.infinispan.marshall.core.MarshalledEntry; @@ -66,7 +66,7 @@ public void testFailOnUnexpectedConfigurationFile() throws IOException { } public void testNamedCacheFile() throws IOException { - ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true); + ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true, System.getProperties()); ConfigurationBuilderHolder holder = parserRegistry.parseFile("configs/named-cache-test.xml"); assertNamedCacheFile(holder, false); } diff --git a/core/src/test/java/org/infinispan/configuration/module/MyParserExtension.java b/core/src/test/java/org/infinispan/configuration/module/MyParserExtension.java index ef8cd647bcb8..0fa4d5e6b4b2 100644 --- a/core/src/test/java/org/infinispan/configuration/module/MyParserExtension.java +++ b/core/src/test/java/org/infinispan/configuration/module/MyParserExtension.java @@ -1,7 +1,5 @@ package org.infinispan.configuration.module; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamException; import org.infinispan.configuration.cache.ConfigurationBuilder; @@ -45,7 +43,7 @@ private void parseSampleElement(XMLExtendedStreamReader reader, MyModuleConfigur throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SAMPLE_ATTRIBUTE: { diff --git a/core/src/test/java/org/infinispan/configuration/parsing/UnifiedXmlFileParsingTest.java b/core/src/test/java/org/infinispan/configuration/parsing/UnifiedXmlFileParsingTest.java index 5bee04cbabbc..a6214cc56823 100644 --- a/core/src/test/java/org/infinispan/configuration/parsing/UnifiedXmlFileParsingTest.java +++ b/core/src/test/java/org/infinispan/configuration/parsing/UnifiedXmlFileParsingTest.java @@ -14,6 +14,7 @@ import java.util.List; import java.util.Map; import java.util.NoSuchElementException; +import java.util.Properties; import java.util.stream.Collectors; import org.infinispan.Version; @@ -95,7 +96,9 @@ public void testParseAndConstructUnifiedXmlFile(Path config) throws IOException int major = Integer.parseInt(parts[0]); int minor = Integer.parseInt(parts[1]); - ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), false); + Properties properties = new Properties(); + + ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), false, properties); try (InputStream is = FileLookupFactory.newInstance().lookupFileStrict(config.toString(), Thread.currentThread().getContextClassLoader())) { ConfigurationBuilderHolder holder = parserRegistry.parse(is); for(ParserVersionCheck check : ParserVersionCheck.values()) { diff --git a/core/src/test/java/org/infinispan/test/fwk/TestCacheManagerFactory.java b/core/src/test/java/org/infinispan/test/fwk/TestCacheManagerFactory.java index 4b588d2c365d..cfa4105b8a7b 100644 --- a/core/src/test/java/org/infinispan/test/fwk/TestCacheManagerFactory.java +++ b/core/src/test/java/org/infinispan/test/fwk/TestCacheManagerFactory.java @@ -112,7 +112,7 @@ public static EmbeddedCacheManager fromStream(InputStream is, boolean keepJmxDom } public static EmbeddedCacheManager fromStream(InputStream is, boolean keepJmxDomainName, boolean defaultParsersOnly, boolean start) throws IOException { - ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), defaultParsersOnly); + ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), defaultParsersOnly, System.getProperties()); ConfigurationBuilderHolder holder = parserRegistry.parse(is); // The node name is set in each DefaultThreadFactory individually, override it here diff --git a/counter/src/main/java/org/infinispan/counter/configuration/CounterConfigurationParser.java b/counter/src/main/java/org/infinispan/counter/configuration/CounterConfigurationParser.java index 6178d9c84882..50ac34e4b367 100644 --- a/counter/src/main/java/org/infinispan/counter/configuration/CounterConfigurationParser.java +++ b/counter/src/main/java/org/infinispan/counter/configuration/CounterConfigurationParser.java @@ -2,7 +2,6 @@ import static javax.xml.stream.XMLStreamConstants.START_DOCUMENT; import static javax.xml.stream.XMLStreamConstants.START_ELEMENT; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; import java.io.BufferedInputStream; import java.io.InputStream; @@ -98,7 +97,7 @@ private void parseCountersElement(XMLStreamReader reader, CounterManagerConfigur throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case NUM_OWNERS: @@ -130,7 +129,7 @@ private void parseWeakCounter(XMLStreamReader reader, WeakCounterConfigurationBu throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONCURRENCY_LEVEL: @@ -147,7 +146,7 @@ private void parseStrongCounter(XMLStreamReader reader, StrongCounterConfigurati throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); parserCommonCounterAttributes(reader, builder, i, attribute, value); } @@ -170,7 +169,7 @@ private void parseUpperBound(XMLStreamReader reader, StrongCounterConfigurationB throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case VALUE: @@ -187,7 +186,7 @@ private void parseLowerBound(XMLStreamReader reader, StrongCounterConfigurationB throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case VALUE: diff --git a/persistence/cli/src/main/java/org/infinispan/persistence/cli/configuration/CLInterfaceLoaderConfigurationParser.java b/persistence/cli/src/main/java/org/infinispan/persistence/cli/configuration/CLInterfaceLoaderConfigurationParser.java index e24973bdd13b..0009a42c1150 100644 --- a/persistence/cli/src/main/java/org/infinispan/persistence/cli/configuration/CLInterfaceLoaderConfigurationParser.java +++ b/persistence/cli/src/main/java/org/infinispan/persistence/cli/configuration/CLInterfaceLoaderConfigurationParser.java @@ -1,7 +1,5 @@ package org.infinispan.persistence.cli.configuration; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamException; import org.infinispan.configuration.cache.ConfigurationBuilder; @@ -56,7 +54,7 @@ private void parseCliLoaderAttributes(XMLExtendedStreamReader reader, throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { diff --git a/persistence/jdbc/src/main/java/org/infinispan/persistence/jdbc/configuration/JdbcStoreConfigurationParser.java b/persistence/jdbc/src/main/java/org/infinispan/persistence/jdbc/configuration/JdbcStoreConfigurationParser.java index 36478df546cb..16180a695a8a 100644 --- a/persistence/jdbc/src/main/java/org/infinispan/persistence/jdbc/configuration/JdbcStoreConfigurationParser.java +++ b/persistence/jdbc/src/main/java/org/infinispan/persistence/jdbc/configuration/JdbcStoreConfigurationParser.java @@ -1,7 +1,5 @@ package org.infinispan.persistence.jdbc.configuration; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -62,7 +60,7 @@ private void parseStringKeyedJdbcStore(final XMLExtendedStreamReader reader, JdbcStringBasedStoreConfigurationBuilder builder = new JdbcStringBasedStoreConfigurationBuilder( persistenceBuilder); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case KEY_TO_STRING_MAPPER: @@ -121,7 +119,7 @@ private void parseConnectionPoolAttributes(XMLExtendedStreamReader reader, PooledConnectionFactoryConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PROPERTIES_FILE: { @@ -156,7 +154,7 @@ private void parseSimpleConnectionAttributes(XMLExtendedStreamReader reader, SimpleConnectionFactoryConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONNECTION_URL: { @@ -187,7 +185,7 @@ private void parseTable(XMLExtendedStreamReader reader, TableManipulationConfigu throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case BATCH_SIZE: { diff --git a/persistence/jpa/src/main/java/org/infinispan/persistence/jpa/configuration/JpaStoreConfigurationParser.java b/persistence/jpa/src/main/java/org/infinispan/persistence/jpa/configuration/JpaStoreConfigurationParser.java index 2bfe9605bfa8..1a83d47bb723 100644 --- a/persistence/jpa/src/main/java/org/infinispan/persistence/jpa/configuration/JpaStoreConfigurationParser.java +++ b/persistence/jpa/src/main/java/org/infinispan/persistence/jpa/configuration/JpaStoreConfigurationParser.java @@ -3,7 +3,6 @@ import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; -import org.infinispan.commons.util.StringPropertyReplacer; import org.infinispan.commons.util.Util; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.configuration.parsing.ConfigurationBuilderHolder; @@ -43,7 +42,7 @@ private void parseJpaCacheStore(XMLExtendedStreamReader reader, JpaStoreConfigur throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = StringPropertyReplacer.replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { diff --git a/persistence/leveldb/src/main/java/org/infinispan/persistence/leveldb/configuration/LevelDBStoreConfigurationParser.java b/persistence/leveldb/src/main/java/org/infinispan/persistence/leveldb/configuration/LevelDBStoreConfigurationParser.java index 4979d9439246..2b36026bfeb5 100644 --- a/persistence/leveldb/src/main/java/org/infinispan/persistence/leveldb/configuration/LevelDBStoreConfigurationParser.java +++ b/persistence/leveldb/src/main/java/org/infinispan/persistence/leveldb/configuration/LevelDBStoreConfigurationParser.java @@ -3,7 +3,6 @@ import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; -import org.infinispan.commons.util.StringPropertyReplacer; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.configuration.parsing.ConfigurationBuilderHolder; import org.infinispan.configuration.parsing.ConfigurationParser; @@ -52,8 +51,7 @@ public void readElement(XMLExtendedStreamReader reader, ConfigurationBuilderHold private void parseLevelDBCacheStore(XMLExtendedStreamReader reader, LevelDBStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String attributeValue = reader.getAttributeValue(i); - String value = StringPropertyReplacer.replaceProperties(attributeValue); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); @@ -108,8 +106,7 @@ private void parseLevelDBCacheStore(XMLExtendedStreamReader reader, LevelDBStore private void parseLevelDBCacheStoreExpiry(XMLExtendedStreamReader reader, LevelDBStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String attributeValue = reader.getAttributeValue(i); - String value = StringPropertyReplacer.replaceProperties(attributeValue); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PATH: { diff --git a/persistence/remote/src/main/java/org/infinispan/persistence/remote/configuration/RemoteStoreConfigurationParser.java b/persistence/remote/src/main/java/org/infinispan/persistence/remote/configuration/RemoteStoreConfigurationParser.java index d469a072d026..8004c0215ff4 100644 --- a/persistence/remote/src/main/java/org/infinispan/persistence/remote/configuration/RemoteStoreConfigurationParser.java +++ b/persistence/remote/src/main/java/org/infinispan/persistence/remote/configuration/RemoteStoreConfigurationParser.java @@ -1,7 +1,5 @@ package org.infinispan.persistence.remote.configuration; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -108,7 +106,7 @@ private void parseAuthentication(XMLExtendedStreamReader reader, AuthenticationC authentication.enable(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case SERVER_NAME: { @@ -174,7 +172,7 @@ private void parseEncryption(XMLExtendedStreamReader reader, SslConfigurationBui ssl.enable(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PROTOCOL: { @@ -217,7 +215,7 @@ private void parseKeystore(XMLExtendedStreamReader reader, SslConfigurationBuild for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FILENAME: @@ -253,7 +251,7 @@ private void parseTruststore(XMLExtendedStreamReader reader, SslConfigurationBui for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FILENAME: @@ -276,7 +274,7 @@ private void parseAsyncTransportExecutor(final XMLExtendedStreamReader reader, final ExecutorFactoryConfigurationBuilder builder, ClassLoader classLoader) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FACTORY: { @@ -295,7 +293,7 @@ private void parseAsyncTransportExecutor(final XMLExtendedStreamReader reader, private void parseConnectionPool(XMLExtendedStreamReader reader, ConnectionPoolConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case EXHAUSTED_ACTION: { @@ -342,7 +340,7 @@ private void parseServer(XMLExtendedStreamReader reader, RemoteServerConfigurati throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case HOST: @@ -365,7 +363,7 @@ private void parseRemoteStoreAttributes(XMLExtendedStreamReader reader, RemoteSt throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { diff --git a/persistence/rest/src/main/java/org/infinispan/persistence/rest/configuration/RestStoreConfigurationParser.java b/persistence/rest/src/main/java/org/infinispan/persistence/rest/configuration/RestStoreConfigurationParser.java index 1eb9fa14b046..587bc6554c28 100644 --- a/persistence/rest/src/main/java/org/infinispan/persistence/rest/configuration/RestStoreConfigurationParser.java +++ b/persistence/rest/src/main/java/org/infinispan/persistence/rest/configuration/RestStoreConfigurationParser.java @@ -1,7 +1,5 @@ package org.infinispan.persistence.rest.configuration; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -78,7 +76,7 @@ private void parseServer(XMLExtendedStreamReader reader, RestStoreConfigurationB throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case HOST: @@ -100,7 +98,7 @@ private void parseServer(XMLExtendedStreamReader reader, RestStoreConfigurationB private void parseConnectionPool(XMLExtendedStreamReader reader, ConnectionPoolConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONNECTION_TIMEOUT: { @@ -139,7 +137,7 @@ private void parseRestStoreAttributes(XMLExtendedStreamReader reader, RestStoreC throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attributeName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attributeName); switch (attribute) { diff --git a/persistence/rocksdb/src/main/java/org/infinispan/persistence/rocksdb/configuration/RocksDBStoreConfigurationParser.java b/persistence/rocksdb/src/main/java/org/infinispan/persistence/rocksdb/configuration/RocksDBStoreConfigurationParser.java index 8d805a22a4e6..5299576c5f39 100644 --- a/persistence/rocksdb/src/main/java/org/infinispan/persistence/rocksdb/configuration/RocksDBStoreConfigurationParser.java +++ b/persistence/rocksdb/src/main/java/org/infinispan/persistence/rocksdb/configuration/RocksDBStoreConfigurationParser.java @@ -3,7 +3,6 @@ import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; -import org.infinispan.commons.util.StringPropertyReplacer; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.configuration.parsing.ConfigurationBuilderHolder; import org.infinispan.configuration.parsing.ConfigurationParser; @@ -48,8 +47,7 @@ public void readElement(XMLExtendedStreamReader reader, ConfigurationBuilderHold private void parseRocksDBCacheStore(XMLExtendedStreamReader reader, RocksDBStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String attributeValue = reader.getAttributeValue(i); - String value = StringPropertyReplacer.replaceProperties(attributeValue); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); @@ -100,8 +98,7 @@ private void parseRocksDBCacheStore(XMLExtendedStreamReader reader, RocksDBStore private void parseExpiry(XMLExtendedStreamReader reader, RocksDBStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { - String attributeValue = reader.getAttributeValue(i); - String value = StringPropertyReplacer.replaceProperties(attributeValue); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PATH: { diff --git a/persistence/soft-index/src/main/java/org/infinispan/persistence/sifs/configuration/SoftIndexFileStoreConfigurationParser.java b/persistence/soft-index/src/main/java/org/infinispan/persistence/sifs/configuration/SoftIndexFileStoreConfigurationParser.java index 8a828317dd3c..16df4e76edbb 100644 --- a/persistence/soft-index/src/main/java/org/infinispan/persistence/sifs/configuration/SoftIndexFileStoreConfigurationParser.java +++ b/persistence/soft-index/src/main/java/org/infinispan/persistence/sifs/configuration/SoftIndexFileStoreConfigurationParser.java @@ -1,7 +1,5 @@ package org.infinispan.persistence.sifs.configuration; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -52,7 +50,7 @@ public Namespace[] getNamespaces() { private void parseSoftIndexFileStore(XMLExtendedStreamReader reader, SoftIndexFileStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/Parser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/Parser60.java index 41e34b604b17..8fd776bf3a34 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/Parser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/Parser60.java @@ -1,6 +1,5 @@ package org.infinispan.tools.config.v6; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; import static org.infinispan.configuration.cache.CacheMode.DIST_ASYNC; import static org.infinispan.configuration.cache.CacheMode.DIST_SYNC; import static org.infinispan.configuration.cache.CacheMode.INVALIDATION_ASYNC; @@ -119,7 +118,7 @@ private void parseNamedCache(final XMLExtendedStreamReader reader, final Configu for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case NAME: @@ -230,7 +229,7 @@ private void parseVersioning(final XMLExtendedStreamReader reader, final Configu builder.versioning().disable(); // Disabled by default. for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case VERSIONING_SCHEME: @@ -250,7 +249,7 @@ private void parseVersioning(final XMLExtendedStreamReader reader, final Configu private void parseGlobalSites(final XMLExtendedStreamReader reader, final ConfigurationBuilderHolder holder) throws XMLStreamException { GlobalConfigurationBuilder gcb = holder.getGlobalConfigurationBuilder(); ParseUtils.requireSingleAttribute(reader, "local"); - String value = replaceProperties(reader.getAttributeValue(0)); + String value = reader.getAttributeValue(0); gcb.site().localSite(value); ParseUtils.requireNoContent(reader); } @@ -289,7 +288,7 @@ private void parseBackupFor(XMLExtendedStreamReader reader, ConfigurationBuilder BackupForBuilder backupForBuilder = ccb.sites().backupFor(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case REMOTE_SITE: @@ -324,7 +323,7 @@ private void parseBackup(XMLExtendedStreamReader reader, ConfigurationBuilder cc BackupConfigurationBuilder backup = ccb.sites().addBackup(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case TIMEOUT: @@ -362,7 +361,7 @@ private void parseTakeOffline(XMLExtendedStreamReader reader, BackupConfiguratio Element takeOffline = Element.forName(reader.getLocalName()); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AFTER_FAILURES: @@ -387,7 +386,7 @@ private void parseTransaction(final XMLExtendedStreamReader reader, final Config boolean transactionModeSpecified = false; for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AUTO_COMMIT: @@ -460,7 +459,7 @@ private void parseRecovery(final XMLExtendedStreamReader reader, final Configura RecoveryConfigurationBuilder recovery = holder.getCurrentConfigurationBuilder().transaction().recovery(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -485,7 +484,7 @@ private void parseUnsafe(final XMLExtendedStreamReader reader, final Configurati ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case UNRELIABLE_RETURN_VALUES: @@ -507,7 +506,7 @@ private void parseStoreAsBinary(final XMLExtendedStreamReader reader, final Conf builder.memory().storageType(StorageType.BINARY); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -537,7 +536,7 @@ private void parseLocking(final XMLExtendedStreamReader reader, final Configurat ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONCURRENCY_LEVEL: @@ -571,7 +570,7 @@ private void parsePersistence(final XMLExtendedStreamReader reader, final Config ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case PASSIVATION: @@ -605,7 +604,7 @@ private void parseSingleFileStore(XMLExtendedStreamReader reader, ConfigurationB SingleFileStoreConfigurationBuilder storeBuilder = builder.persistence().addSingleFileStore(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { @@ -628,7 +627,7 @@ private void parseClusterLoader(XMLExtendedStreamReader reader, ConfigurationBui ClusterLoaderConfigurationBuilder cclb = builder.persistence().addClusterLoader(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { @@ -679,7 +678,7 @@ private void parseStore(final XMLExtendedStreamReader reader, final Configuratio for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLASS: @@ -775,7 +774,7 @@ public static void parseCommonStoreChildren(final XMLExtendedStreamReader reader public static void parseSingletonStore(final XMLExtendedStreamReader reader, final StoreConfigurationBuilder storeBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -802,7 +801,7 @@ public static void parseSingletonStore(final XMLExtendedStreamReader reader, fin public static void parseAsyncStore(final XMLExtendedStreamReader reader, final StoreConfigurationBuilder storeBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -837,7 +836,7 @@ private void parseJmxStatistics(final XMLExtendedStreamReader reader, final Conf ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -859,7 +858,7 @@ private void parseInvocationBatching(final XMLExtendedStreamReader reader, final ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -882,7 +881,7 @@ private void parseIndexing(final XMLExtendedStreamReader reader, final Configura ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -922,7 +921,7 @@ private void parseExpiration(final XMLExtendedStreamReader reader, final Configu ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case LIFESPAN: @@ -954,7 +953,7 @@ private void parseEviction(final XMLExtendedStreamReader reader, final Configura ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case MAX_ENTRIES: @@ -993,7 +992,7 @@ private void parseDataContainer(final XMLExtendedStreamReader reader, final Conf ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLASS: @@ -1043,7 +1042,7 @@ private void parseInterceptor(final XMLExtendedStreamReader reader, final Config for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case AFTER: @@ -1093,7 +1092,7 @@ private void parseClustering(final XMLExtendedStreamReader reader, final Configu for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case MODE: @@ -1182,7 +1181,7 @@ private void parseSync(final XMLExtendedStreamReader reader, final Configuration for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case REPL_TIMEOUT: @@ -1202,7 +1201,7 @@ private void parseStateTransfer(final XMLExtendedStreamReader reader, final Conf for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FETCH_IN_MEMORY_STATE: @@ -1230,7 +1229,7 @@ private void parseL1reader(final XMLExtendedStreamReader reader, final Configura for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -1265,7 +1264,7 @@ private void parseHash(final XMLExtendedStreamReader reader, final Configuration ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FACTORY: @@ -1308,7 +1307,7 @@ private void parseGroups(final XMLExtendedStreamReader reader, final Configurati for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -1341,7 +1340,7 @@ private void parseAsync(final XMLExtendedStreamReader reader, final Configuratio ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -1474,7 +1473,7 @@ private void parseTransport(final XMLExtendedStreamReader reader, final Configur GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CLUSTER_NAME: { @@ -1540,7 +1539,7 @@ private void parseShutdown(final XMLExtendedStreamReader reader, final Configura GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case HOOK_BEHAVIOR: { @@ -1561,7 +1560,7 @@ private void parseSerialization(final XMLExtendedStreamReader reader, final Conf GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { @@ -1608,7 +1607,7 @@ private void parseAdvancedExternalizers(final XMLExtendedStreamReader reader, fi Integer id = null; ParseUtils.requireAttributes(reader, Attribute.EXTERNALIZER_CLASS.getLocalName()); for (int i = 0; i < attributes; i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case EXTERNALIZER_CLASS: { @@ -1647,7 +1646,7 @@ private void parseGlobalJMXStatistics(final XMLExtendedStreamReader reader, fina GlobalConfigurationBuilder builder = holder.getGlobalConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); // allowDuplicateDomains="true" cacheManagerName="" enabled="true" jmxDomain="" // mBeanServerLookup @@ -1775,7 +1774,7 @@ private void parseCompatibility(XMLExtendedStreamReader reader, ConfigurationBui ConfigurationBuilder builder = holder.getCurrentConfigurationBuilder(); for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/jdbc/JdbcStoreConfigurationParser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/jdbc/JdbcStoreConfigurationParser60.java index a20e4a6cd518..eae5d4d3b730 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/jdbc/JdbcStoreConfigurationParser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/jdbc/JdbcStoreConfigurationParser60.java @@ -1,7 +1,5 @@ package org.infinispan.tools.config.v6.jdbc; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import java.util.Properties; import javax.xml.stream.XMLStreamConstants; @@ -70,7 +68,7 @@ private void parseStringKeyedJdbcStore(final XMLExtendedStreamReader reader, JdbcStringBasedStoreConfigurationBuilder builder = new JdbcStringBasedStoreConfigurationBuilder( persistenceBuilder); for (int i = 0; i < reader.getAttributeCount(); i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case KEY_TO_STRING_MAPPER: @@ -129,7 +127,7 @@ private void parseConnectionPoolAttributes(XMLExtendedStreamReader reader, PooledConnectionFactoryConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONNECTION_URL: { @@ -160,7 +158,7 @@ private void parseSimpleConnectionAttributes(XMLExtendedStreamReader reader, SimpleConnectionFactoryConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONNECTION_URL: { @@ -191,7 +189,7 @@ private void parseTable(XMLExtendedStreamReader reader, TableManipulationConfigu throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case BATCH_SIZE: { @@ -294,7 +292,7 @@ public static void parseCommonLoaderAttributes(XMLExtendedStreamReader reader, i public static void parseCommonStoreAttributes(XMLExtendedStreamReader reader, int i, StoreConfigurationBuilder builder) throws XMLStreamException { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); org.infinispan.tools.config.v6.Attribute attribute = org.infinispan.tools.config.v6.Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FETCH_PERSISTENT_STATE: @@ -333,7 +331,7 @@ public static void parseCommonStoreChildren(final XMLExtendedStreamReader reader public static void parseAsyncStore(final XMLExtendedStreamReader reader, final StoreConfigurationBuilder storeBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); org.infinispan.configuration.parsing.Attribute attribute = org.infinispan.configuration.parsing.Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -366,7 +364,7 @@ public static void parseAsyncStore(final XMLExtendedStreamReader reader, final S public static void parseSingletonStore(final XMLExtendedStreamReader reader, final StoreConfigurationBuilder storeBuilder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); org.infinispan.tools.config.v6.Attribute attribute = org.infinispan.tools.config.v6.Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case ENABLED: @@ -404,7 +402,7 @@ public static Properties parseProperties(final XMLExtendedStreamReader reader) t String key = null; String propertyValue = null; for (int i = 0; i < attributes; i++) { - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); org.infinispan.configuration.parsing.Attribute attribute = org.infinispan.configuration.parsing.Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case NAME: { diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/jpa/JpaStoreConfigurationParser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/jpa/JpaStoreConfigurationParser60.java index 37480a810d50..8e8cd93b541b 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/jpa/JpaStoreConfigurationParser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/jpa/JpaStoreConfigurationParser60.java @@ -4,7 +4,6 @@ import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; -import org.infinispan.commons.util.StringPropertyReplacer; import org.infinispan.commons.util.Util; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.configuration.parsing.ConfigurationBuilderHolder; @@ -44,7 +43,7 @@ private void parseJpaCacheStore(XMLExtendedStreamReader reader, JpaStoreConfigur throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = StringPropertyReplacer.replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/leveldb/LevelDBStoreConfigurationParser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/leveldb/LevelDBStoreConfigurationParser60.java index 6d3c8ecafc9e..b98e0592ddd5 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/leveldb/LevelDBStoreConfigurationParser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/leveldb/LevelDBStoreConfigurationParser60.java @@ -3,7 +3,6 @@ import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; -import org.infinispan.commons.util.StringPropertyReplacer; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.configuration.parsing.ConfigurationBuilderHolder; import org.infinispan.configuration.parsing.ConfigurationParser; @@ -51,8 +50,7 @@ public void readElement(XMLExtendedStreamReader reader, ConfigurationBuilderHold private void parseLevelDBCacheStore(XMLExtendedStreamReader reader, LevelDBStoreConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String attributeValue = reader.getAttributeValue(i); - String value = StringPropertyReplacer.replaceProperties(attributeValue); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); @@ -89,7 +87,7 @@ private void parseLevelDBCacheStore(XMLExtendedStreamReader reader, LevelDBStore break; } default: { - Parser60.parseCommonStoreAttributes(reader, builder, attrName, attributeValue, i); + Parser60.parseCommonStoreAttributes(reader, builder, attrName, value, i); } } } diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/remote/RemoteStoreConfigurationParser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/remote/RemoteStoreConfigurationParser60.java index 9ddcc671a679..eda8224e550c 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/remote/RemoteStoreConfigurationParser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/remote/RemoteStoreConfigurationParser60.java @@ -1,7 +1,5 @@ package org.infinispan.tools.config.v6.remote; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -88,7 +86,7 @@ private void parseAsyncTransportExecutor(final XMLExtendedStreamReader reader, f throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case FACTORY: { @@ -118,7 +116,7 @@ private void parseAsyncTransportExecutor(final XMLExtendedStreamReader reader, f private void parseConnectionPool(XMLExtendedStreamReader reader, ConnectionPoolConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case EXHAUSTED_ACTION: { @@ -178,7 +176,7 @@ private void parseServers(XMLExtendedStreamReader reader, RemoteStoreConfigurati private void parseServer(XMLExtendedStreamReader reader, RemoteServerConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case HOST: @@ -197,7 +195,7 @@ private void parseServer(XMLExtendedStreamReader reader, RemoteServerConfigurati private void parseRemoteStoreAttributes(XMLExtendedStreamReader reader, RemoteStoreConfigurationBuilder builder, ClassLoader classLoader) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attrName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attrName); switch (attribute) { diff --git a/tools/src/main/java/org/infinispan/tools/config/v6/rest/RestStoreConfigurationParser60.java b/tools/src/main/java/org/infinispan/tools/config/v6/rest/RestStoreConfigurationParser60.java index c42787143430..e7f3cdc687ae 100644 --- a/tools/src/main/java/org/infinispan/tools/config/v6/rest/RestStoreConfigurationParser60.java +++ b/tools/src/main/java/org/infinispan/tools/config/v6/rest/RestStoreConfigurationParser60.java @@ -1,7 +1,5 @@ package org.infinispan.tools.config.v6.rest; -import static org.infinispan.commons.util.StringPropertyReplacer.replaceProperties; - import javax.xml.stream.XMLStreamConstants; import javax.xml.stream.XMLStreamException; @@ -78,7 +76,7 @@ private void parseRestStore(final XMLExtendedStreamReader reader, PersistenceCon private void parseConnectionPool(XMLExtendedStreamReader reader, ConnectionPoolConfigurationBuilder builder) throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); Attribute attribute = Attribute.forName(reader.getAttributeLocalName(i)); switch (attribute) { case CONNECTION_TIMEOUT: { @@ -117,7 +115,7 @@ private void parseRestStoreAttributes(XMLExtendedStreamReader reader, RestStoreC throws XMLStreamException { for (int i = 0; i < reader.getAttributeCount(); i++) { ParseUtils.requireNoNamespaceAttribute(reader, i); - String value = replaceProperties(reader.getAttributeValue(i)); + String value = reader.getAttributeValue(i); String attributeName = reader.getAttributeLocalName(i); Attribute attribute = Attribute.forName(attributeName); switch (attribute) { diff --git a/tools/src/test/java/org/infinispan/tools/ConfigurationConverterTest.java b/tools/src/test/java/org/infinispan/tools/ConfigurationConverterTest.java index ea316744df5b..ab5d7fcb59aa 100644 --- a/tools/src/test/java/org/infinispan/tools/ConfigurationConverterTest.java +++ b/tools/src/test/java/org/infinispan/tools/ConfigurationConverterTest.java @@ -12,6 +12,7 @@ import java.io.OutputStream; import java.util.List; import java.util.Map; +import java.util.Properties; import org.infinispan.Version; import org.infinispan.commons.equivalence.AnyEquivalence; @@ -67,7 +68,9 @@ public void testConversionAndSerializationFrom60() throws Exception { baos.writeTo(outputStream); } - ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true); + Properties properties = new Properties(); + + ParserRegistry parserRegistry = new ParserRegistry(Thread.currentThread().getContextClassLoader(), true, properties); ConfigurationBuilderHolder holder = parserRegistry.parseFile(SERIALIZED_CONFIG_FILE_NAME); assertGlobalPropertiesConverted(holder); assertDefaultConfigApplied(holder);