You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/07/04 11:05:12 UTC

[camel] 06/30: CAMEL-13720: Properties component - Remove complexity of augemented properties parser

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch properties
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 4451c7fd06006505bd445534c8d213caa96d448d
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Jul 3 07:12:03 2019 +0200

    CAMEL-13720: Properties component - Remove complexity of augemented properties parser
---
 .../src/main/docs/properties-component.adoc        |   5 +-
 ...AugmentedPropertyNameAwarePropertiesParser.java |  52 ------
 .../properties/DefaultPropertiesParser.java        |  59 +------
 .../component/properties/PropertiesComponent.java  |  65 +-------
 .../component/properties/PropertiesParser.java     |   3 +-
 .../spi/BridgePropertyPlaceholderConfigurer.java   |  58 +------
 .../core/xml/AbstractCamelContextFactoryBean.java  |   6 -
 .../xml/CamelPropertyPlaceholderDefinition.java    |  40 -----
 .../properties/PropertiesComponentTest.java        | 182 ---------------------
 .../PropertiesComponentConfiguration.java          |  39 -----
 10 files changed, 18 insertions(+), 491 deletions(-)

diff --git a/components/camel-properties/src/main/docs/properties-component.adoc b/components/camel-properties/src/main/docs/properties-component.adoc
index aa73ceb..65146ca 100644
--- a/components/camel-properties/src/main/docs/properties-component.adoc
+++ b/components/camel-properties/src/main/docs/properties-component.adoc
@@ -15,7 +15,7 @@ Where *key* is the key for the property to lookup
 === Options
 
 // component options: START
-The Properties component supports 19 options, which are listed below.
+The Properties component supports 16 options, which are listed below.
 
 
 
@@ -28,9 +28,6 @@ The Properties component supports 19 options, which are listed below.
 | *propertiesResolver* (common) | To use a custom PropertiesResolver |  | PropertiesResolver
 | *propertiesParser* (common) | To use a custom PropertiesParser |  | PropertiesParser
 | *cache* (common) | Whether or not to cache loaded properties. The default value is true. | true | boolean
