X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FDeployConfig.java;h=a2618922212b3ec34ebfba678f2c972ffb7f1042;hb=a9731453273884138ca48036fe6fe49da729c49b;hp=61e840e3226d1c5c513585a41b1f2ba49915edea;hpb=0243aa5633af84d8608ba912483dbaaaefac42f1;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DeployConfig.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DeployConfig.java index 61e840e32..a26189222 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/DeployConfig.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/DeployConfig.java @@ -34,14 +34,14 @@ class DeployConfig implements ConfigurationListener { private final Log log = LogFactory.getLog(getClass()); private final BundleContext bc = FrameworkUtil.getBundle(getClass()).getBundleContext(); - private Path deployConfigPath = KernelUtils.getOsgiInstancePath(KernelConstants.DEPLOY_CONFIG_PATH); + private static Path deployConfigPath = KernelUtils.getOsgiInstancePath(KernelConstants.DEPLOY_CONFIG_PATH); private SortedMap deployConfigs = new TreeMap<>(); - public DeployConfig(ConfigurationAdmin configurationAdmin,boolean isClean) { + public DeployConfig(ConfigurationAdmin configurationAdmin, boolean isClean) { // ConfigurationAdmin configurationAdmin = // bc.getService(bc.getServiceReference(ConfigurationAdmin.class)); try { - if (!Files.exists(deployConfigPath)) { // first init + if (!isInitialized()) { // first init firstInit(); } init(configurationAdmin, isClean); @@ -55,15 +55,15 @@ class DeployConfig implements ConfigurationListener { private void firstInit() throws IOException { Files.createDirectories(deployConfigPath.getParent()); - FirstInitProperties firstInit = new FirstInitProperties(); - firstInit.prepareInstanceArea(); + FirstInit firstInit = new FirstInit(); + FirstInit.prepareInstanceArea(); - if (!Files.exists(deployConfigPath))// could have juste been copied - Files.createFile(deployConfigPath); - - try (InputStream in = Files.newInputStream(deployConfigPath)) { - deployConfigs = new LdifParser().read(in); - } + if (!Files.exists(deployConfigPath)) + deployConfigs = new TreeMap<>(); + else// config file could have juste been copied by preparation + try (InputStream in = Files.newInputStream(deployConfigPath)) { + deployConfigs = new LdifParser().read(in); + } // node repository Dictionary nodeConfig = firstInit @@ -245,4 +245,8 @@ class DeployConfig implements ConfigurationListener { return null; } + static boolean isInitialized() { + return Files.exists(deployConfigPath); + } + }