tamaya-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From anat...@apache.org
Subject [7/7] incubator-tamaya git commit: TAMAYA-129: OSGI Support, fixed tests, impl. Basic OSGI support running now. TAMAYA-129: OSGI Support: added excludes for imported OSGI based classes from Felix.
Date Fri, 27 Nov 2015 09:14:24 GMT
TAMAYA-129: OSGI Support, fixed tests, impl. Basic OSGI support running now.
TAMAYA-129: OSGI Support: added excludes for imported OSGI based classes from Felix.


Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/22400ac7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/22400ac7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/22400ac7

Branch: refs/heads/master
Commit: 22400ac7d37acdaf6f1a657cb0d70c31a69aeeb8
Parents: 2b26283
Author: anatole <anatole@apache.org>
Authored: Fri Nov 27 10:14:07 2015 +0100
Committer: anatole <anatole@apache.org>
Committed: Fri Nov 27 10:14:07 2015 +0100

----------------------------------------------------------------------
 .../resources/findbugs/findbugs-exclude.xml     |  4 +-
 .../tamaya/integration/osgi/base/Activator.java | 35 +++++++----
 .../osgi/base/OSGIConfigRootMapper.java         | 37 ++++++++++++
 .../osgi/base/TamayaConfigAdminImpl.java        | 52 +++++++++++++++--
 .../osgi/base/TamayaConfigurationImpl.java      | 41 ++++++++-----
 .../osgi/base/TestConfigIntegration.java        | 61 ++++++++++++++------
 .../META-INF/javaconfiguration.properties       |  2 +-
 7 files changed, 180 insertions(+), 52 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/buildconfigurations/src/main/resources/findbugs/findbugs-exclude.xml
----------------------------------------------------------------------
diff --git a/buildconfigurations/src/main/resources/findbugs/findbugs-exclude.xml b/buildconfigurations/src/main/resources/findbugs/findbugs-exclude.xml
index 609f77f..17f61bb 100644
--- a/buildconfigurations/src/main/resources/findbugs/findbugs-exclude.xml
+++ b/buildconfigurations/src/main/resources/findbugs/findbugs-exclude.xml
@@ -119,11 +119,11 @@ under the License.
     </Match>
     <Match>
         <!-- Imported from APache Felix. -->
-        <Class name="org.apache.tamaya.integration.osgi.felix.FilePersistenceManager"/>
+        <Class name="org.apache.tamaya.integration.osgi.base.FilePersistenceManager"/>
     </Match>
     <Match>
         <!-- Imported from APache Felix. -->