-| *propertyPrefix* (advanced) | Optional prefix prepended to property names before resolution. |  | String
-| *propertySuffix* (advanced) | Optional suffix appended to property names before resolution. |  | String
-| *fallbackToUnaugmented Property* (advanced) | If true, first attempt resolution of property name augmented with propertyPrefix and propertySuffix before falling back the plain property name specified. If false, only the augmented property name is searched. | true | boolean
 | *defaultFallbackEnabled* (common) | If false, the component does not attempt to find a default for the key by looking after the colon separator. | true | boolean
 | *ignoreMissingLocation* (common) | Whether to silently ignore if a location cannot be located, such as a properties file not found. | false | boolean
 | *prefixToken* (advanced) | Sets the value of the prefix token used to identify properties to replace. Setting a value of null restores the default token (link DEFAULT_PREFIX_TOKEN). | {{ | String
diff --git a/components/camel-properties/src/main/java/org/apache/camel/component/properties/AugmentedPropertyNameAwarePropertiesParser.java b/components/camel-properties/src/main/java/org/apache/camel/component/properties/AugmentedPropertyNameAwarePropertiesParser.java
deleted file mode 100644
index adc88803..0000000
--- a/components/camel-properties/src/main/java/org/apache/camel/component/properties/AugmentedPropertyNameAwarePropertiesParser.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.component.properties;
-
-/**
- * Interface for property parses that can attempt parsing property names using a fixed property name prefix and suffix.
- */
-public interface AugmentedPropertyNameAwarePropertiesParser extends PropertiesParser {
-    
-    /**
-     * Parses the string, applying the optional {@code propertyPrefix} and
-     * {@code propertySuffix} to the parsed property names, and replaces the
-     * property placeholders with values from the given properties.
-     * 
-     * @param text the text to be parsed
-     * @param properties the properties resolved which values should be looked
-     *            up
-     * @param prefixToken the prefix token
-     * @param suffixToken the suffix token
-     * @param propertyPrefix the optional property name prefix to augment parsed
-     *            property names with
-     * @param propertySuffix the optional property name suffix to augment parsed
-     *            property names with
-     * @param fallbackToUnaugmentedProperty flag indicating if the originally
-     *            parsed property name should by used for resolution if there is
-     *            no match to the augmented property name
-     * @param defaultFallbackEnabled flag indicating if the value after colon
-     *                               should be the default value to use it
-     *                               the property has not been resolved
-     *            
-     * @return the parsed text with replaced placeholders
-     *
-     * @throws IllegalArgumentException if uri syntax is not valid or a property
-     *             is not found
-     */
-    String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken,
-                    String propertyPrefix, String propertySuffix, boolean fallbackToUnaugmentedProperty, boolean defaultFallbackEnabled) throws IllegalArgumentException;
-}
diff --git a/components/camel-properties/src/main/java/org/apache/camel/component/properties/DefaultPropertiesParser.java b/components/camel-properties/src/main/java/org/apache/camel/component/properties/DefaultPropertiesParser.java
index 9c01340..659ebac 100644
--- a/components/camel-properties/src/main/java/org/apache/camel/component/properties/DefaultPropertiesParser.java
+++ b/components/camel-properties/src/main/java/org/apache/camel/component/properties/DefaultPropertiesParser.java
@@ -17,7 +17,6 @@
 package org.apache.camel.component.properties;
 
 import java.util.HashSet;
-import java.util.Properties;
 import java.util.Set;
 
 import org.apache.camel.util.ObjectHelper;
@@ -30,7 +29,7 @@ import static org.apache.camel.util.IOHelper.lookupEnvironmentVariable;
 /**
  * A parser to parse a string which contains property placeholders.
  */
-public class DefaultPropertiesParser implements AugmentedPropertyNameAwarePropertiesParser {
+public class DefaultPropertiesParser implements PropertiesParser {
     private static final String GET_OR_ELSE_TOKEN = ":";
 
     protected final Logger log = LoggerFactory.getLogger(getClass());
@@ -53,15 +52,8 @@ public class DefaultPropertiesParser implements AugmentedPropertyNameAwareProper
     }
 
     @Override
-    public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken) throws IllegalArgumentException {
-        return parseUri(text, properties, prefixToken, suffixToken, null, null, false, false);
-    }
-
-    @Override
-    public String parseUri(String text, PropertiesLookup properties,
-                           String prefixToken, String suffixToken, String propertyPrefix, String propertySuffix,
-            boolean fallbackToUnaugmentedProperty, boolean defaultFallbackEnabled) throws IllegalArgumentException {
-        ParsingContext context = new ParsingContext(properties, prefixToken, suffixToken, propertyPrefix, propertySuffix, fallbackToUnaugmentedProperty, defaultFallbackEnabled);
+    public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken, boolean defaultFallbackEnabled) throws IllegalArgumentException {
+        ParsingContext context = new ParsingContext(properties, prefixToken, suffixToken, defaultFallbackEnabled);
         return context.parse(text);
     }
 
@@ -76,19 +68,12 @@ public class DefaultPropertiesParser implements AugmentedPropertyNameAwareProper
         private final PropertiesLookup properties;
         private final String prefixToken;
         private final String suffixToken;
-        private final String propertyPrefix;
-        private final String propertySuffix;
-        private final boolean fallbackToUnaugmentedProperty;
         private final boolean defaultFallbackEnabled;
 
-        ParsingContext(PropertiesLookup properties, String prefixToken, String suffixToken, String propertyPrefix, String propertySuffix,
-                              boolean fallbackToUnaugmentedProperty, boolean defaultFallbackEnabled) {
+        ParsingContext(PropertiesLookup properties, String prefixToken, String suffixToken, boolean defaultFallbackEnabled) {
             this.properties = properties;
             this.prefixToken = prefixToken;
             this.suffixToken = suffixToken;
-            this.propertyPrefix = propertyPrefix;
-            this.propertySuffix = propertySuffix;
-            this.fallbackToUnaugmentedProperty = fallbackToUnaugmentedProperty;
             this.defaultFallbackEnabled = defaultFallbackEnabled;
         }
 
@@ -245,17 +230,9 @@ public class DefaultPropertiesParser implements AugmentedPropertyNameAwareProper
                 key = StringHelper.before(key, GET_OR_ELSE_TOKEN);
             }
 
-            String augmentedKey = getAugmentedKey(key);
-            boolean shouldFallback = fallbackToUnaugmentedProperty && !key.equals(augmentedKey);
-
-            String value = doGetPropertyValue(augmentedKey);
-            if (value == null && shouldFallback) {
-                log.debug("Property with key [{}] not found, attempting with unaugmented key: {}", augmentedKey, key);
-                value = doGetPropertyValue(key);
-            }
-
+            String value = doGetPropertyValue(key);
             if (value == null && defaultValue != null) {
-                log.debug("Property with key [{}] not found, using default value: {}", augmentedKey, defaultValue);
+                log.debug("Property with key [{}] not found, using default value: {}", key, defaultValue);
                 value = defaultValue;
             }
 
@@ -265,10 +242,7 @@ public class DefaultPropertiesParser implements AugmentedPropertyNameAwareProper
                     // if the component was auto created then include more information that the end user should define it
                     esb.append("PropertiesComponent with name properties must be defined in CamelContext to support property placeholders. ");
                 }
