Author: [email protected]
Date: Fri Oct  7 13:54:49 2011
New Revision: 1453

Log:
AMDATU-437 Added updateFactoryConfig based on patch from paulb

Modified:
   
trunk/amdatu-core/itest/base/src/main/java/org/amdatu/core/itest/base/TestContext.java

Modified: 
trunk/amdatu-core/itest/base/src/main/java/org/amdatu/core/itest/base/TestContext.java
==============================================================================
--- 
trunk/amdatu-core/itest/base/src/main/java/org/amdatu/core/itest/base/TestContext.java
      (original)
+++ 
trunk/amdatu-core/itest/base/src/main/java/org/amdatu/core/itest/base/TestContext.java
      Fri Oct  7 13:54:49 2011
@@ -112,16 +112,8 @@
     }
 
     public void updateConfig(String pid, Properties properties) throws 
Exception {
-
-        // FIXME the getService(clas) option does not work!? Only when we 
explicitly use the
-        // ConfigurationAdmin class in the actual test resulting in it being 
imported in the
-        // probe it seems to work.
-        ServiceReference sr = 
m_bundleContext.getServiceReference(ConfigurationAdmin.class.getName());
-        assertThat("ConfigurationAdmin serviceReference unavailable", sr, 
is(notNullValue()));
-
-        ConfigurationAdmin configurationAdmin = (ConfigurationAdmin) 
m_bundleContext.getService(sr);
-        assertThat("ConfigurationAdmin service unavailable", 
configurationAdmin, is(notNullValue()));
-
+        ServiceReference sr = getConfigAdminServiceRef();
+        ConfigurationAdmin configurationAdmin = getConfigAdminService(sr);
         Configuration configuration =
             configurationAdmin.getConfiguration(pid, null);
         assertThat("Configuration not found for PID: " + pid, configuration, 
is(notNullValue()));
@@ -130,10 +122,29 @@
         m_bundleContext.ungetService(sr);
     }
 
+    public void updateFactoryConfig(String pid, Properties properties) throws 
Exception {
+        ServiceReference sr = getConfigAdminServiceRef();
+        ConfigurationAdmin configurationAdmin = getConfigAdminService(sr);
+        Configuration config = 
configurationAdmin.createFactoryConfiguration(pid, null);
+        config.update(properties);
+    }
+
     public ConfigurationAdmin getConfigurationAdmin() throws Exception {
         return getService(ConfigurationAdmin.class);
     }
 
+    private ConfigurationAdmin getConfigAdminService(ServiceReference sr) {
+        ConfigurationAdmin configurationAdmin = (ConfigurationAdmin) 
m_bundleContext.getService(sr);
+        assertThat("ConfigurationAdmin service unavailable", 
configurationAdmin, is(notNullValue()));
+        return configurationAdmin;
+    }
+
+    private ServiceReference getConfigAdminServiceRef() {
+        ServiceReference sr = 
m_bundleContext.getServiceReference(ConfigurationAdmin.class.getName());
+        assertThat("ConfigurationAdmin serviceReference unavailable", sr, 
is(notNullValue()));
+        return sr;
+    }
+
     private void createContextWorkDir() {
         try {
             File contextDir = File.createTempFile("testContext", 
Long.toString(System.nanoTime()));
_______________________________________________
Amdatu-commits mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-commits

Reply via email to