You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2011/12/22 18:20:14 UTC
svn commit: r1222359 -
/karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java
Author: jbonofre
Date: Thu Dec 22 17:20:14 2011
New Revision: 1222359
URL: http://svn.apache.org/viewvc?rev=1222359&view=rev
Log:
[KARAF-1122] Feature <configfile/> doesn't create the final file if the URL stream is fine
Modified:
karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java
Modified: karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java?rev=1222359&r1=1222358&r2=1222359&view=diff
==============================================================================
--- karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java (original)
+++ karaf/branches/karaf-2.2.x/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java Thu Dec 22 17:20:14 2011
@@ -731,17 +731,21 @@ public class FeaturesServiceImpl impleme
LOGGER.info("configFile already exist, don't override it");
return;
}
- if (!file.exists()) {
- File parentFile = file.getParentFile();
- if (parentFile != null)
- parentFile.mkdirs();
- file.createNewFile();
- }
-
- FileOutputStream fop = new FileOutputStream(file);
+
InputStream is = null;
+ FileOutputStream fop = null;
try {
is = new BufferedInputStream(new URL(fileLocation).openStream());
+
+ if (!file.exists()) {
+ File parentFile = file.getParentFile();
+ if (parentFile != null) {
+ parentFile.mkdirs();
+ }
+ file.createNewFile();
+ }
+
+ fop = new FileOutputStream(file);
int bytesRead = 0;
byte[] buffer = new byte[1024];
@@ -758,8 +762,10 @@ public class FeaturesServiceImpl impleme
} finally {
if (is != null)
is.close();
- fop.flush();
- fop.close();
+ if (fop != null) {
+ fop.flush();
+ fop.close();
+ }
}
}