-                esb.append("Property with key [").append(augmentedKey).append("] ");
-                if (shouldFallback) {
-                    esb.append("(and original key [").append(key).append("]) ");
-                }
+                esb.append("Property with key [").append(key).append("] ");
                 esb.append("not found in properties from text: ").append(input);
                 throw new IllegalArgumentException(esb.toString());
             }
@@ -277,25 +251,6 @@ public class DefaultPropertiesParser implements AugmentedPropertyNameAwareProper
         }
 
         /**
-         * Gets the augmented key of the given base key
-         *
-         * @param key Base key
-         * @return Augmented key
-         */
-        private String getAugmentedKey(String key) {
-            String augmentedKey = key;
-            if (propertyPrefix != null) {
-                log.debug("Augmenting property key [{}] with prefix: {}", key, propertyPrefix);
-                augmentedKey = propertyPrefix + augmentedKey;
-            }
-            if (propertySuffix != null) {
-                log.debug("Augmenting property key [{}] with suffix: {}", key, propertySuffix);
-                augmentedKey = augmentedKey + propertySuffix;
-            }
-            return augmentedKey;
-        }
-
-        /**
          * Gets the property with the given key, it returns {@code null} if the property is not found
          *
          * @param key Key of the property
diff --git a/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java b/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java
index 861271a..68b6453 100644
--- a/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java
+++ b/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java
@@ -116,13 +116,6 @@ public class PropertiesComponent extends DefaultComponent implements org.apache.
     private String encoding;
     @Metadata(defaultValue = "true")
     private boolean cache = true;
-    @Metadata(label = "advanced")
-    private String propertyPrefix;
-    @Metadata(label = "advanced")
-    private String propertySuffix;
-    private transient String propertySuffixResolved;
-    @Metadata(label = "advanced", defaultValue = "true")
-    private boolean fallbackToUnaugmentedProperty = true;
     @Metadata(defaultValue = "true")
     private boolean defaultFallbackEnabled = true;
     @Metadata(label = "advanced", defaultValue = DEFAULT_PREFIX_TOKEN)
@@ -275,22 +268,8 @@ public class PropertiesComponent extends DefaultComponent implements org.apache.
         }
 
         log.trace("Parsing uri {} with properties: {}", uri, prop);
-
         PropertiesLookup properties = new DefaultPropertiesLookup(prop);
-        
-        if (propertiesParser instanceof AugmentedPropertyNameAwarePropertiesParser) {
-            return ((AugmentedPropertyNameAwarePropertiesParser) propertiesParser).parseUri(
-                uri,
-                properties,
-                prefixToken,
-                suffixToken,
-                propertyPrefixResolved,
-                propertySuffixResolved,
-                fallbackToUnaugmentedProperty,
-                defaultFallbackEnabled);
-        } else {
-            return propertiesParser.parseUri(uri, properties, prefixToken, suffixToken);
-        }
+        return propertiesParser.parseUri(uri, properties, prefixToken, suffixToken, defaultFallbackEnabled);
     }
 
     public List<PropertiesLocation> getLocations() {
@@ -408,48 +387,6 @@ public class PropertiesComponent extends DefaultComponent implements org.apache.
         this.cache = cache;
     }
     
-    public String getPropertyPrefix() {
-        return propertyPrefix;
-    }
-
-    /**
-     * Optional prefix prepended to property names before resolution.
-     */
-    public void setPropertyPrefix(String propertyPrefix) {
-        this.propertyPrefix = propertyPrefix;
-        this.propertyPrefixResolved = propertyPrefix;
-        if (ObjectHelper.isNotEmpty(this.propertyPrefix)) {
-            this.propertyPrefixResolved = FilePathResolver.resolvePath(this.propertyPrefix);
-        }
-    }
-
-    public String getPropertySuffix() {
-        return propertySuffix;
-    }
-
-    /**
-     * Optional suffix appended to property names before resolution.
-     */
-    public void setPropertySuffix(String propertySuffix) {
-        this.propertySuffix = propertySuffix;
-        this.propertySuffixResolved = propertySuffix;
-        if (ObjectHelper.isNotEmpty(this.propertySuffix)) {
-            this.propertySuffixResolved = FilePathResolver.resolvePath(this.propertySuffix);
-        }
-    }
-
-    public boolean isFallbackToUnaugmentedProperty() {
-        return fallbackToUnaugmentedProperty;
-    }
-
-    /**
-     * If true, first attempt resolution of property name augmented with propertyPrefix and propertySuffix
-     * before falling back the plain property name specified. If false, only the augmented property name is searched.
-     */
-    public void setFallbackToUnaugmentedProperty(boolean fallbackToUnaugmentedProperty) {
-        this.fallbackToUnaugmentedProperty = fallbackToUnaugmentedProperty;
-    }
-
     @ManagedAttribute(description = "Whether to support using fallback values if a property cannot be found")
     public boolean isDefaultFallbackEnabled() {
         return defaultFallbackEnabled;
diff --git a/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesParser.java b/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesParser.java
index 992cb43..34634f8 100644
--- a/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesParser.java
+++ b/components/camel-properties/src/main/java/org/apache/camel/component/properties/PropertiesParser.java
@@ -28,10 +28,11 @@ public interface PropertiesParser {
      * @param properties  the properties resolved which values should be looked up
      * @param prefixToken the prefix token
      * @param suffixToken the suffix token
+     * @param fallback    whether to support using fallback values if a property cannot be found
      * @return the parsed text with replaced placeholders
      * @throws IllegalArgumentException if uri syntax is not valid or a property is not found
      */
-    String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken) throws IllegalArgumentException;
+    String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken, boolean fallback) throws IllegalArgumentException;
 
     /**
      * While parsing the uri using {@link #parseUri(String, PropertiesLookup, String, String) parseUri} each
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java b/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
index e4d5666..4257147 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
@@ -21,7 +21,6 @@ import java.util.List;
 import java.util.Properties;
 
 import org.apache.camel.CamelContext;
-import org.apache.camel.component.properties.AugmentedPropertyNameAwarePropertiesParser;
 import org.apache.camel.component.properties.DefaultPropertiesLookup;
 import org.apache.camel.component.properties.PropertiesLocation;
 import org.apache.camel.component.properties.PropertiesLookup;
@@ -37,7 +36,7 @@ import org.springframework.util.PropertyPlaceholderHelper;
  * A {@link PropertyPlaceholderConfigurer} that bridges Camel's <a href="http://camel.apache.org/using-propertyplaceholder.html">
  * property placeholder</a> with the Spring property placeholder mechanism.
  */