-        <Class name="org.apache.tamaya.integration.osgi.felix.ConfigurationHandler"/>
+        <Class name="org.apache.tamaya.integration.osgi.base.ConfigurationHandler"/>
     </Match>
     <Match>
         <Class name="org.apache.tamaya.integration.osgi.injection.Activator"/>

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/Activator.java
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/Activator.java
b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/Activator.java
index 4a56be1..2ae03ed 100644
--- a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/Activator.java
+++ b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/Activator.java
@@ -29,13 +29,21 @@ import java.util.Hashtable;
 
 /**
  * Activator that registers the Tamaya based Service Class for {@link ConfigurationAdmin},
- * using a default service priority of {@code 0}.
+ * using a default service priority of {@code 0}. This behaviour is configurable based on
OSGI properties:
+ * <ul>
+ *     <li><b>org.tamaya.integration.osgi.cm.ranking, type: int</b> allows
to configure the OSGI service ranking for
+ *     Tamaya based ConfigurationAdmin instance. The default ranking used is 10.</li>
+ *     <li><b>org.tamaya.integration.osgi.cm.override, type: boolean</b></li>
allows to configure if Tamaya should
+ *     register its ConfigAdmin service. Default is true.
+ * </ul>
  */
 public class Activator implements BundleActivator {
 
-    private static final String SERVICE_RANKING_PROP = "org.tamaya.integration.cm.ranking";
+    private static final String SERVICE_RANKING_PROP = "org.tamaya.integration.osgi.cm.ranking";
 
-    private static final Integer DEFAULT_RANKING = - Integer.MAX_VALUE;
+    private static final String SERVICE_OVERRIDE_PROP = "org.tamaya.integration.osgi.cm.override";
+
+    private static final Integer DEFAULT_RANKING = 10;
 
     private BundleContext context;
 
@@ -43,16 +51,19 @@ public class Activator implements BundleActivator {
 
     @Override
     public void start(BundleContext context) throws Exception {
-        Dictionary<String,Object> props = new Hashtable<>();
-        String ranking = context.getProperty(SERVICE_RANKING_PROP);
-        if (ranking == null) {
-            props.put(Constants.SERVICE_RANKING, DEFAULT_RANKING);
-        } else{
-            props.put(Constants.SERVICE_RANKING, Integer.valueOf(ranking));
+        String val = context.getProperty(SERVICE_OVERRIDE_PROP);
+        if(val==null?true:Boolean.parseBoolean(val)){
+            Dictionary<String, Object> props = new Hashtable<>();
+            String ranking = context.getProperty(SERVICE_RANKING_PROP);
+            if (ranking == null) {
+                props.put(Constants.SERVICE_RANKING, DEFAULT_RANKING);
+            } else {
+                props.put(Constants.SERVICE_RANKING, Integer.valueOf(ranking));
+            }
+            this.context = context;
+            TamayaConfigAdminImpl cm = new TamayaConfigAdminImpl(context);
+            registration = context.registerService(ConfigurationAdmin.class, cm, props);
         }
-        this.context = context;
-        TamayaConfigAdminImpl cm = new TamayaConfigAdminImpl(context);
-        registration = context.registerService(ConfigurationAdmin.class, cm, props);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/OSGIConfigRootMapper.java
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/OSGIConfigRootMapper.java
b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/OSGIConfigRootMapper.java
new file mode 100644
index 0000000..910f211
--- /dev/null
+++ b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/OSGIConfigRootMapper.java
@@ -0,0 +1,37 @@
+/*
+ * 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.tamaya.integration.osgi.base;
+
+/**
+ * Mapping function for mapping Tamaya configuration sections to OSGI pids.
+ */
+// @FunctionalInterface
+public interface OSGIConfigRootMapper {
+
+    /**
+     * Map the given OSGI pid to a corresponding configuration section in Tamaya. Es an example
(and this is also the
+     * default implemented) a configuration mapping for {@code pid/factoryPid==myBundle}
could be {@code [bundle:myBundle]}.
+     * This mapping is used as a prefix when collecting the corresponding entries for the
OSGI configuration.
+     * @param pid the OSGI pid, or null
+     * @param factoryPid the OSGI factoryPid, or null
+     * @return return the corresponding config root section. For ommitting any root section
simply return an empty
+     * String.
+     */
+    String getTamayaConfigRoot(String pid, String factoryPid);
+}

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigAdminImpl.java
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigAdminImpl.java
b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigAdminImpl.java
index 389c267..e617e4b 100644
--- a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigAdminImpl.java
+++ b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigAdminImpl.java
@@ -42,15 +42,59 @@ import org.osgi.util.tracker.ServiceTracker;
  * Tamaya based implementation of an OSGI {@link ConfigurationAdmin}.
  */
 public class TamayaConfigAdminImpl implements ConfigurationAdmin {
+    /** the logger. */
+    private static final Logger LOG = Logger.getLogger(TamayaConfigAdminImpl.class.getName());
+
+    /** The OSGI context. */
     private final BundleContext context;
+    /** THe optional OSGI parent service. */
     private ConfigurationAdmin parent;
+    /** The cached configurations. */
     private Map<String,Configuration> configs = new ConcurrentHashMap<>();
-    private static final Logger LOG = Logger.getLogger(TamayaConfigAdminImpl.class.getName());
+    /** The configuration section mapper. */
+    private OSGIConfigRootMapper configRootMapper;
+
+    /**
+     * Loads the configuration toor mapper using the OSGIConfigRootMapper OSGI service resolving
mechanism. If no
+     * such service is available it loads the default mapper.
+     * @return the mapper to be used, bever null.
+     */
+    protected OSGIConfigRootMapper loadConfigRootMapper() {
+        OSGIConfigRootMapper mapper = null;
+        ServiceReference<OSGIConfigRootMapper> ref = context.getServiceReference(OSGIConfigRootMapper.class);
+        if(ref!=null){
+            mapper = context.getService(ref);
+        }
+        if(mapper==null){
+            mapper = new OSGIConfigRootMapper() {
+                @Override
+                public String getTamayaConfigRoot(String pid, String factoryPid) {
+                    if(pid!=null) {
+                        return "[bundle:" + pid +']';
+                    }
+                    else{
+                        return "[bundle:" + factoryPid +']';
+                    }
+                }
+                @Override
+                public String toString(){
+                    return "Default OSGIConfigRootMapper(pid -> [bundle:pid], factoryPid
-> [bundle:factoryPid]";
+                }
+            };
+        }
+        return mapper;
+    }
 
+    /**
+     * Create a new config.
+     * @param context the OSGI context
+     * @throws IOException if something fails.
+     */
     public TamayaConfigAdminImpl(BundleContext context) throws IOException {
         this.context = context;
+        this.configRootMapper = loadConfigRootMapper();
         ServiceReference<ConfigurationAdmin> ref = context.getServiceReference(ConfigurationAdmin.class);
-        this.parent = context.getService(ref);
+        this.parent = ref!=null?context.getService(ref):null;
         ServiceTracker<ManagedService, ManagedService> serviceTracker = new ServiceTracker<ManagedService,
                 ManagedService>(context, ManagedService.class, null) {
             @Override
@@ -123,7 +167,7 @@ public class TamayaConfigAdminImpl implements ConfigurationAdmin {
 
     @Override
     public Configuration createFactoryConfiguration(String factoryPid, String location) throws
IOException {
-        return new TamayaConfigurationImpl(factoryPid, null, this.parent);
+        return new TamayaConfigurationImpl(factoryPid, null, configRootMapper, this.parent);
     }
 
     @Override
@@ -133,7 +177,7 @@ public class TamayaConfigAdminImpl implements ConfigurationAdmin {
 
     @Override
     public Configuration getConfiguration(String pid) throws IOException {
-        return new TamayaConfigurationImpl(pid, null, this.parent);
+        return new TamayaConfigurationImpl(pid, null, configRootMapper, this.parent);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigurationImpl.java
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigurationImpl.java
b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigurationImpl.java
index 8c7a747..188f374 100644
--- a/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigurationImpl.java
+++ b/modules/integration/osgi/general/src/main/java/org/apache/tamaya/integration/osgi/base/TamayaConfigurationImpl.java
@@ -20,6 +20,8 @@ package org.apache.tamaya.integration.osgi.base;
 
 import java.io.IOException;
 import java.util.*;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
 import org.apache.tamaya.ConfigurationProvider;
 import org.apache.tamaya.functions.PropertyMatcher;
@@ -31,38 +33,45 @@ import org.osgi.service.cm.ConfigurationAdmin;
  * Tamaya based implementation of an OSGI {@link Configuration}.
  */
 public class TamayaConfigurationImpl implements Configuration {
+    private static final Logger LOG = Logger.getLogger(TamayaConfigurationImpl.class.getName());
     private final String pid;
     private final String factoryPid;
     private Map<String, String> properties = new HashMap<>();
     private org.apache.tamaya.Configuration config;
+    private OSGIConfigRootMapper configRootMapper;
 
-    public TamayaConfigurationImpl(String confPid, String factoryPid, ConfigurationAdmin
parent) {
+    /**
+     * Constructor.
+     * @param confPid the OSGI pid
+     * @param factoryPid the factory pid
+     * @param configRootMapper the mapper that maps the pids to a tamaya root section.
+     * @param parent the (optional delegating parent, used as default).
+     */
+    public TamayaConfigurationImpl(String confPid, String factoryPid, OSGIConfigRootMapper
configRootMapper,
+                                   ConfigurationAdmin parent) {
         this.pid = confPid;
         this.factoryPid = factoryPid;
+        this.configRootMapper = Objects.requireNonNull(configRootMapper);
         if(parent!=null){
             try {
                 Dictionary<String, Object> conf = parent.getConfiguration(confPid,
factoryPid).getProperties();
-                Enumeration<String> keys = conf.keys();
-                while(keys.hasMoreElements()){
-                    String key = keys.nextElement();
-                    this.properties.put(key, conf.get(key).toString());
+                if(conf!=null) {
+                    LOG.info("Configuration: Adding default parameters from parent: " + parent.getClass().getName());
+                    Enumeration<String> keys = conf.keys();
+                    while (keys.hasMoreElements()) {
+                        String key = keys.nextElement();
+                        this.properties.put(key, conf.get(key).toString());
+                    }
                 }
             } catch (IOException e) {
-                e.printStackTrace();
+                LOG.log(Level.WARNING, "Error reading parent OSGI config.", e);
             }
         }
         this.config = ConfigurationProvider.getConfiguration();
+        final String rootKey = configRootMapper.getTamayaConfigRoot(pid, factoryPid);
+        LOG.info("Configuration: Evaluating Tamaya configuration for '" + rootKey + "'.");
         this.properties.putAll(
-                config.with(ConfigurationFunctions.filter(new PropertyMatcher() {
-                    @Override
-                    public boolean test(String key, String value) {
-                        // TODO define name space / SPI
-                        if (key.startsWith("bundle." + pid)) {
-                            return true;
-                        }
-                        return false;
-            }
-        })).getProperties());
+                config.with(ConfigurationFunctions.section(rootKey, true)).getProperties());
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/test/java/org/apache/tamaya/integration/osgi/base/TestConfigIntegration.java
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/test/java/org/apache/tamaya/integration/osgi/base/TestConfigIntegration.java
b/modules/integration/osgi/general/src/test/java/org/apache/tamaya/integration/osgi/base/TestConfigIntegration.java
index 8c7bc82..bd1d95d 100644
--- a/modules/integration/osgi/general/src/test/java/org/apache/tamaya/integration/osgi/base/TestConfigIntegration.java
+++ b/modules/integration/osgi/general/src/test/java/org/apache/tamaya/integration/osgi/base/TestConfigIntegration.java
@@ -20,6 +20,7 @@ package org.apache.tamaya.integration.osgi.base;
 
 import org.apache.log4j.Priority;
 import org.apache.tamaya.ConfigurationProvider;
+import org.apache.tamaya.functions.ConfigurationFunctions;
 import org.apache.tamaya.spi.ServiceContext;
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.container.test.api.OperateOnDeployment;
@@ -39,11 +40,15 @@ import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.BundleException;
 import org.osgi.framework.ServiceReference;
+import org.osgi.service.cm.Configuration;
 import org.osgi.service.cm.ConfigurationAdmin;
 import org.osgi.util.tracker.ServiceTracker;
 
 import java.io.File;
 import java.io.InputStream;
+import java.net.URL;
+import java.util.Dictionary;
+import java.util.Enumeration;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
@@ -53,6 +58,10 @@ public class TestConfigIntegration{
 
     private static final String TAMAYA_VERSION = "0.2-incubating-SNAPSHOT";
 
+    static{
+        System.setProperty("[bundle:tamaya]systemTestKey", "foo");
+    }
+
 
     @ArquillianResource BundleContext context;
 
@@ -69,13 +78,15 @@ public class TestConfigIntegration{
                 builder.addImportPackages("org.junit", "org.apache.tamaya", "org.apache.tamaya.spi",
                         "org.apache.tamaya.core", "org.osgi.service.cm");
                 builder.addImportPackages(ServiceContext.class, ConfigurationProvider.class,
ConfigurationAdmin.class,
-                        ServiceTracker.class);
+                        ServiceTracker.class, ConfigurationFunctions.class);
                 builder.addBundleActivator(Activator.class);
                 return builder.openStream();
             }
         });
         archive.addClasses(Test.class, TestConfigIntegration.class, Priority.class, Activator.class,
-                            TamayaConfigAdminImpl.class, TamayaConfigurationImpl.class);
+                            TamayaConfigAdminImpl.class, TamayaConfigurationImpl.class, OSGIConfigRootMapper.class);
+        URL config = ClassLoader.getSystemClassLoader().getResource("META-INF/javaconfiguration.properties");
+        archive.addAsResource(config, "META-INF/javaconfiguration.properties");
         return archive;
     }
 
@@ -86,7 +97,6 @@ public class TestConfigIntegration{
                 .as(JavaArchive.class);
     }
 
-
     @Deployment(name="osgi.config",order=10)
     public static JavaArchive deployOSGIConfig() {
         return ShrinkWrap.create(ZipImporter.class, "felix.configadmin-1.8.8.jar")
@@ -94,24 +104,24 @@ public class TestConfigIntegration{
                 .as(JavaArchive.class);
     }
 
-//    @Deployment(name="osgi.event",order=9)
-//    public static JavaArchive deployEventAdmin() {
-//        return ShrinkWrap.create(ZipImporter.class, "felix.eventadmin-1.4.4.jar")
-//                .importFrom(new File("../test-bundles/org.apache.felix.eventadmin-1.4.4.jar"))
-//                .as(JavaArchive.class);
-//    }
-
     @Deployment(name="tamaya-api",order=1)
     public static JavaArchive deployTamayaAPI() {
         return ShrinkWrap.create(ZipImporter.class, "tamaya-api.jar")
-                .importFrom(getBundleFile("tamaya-api:"+TAMAYA_VERSION))
+                .importFrom(getBundleFile("org.apache.tamaya:tamaya-api:"+TAMAYA_VERSION))
                 .as(JavaArchive.class);
     }
 
     @Deployment(name="tamaya-core",order=2)
     public static JavaArchive deployTamayaCore() {
         return ShrinkWrap.create(ZipImporter.class, "tamaya-core.jar")
-                .importFrom(getBundleFile("tamaya-core:"+TAMAYA_VERSION))
+                .importFrom(getBundleFile("org.apache.tamaya:tamaya-core:"+TAMAYA_VERSION))
+                .as(JavaArchive.class);
+    }
+
+    @Deployment(name="tamaya-functions",order=2)
+    public static JavaArchive deployTamayaFunctions() {
+        return ShrinkWrap.create(ZipImporter.class, "tamaya-functions.jar")
+                .importFrom(getBundleFile("org.apache.tamaya.ext:tamaya-functions:"+TAMAYA_VERSION))
                 .as(JavaArchive.class);
     }
 
@@ -131,7 +141,7 @@ public class TestConfigIntegration{
         return Maven.configureResolver()
                 .withMavenCentralRepo(false)
                 .withClassPathResolution(true)
-                .resolve("org.apache.tamaya:" + artifactId).withoutTransitivity().asSingleFile();
+                .resolve(artifactId).withoutTransitivity().asSingleFile();
     }
 
 
@@ -155,13 +165,30 @@ public class TestConfigIntegration{
         assertNotNull(ConfigurationProvider.getConfiguration());
     }
 
-    @Test @Ignore
+    @Test
     public void testTamayaConfigAdminAvailable() throws Exception {
         ServiceReference<ConfigurationAdmin> ref = context.getServiceReference(ConfigurationAdmin.class);
-        assertNotNull(ref);
+        assertNotNull("OSGI ConfigAdmin not loaded.", ref);
+        ConfigurationAdmin osgiConfig = context.getService(ref);
+        assertNotNull("No config available from Tamaya through OSGI ConfigAdmin.", osgiConfig);
+        assertEquals("Override of OSGI ConfigAdmin with Tamaya did not work.", osgiConfig.getClass().getName(),
TamayaConfigAdminImpl.class.getName());
+    }
+
+    @Test
+    public void testLoadTamayaConfigFromConfigAdmin() throws Exception {
+        ServiceReference<ConfigurationAdmin> ref = context.getServiceReference(ConfigurationAdmin.class);
+        assertNotNull("OSGI ConfigAdmin not loaded.", ref);
         ConfigurationAdmin admin = context.getService(ref);
-        assertNotNull(admin);
-        assertEquals(admin.getClass().getName(), TamayaConfigAdminImpl.class.getName());
+        Configuration osgiConfig = admin.getConfiguration("tamaya");
+        assertNotNull("No config available from Tamaya through OSGI ConfigAdmin.", osgiConfig);
+        Dictionary<String,Object> config = osgiConfig.getProperties();
+        assertNotNull("No config entries loaded from Tamaya.", config);
+        assertEquals("Property 'testKey' not loaded from Tamaya.", "foo", config.get("systemTestKey"));
+        // TODO: Think on Resource loading in OSGI:
+        // this should work with normal resource loading but does not work with OSGI, since
this resource is not
+        // visible by default, when we have added resource loading as abstraction to the
ServiceContext, too.
+        // Reason: Resource Loading in OSGI works differently!
+//        assertEquals("Property 'testKey' not loaded from Tamaya.", "success!", config.get("my.testProperty"));
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/22400ac7/modules/integration/osgi/general/src/test/resources/META-INF/javaconfiguration.properties
----------------------------------------------------------------------
diff --git a/modules/integration/osgi/general/src/test/resources/META-INF/javaconfiguration.properties
b/modules/integration/osgi/general/src/test/resources/META-INF/javaconfiguration.properties
index b2b0d69..0f09ce9 100644
--- a/modules/integration/osgi/general/src/test/resources/META-INF/javaconfiguration.properties
+++ b/modules/integration/osgi/general/src/test/resources/META-INF/javaconfiguration.properties
@@ -15,4 +15,4 @@
 # specific language governing permissions and limitations
 # under the License.
 #
-__tamaya-test__.tamaya-test-property=success!
\ No newline at end of file
+[bundle:tamaya]my.testProperty=success!
\ No newline at end of file


Mime
View raw message