/*
* $Id$
*
* Copyright 2011 Glencoe Software, Inc. All rights reserved.
* Use is subject to license terms supplied in LICENSE.txt
*/
package ome.services.util;
import java.io.File;
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Hook run by the context at startup to create needed directories for the server.
*
* @author Josh Moore, josh at glencoesoftware.com
* @since 4.3.0
*/
public class ServerDirectoryCheck implements Runnable {
public final static Logger log = LoggerFactory
.getLogger(ServerDirectoryCheck.class);
final String omeroDataDir;
public ServerDirectoryCheck(String omeroDataDir) {
this.omeroDataDir = omeroDataDir;
}
/**
* Synchronizes the ${omero.data.dir}/Server directory by creating a
* directory for any user who does not have one. Does not currently remove
* directories.
*/
public void run() {
createDirectories();
}
public void createDirectories() {
for (String directory : Arrays.asList("FullText", "ManagedRepository")) {
File f = new File(omeroDataDir + File.separator + directory);
if (f.mkdirs()) {
log.info("Creating " + f);
}
}
}
}