-public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer implements PropertiesResolver, AugmentedPropertyNameAwarePropertiesParser {
+public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer implements PropertiesResolver, PropertiesParser {
 
     // NOTE: this class must be in the spi package as if its in the root package, then Spring fails to parse the XML
     // files due some weird spring issue. But that is okay as having this class in the spi package is fine anyway.
@@ -157,17 +156,9 @@ public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConf
     }
 
     @Override
-    public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken,
-                           String propertyPrefix, String propertySuffix, boolean fallbackToUnaugmentedProperty, boolean defaultFallbackEnabled) throws IllegalArgumentException {
-
+    public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken, boolean fallback) throws IllegalArgumentException {
         // first let Camel parse the text as it may contain Camel placeholders
-        String answer;
-        if (parser instanceof AugmentedPropertyNameAwarePropertiesParser) {
-            answer = ((AugmentedPropertyNameAwarePropertiesParser) parser).parseUri(text, properties, prefixToken, suffixToken,
-                    propertyPrefix, propertySuffix, fallbackToUnaugmentedProperty, defaultFallbackEnabled);
-        } else {
-            answer = parser.parseUri(text, properties, prefixToken, suffixToken);
-        }
+        String answer = parser.parseUri(text, properties, prefixToken, suffixToken, false);
 
         // then let Spring parse it to resolve any Spring placeholders
         if (answer != null) {
@@ -179,17 +170,6 @@ public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConf
     }
 
     @Override
-    public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken) throws IllegalArgumentException {
-        String answer = parser.parseUri(text, properties, prefixToken, suffixToken);
-        if (answer != null) {
-            answer = springResolvePlaceholders(answer, properties);
-        } else {
-            answer = springResolvePlaceholders(text, properties);
-        }
-        return answer;
-    }
-
-    @Override
     public String parseProperty(String key, String value, PropertiesLookup properties) {
         String answer = parser.parseProperty(key, value, properties);
         if (answer != null) {
@@ -247,7 +227,7 @@ public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConf
         }
     }
 
