You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by gn...@apache.org on 2011/01/03 09:30:07 UTC
svn commit: r1054550 -
/felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
Author: gnodet
Date: Mon Jan 3 08:30:07 2011
New Revision: 1054550
URL: http://svn.apache.org/viewvc?rev=1054550&view=rev
Log:
[FELIX-2756] NPE when loading configurations
Modified:
felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
Modified: felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
URL: http://svn.apache.org/viewvc/felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java?rev=1054550&r1=1054549&r2=1054550&view=diff
==============================================================================
--- felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java (original)
+++ felix/trunk/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java Mon Jan 3 08:30:07 2011
@@ -18,6 +18,18 @@
*/
package org.apache.felix.fileinstall.internal;
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.Map;
+import java.util.Properties;
+
import org.apache.felix.cm.file.ConfigurationHandler;
import org.apache.felix.fileinstall.ArtifactInstaller;
import org.apache.felix.fileinstall.internal.Util.Logger;
@@ -31,18 +43,6 @@ import org.osgi.service.cm.Configuration
import org.osgi.service.cm.ConfigurationEvent;
import org.osgi.service.cm.ConfigurationListener;
-import java.io.BufferedInputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Dictionary;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Map;
-import java.util.Properties;
-
/**
* ArtifactInstaller for configurations.
* TODO: This service lifecycle should be bound to the ConfigurationAdmin service lifecycle.
@@ -212,7 +212,8 @@ public class ConfigInstaller implements
String pid[] = parsePid(f.getName());
Configuration config = getConfiguration(f.getAbsolutePath(), pid[0], pid[1]);
- Hashtable old = new Hashtable(new DictionaryAsMap(config.getProperties()));
+ Dictionary props = config.getProperties();
+ Hashtable old = props != null ? new Hashtable(new DictionaryAsMap(props)) : new Hashtable();
old.remove( DirectoryWatcher.FILENAME );
old.remove( Constants.SERVICE_PID );
old.remove( ConfigurationAdmin.SERVICE_FACTORYPID );