X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=server%2Fruntime%2Forg.argeo.server.ads%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fserver%2Fads%2FAdsContainer.java;h=febc3630318bcb9b40500a71fd16153138afecf5;hb=581b6f0af126457c76a09af00071a4de687f06c7;hp=4a36f721db3c749c133fede75eb40e5c5dafac5d;hpb=c6c3aa132f6559ac1e2fa015cf2efba92802eba0;p=lgpl%2Fargeo-commons.git diff --git a/server/runtime/org.argeo.server.ads/src/main/java/org/argeo/server/ads/AdsContainer.java b/server/runtime/org.argeo.server.ads/src/main/java/org/argeo/server/ads/AdsContainer.java index 4a36f721d..febc36303 100644 --- a/server/runtime/org.argeo.server.ads/src/main/java/org/argeo/server/ads/AdsContainer.java +++ b/server/runtime/org.argeo.server.ads/src/main/java/org/argeo/server/ads/AdsContainer.java @@ -1,6 +1,8 @@ package org.argeo.server.ads; import java.io.File; +import java.io.FileOutputStream; +import java.io.OutputStream; import java.util.ArrayList; import java.util.List; import java.util.Properties; @@ -11,6 +13,7 @@ import javax.naming.NamingException; import javax.naming.directory.InitialDirContext; import org.apache.commons.io.FileUtils; +import org.apache.commons.io.IOUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.directory.server.configuration.MutableServerStartupConfiguration; @@ -55,15 +58,23 @@ public class AdsContainer implements InitializingBean, DisposableBean { .getAbsolutePath() + File.separator + "ldif")); + // Deals with provided LDIF files if (ldifs.size() > 0) configuration.getLdifDirectory().mkdirs(); for (Resource ldif : ldifs) { - FileUtils.copyURLToFile(ldif.getURL(), new File(configuration - .getLdifDirectory().getAbsolutePath() - + File.separator + ldif.getFilename().replace(':', '_'))); - if (log.isDebugEnabled()) - log.debug("Copied " + ldif + " to LDIF directory " - + configuration.getLdifDirectory()); + File targetFile = new File(configuration.getLdifDirectory() + .getAbsolutePath() + + File.separator + ldif.getFilename().replace(':', '_')); + OutputStream output = null; + try { + output = new FileOutputStream(targetFile); + IOUtils.copy(ldif.getInputStream(), output); + if (log.isDebugEnabled()) + log.debug("Copied " + ldif + " to LDIF directory " + + configuration.getLdifDirectory()); + } finally { + IOUtils.closeQuietly(output); + } } Properties env = new Properties();