-    private final class BridgePropertiesParser implements PropertiesParser, AugmentedPropertyNameAwarePropertiesParser {
+    private final class BridgePropertiesParser implements PropertiesParser {
 
         private final PropertiesParser delegate;
         private final PropertiesParser parser;
@@ -258,39 +238,15 @@ public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConf
         }
 
         @Override
-        public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken, String propertyPrefix, String propertySuffix,
-                               boolean fallbackToUnaugmentedProperty, boolean defaultFallbackEnabled) throws IllegalArgumentException {
-            String answer = null;
-            if (delegate != null) {
-                if (delegate instanceof AugmentedPropertyNameAwarePropertiesParser) {
-                    answer = ((AugmentedPropertyNameAwarePropertiesParser)this.delegate).parseUri(text, properties,
-                        prefixToken, suffixToken, propertyPrefix, propertySuffix, fallbackToUnaugmentedProperty, defaultFallbackEnabled);
-                } else {
-                    answer = delegate.parseUri(text, properties, prefixToken, suffixToken);
-                }
-            }
-            if (answer != null) {
-                text = answer;
-            }
-            if (parser instanceof AugmentedPropertyNameAwarePropertiesParser) {
-                answer = ((AugmentedPropertyNameAwarePropertiesParser)this.parser).parseUri(text, properties,
-                    prefixToken, suffixToken, propertyPrefix, propertySuffix, fallbackToUnaugmentedProperty, defaultFallbackEnabled);
-            } else {
-                answer = parser.parseUri(text, properties, prefixToken, suffixToken);
-            }
-            return answer;
-        }
-
-        @Override
-        public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken) throws IllegalArgumentException {
+        public String parseUri(String text, PropertiesLookup properties, String prefixToken, String suffixToken, boolean fallback) throws IllegalArgumentException {
             String answer = null;
             if (delegate != null) {
-                answer = delegate.parseUri(text, properties, prefixToken, suffixToken);
+                answer = delegate.parseUri(text, properties, prefixToken, suffixToken, fallback);
             }
             if (answer != null) {
                 text = answer;
             }
-            return parser.parseUri(text, properties, prefixToken, suffixToken);
+            return parser.parseUri(text, properties, prefixToken, suffixToken, fallback);
         }
 
         @Override
diff --git a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
index 50b0adc..359ba9a 100644
--- a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
+++ b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java
@@ -656,12 +656,6 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex
                 pc.setPropertiesParser(parser);
             }
             
-            pc.setPropertyPrefix(def.getPropertyPrefix());
-            pc.setPropertySuffix(def.getPropertySuffix());
-            
-            if (def.isFallbackToUnaugmentedProperty() != null) {
-                pc.setFallbackToUnaugmentedProperty(def.isFallbackToUnaugmentedProperty());
-            }
             if (def.getDefaultFallbackEnabled() != null) {
                 pc.setDefaultFallbackEnabled(def.getDefaultFallbackEnabled());
             }
diff --git a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelPropertyPlaceholderDefinition.java b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelPropertyPlaceholderDefinition.java
index e356a0a..c9772fa 100644
--- a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelPropertyPlaceholderDefinition.java
+++ b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/CamelPropertyPlaceholderDefinition.java
@@ -46,12 +46,6 @@ public class CamelPropertyPlaceholderDefinition extends IdentifiedType {
     private String propertiesResolverRef;
     @XmlAttribute
     private String propertiesParserRef;
-    @XmlAttribute
-    private String propertyPrefix;
-    @XmlAttribute
-    private String propertySuffix;
-    @XmlAttribute @Metadata(defaultValue = "true")
-    private Boolean fallbackToUnaugmentedProperty;
     @XmlAttribute @Metadata(defaultValue = "true")
     private Boolean defaultFallbackEnabled;
     @XmlAttribute @Metadata(defaultValue = "{{")
@@ -122,40 +116,6 @@ public class CamelPropertyPlaceholderDefinition extends IdentifiedType {
         this.propertiesParserRef = propertiesParserRef;
     }
 
-    public String getPropertyPrefix() {
-        return propertyPrefix;
-    }
-
-    /**
-     * Optional prefix prepended to property names before resolution.
-     */
-    public void setPropertyPrefix(String propertyPrefix) {
-        this.propertyPrefix = propertyPrefix;
-    }
-
-    public String getPropertySuffix() {
-        return propertySuffix;
-    }
-
-    /**
-     * Optional suffix appended to property names before resolution.
-     */
-    public void setPropertySuffix(String propertySuffix) {
-        this.propertySuffix = propertySuffix;
-    }
-
-    public Boolean isFallbackToUnaugmentedProperty() {
-        return fallbackToUnaugmentedProperty;
-    }
-
-    /**
-     * If true, first attempt resolution of property name augmented with propertyPrefix and propertySuffix
-     * before falling back the plain property name specified. If false, only the augmented property name is searched.
-     */
-    public void setFallbackToUnaugmentedProperty(Boolean fallbackToUnaugmentedProperty) {
-        this.fallbackToUnaugmentedProperty = fallbackToUnaugmentedProperty;
-    }
-
     public Boolean getDefaultFallbackEnabled() {
         return defaultFallbackEnabled;
     }
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentTest.java b/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentTest.java
index 7383265..8374138 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentTest.java
@@ -280,188 +280,6 @@ public class PropertiesComponentTest extends ContextTestSupport {
     }
     
     @Test
-    public void testPropertiesComponentPropertyPrefix() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertyPrefix("cool.");
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:end");
-                from("direct:foo").to("properties:mock:{{result}}");
-            }
-        });
-        context.start();
-
-        getMockEndpoint("mock:result").expectedMessageCount(2);
-
-        template.sendBody("direct:start", "Hello World");
-        template.sendBody("direct:foo", "Hello Foo");
-
-        assertMockEndpointsSatisfied();
-    }
-
-    @Test
-    public void testPropertiesComponentParameterizedPropertyPrefix() throws Exception {
-        System.setProperty("myPrefix", "cool");
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertyPrefix("${myPrefix}.");
-        pc.setPropertySuffix(".xx");
-
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:end");
-                from("direct:foo").to("properties:mock:{{result}}");
-            }
-        });
-        context.start();
-
-        getMockEndpoint("mock:result").expectedMessageCount(2);
-
-        template.sendBody("direct:start", "Hello World");
-        template.sendBody("direct:foo", "Hello Foo");
-
-        assertMockEndpointsSatisfied();
-
-        System.clearProperty("myPrefix");
-    }
-
-    @Test
-    public void testPropertiesComponentPropertyPrefixFallbackDefault() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertyPrefix("cool.");
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:cool.end");
-                from("direct:foo").to("properties:mock:{{result}}");
-            }
-        });
-        context.start();
-
-        getMockEndpoint("mock:result").expectedMessageCount(2);
-
-        template.sendBody("direct:start", "Hello World");
-        template.sendBody("direct:foo", "Hello Foo");
-
-        assertMockEndpointsSatisfied();
-    }
-    
-    @Test
-    public void testPropertiesComponentPropertyPrefixFallbackDefaultNotFound() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertyPrefix("cool.");
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:doesnotexist");
-            }
-        });
-        
-        try {
-            context.start();
-            
-            fail("Should throw exception");
-        } catch (Exception e) {
-            ResolveEndpointFailedException cause = assertIsInstanceOf(ResolveEndpointFailedException.class, e.getCause());
-            IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, cause.getCause());
-            assertEquals("Property with key [cool.doesnotexist] (and original key [doesnotexist]) not found in properties from text: {{doesnotexist}}", iae.getMessage());
-        }
-    }
-    
-    @Test
-    public void testPropertiesComponentPropertyPrefixFallbackFalse() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertyPrefix("cool.");
-        pc.setFallbackToUnaugmentedProperty(false);
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:cool.end");
-                from("direct:foo").to("properties:mock:{{result}}");
-            }
-        });
-        
-        try {
-            context.start();
-            
-            fail("Should throw exception");
-        } catch (Exception e) {
-            ResolveEndpointFailedException cause = assertIsInstanceOf(ResolveEndpointFailedException.class, e.getCause());
-            IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, cause.getCause());
-            assertEquals("Property with key [cool.cool.end] not found in properties from text: {{cool.end}}", iae.getMessage());
-        }
-    }
-    
-    @Test
-    public void testPropertiesComponentPropertySuffix() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertySuffix(".end");
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:cool");
-            }
-        });
-        context.start();
-
-        getMockEndpoint("mock:result").expectedMessageCount(1);
-
-        template.sendBody("direct:start", "Hello World");
-
-        assertMockEndpointsSatisfied();
-    }
-    
-    @Test
-    public void testPropertiesComponentPropertySuffixFallbackDefault() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertySuffix(".end");
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:cool.end");
-            }
-        });
-        context.start();
-
-        getMockEndpoint("mock:result").expectedMessageCount(1);
-
-        template.sendBody("direct:start", "Hello World");
-
-        assertMockEndpointsSatisfied();
-    }
-    
-    @Test
-    public void testPropertiesComponentPropertySuffixFallbackFalse() throws Exception {
-        PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
-        pc.setPropertySuffix(".end");
-        pc.setFallbackToUnaugmentedProperty(false);
-        
-        context.addRoutes(new RouteBuilder() {
-            @Override
-            public void configure() throws Exception {
-                from("direct:start").to("properties:cool.end");
-            }
-        });
-        
-        try {
-            context.start();
-            
-            fail("Should throw exception");
-        } catch (Exception e) {
-            ResolveEndpointFailedException cause = assertIsInstanceOf(ResolveEndpointFailedException.class, e.getCause());
-            IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, cause.getCause());
-            assertEquals("Property with key [cool.end.end] not found in properties from text: {{cool.end}}", iae.getMessage());
-        }
-    }
-
-    @Test
     public void testJvmSystemPropertyNotFound() throws Exception {
         try {
             context.addRoutes(new RouteBuilder() {
diff --git a/platforms/spring-boot/components-starter/camel-properties-starter/src/main/java/org/apache/camel/component/properties/springboot/PropertiesComponentConfiguration.java b/platforms/spring-boot/components-starter/camel-properties-starter/src/main/java/org/apache/camel/component/properties/springboot/PropertiesComponentConfiguration.java
index fc703a4..3d81f6c 100644
--- a/platforms/spring-boot/components-starter/camel-properties-starter/src/main/java/org/apache/camel/component/properties/springboot/PropertiesComponentConfiguration.java
+++ b/platforms/spring-boot/components-starter/camel-properties-starter/src/main/java/org/apache/camel/component/properties/springboot/PropertiesComponentConfiguration.java
@@ -72,20 +72,6 @@ public class PropertiesComponentConfiguration
      */
     private Boolean cache = true;
     /**
-     * Optional prefix prepended to property names before resolution.
-     */
-    private String propertyPrefix;
-    /**
-     * Optional suffix appended to property names before resolution.
-     */
-    private String propertySuffix;
-    /**
-     * If true, first attempt resolution of property name augmented with
-     * propertyPrefix and propertySuffix before falling back the plain property
-     * name specified. If false, only the augmented property name is searched.
-     */
-    private Boolean fallbackToUnaugmentedProperty = true;
-    /**
      * If false, the component does not attempt to find a default for the key by
      * looking after the colon separator.
      */
@@ -189,31 +175,6 @@ public class PropertiesComponentConfiguration
         this.cache = cache;
     }
 
-    public String getPropertyPrefix() {
-        return propertyPrefix;
-    }
-
-    public void setPropertyPrefix(String propertyPrefix) {
-        this.propertyPrefix = propertyPrefix;
-    }
-
-    public String getPropertySuffix() {
-        return propertySuffix;
-    }
-
-    public void setPropertySuffix(String propertySuffix) {
-        this.propertySuffix = propertySuffix;
-    }
-
-    public Boolean getFallbackToUnaugmentedProperty() {
-        return fallbackToUnaugmentedProperty;
-    }
-
-    public void setFallbackToUnaugmentedProperty(
-            Boolean fallbackToUnaugmentedProperty) {
-        this.fallbackToUnaugmentedProperty = fallbackToUnaugmentedProperty;
-    }
-
     public Boolean getDefaultFallbackEnabled() {
         return defaultFallbackEnabled;
     }