Snippets

Jonathan Hult WebCenter Content - intradoc.server.DirectoryLocator.getTempDirectory()

Created by Jonathan Hult
package intradoc.server;

import intradoc.common.ExecutionContext;
import intradoc.common.ExecutionContextAdaptor;
import intradoc.common.FileUtils;
import intradoc.common.LocaleUtils;
import intradoc.common.NativeOsUtils;
import intradoc.common.Report;
import intradoc.common.ServiceException;
import intradoc.common.SystemUtils;
import intradoc.data.DataException;
import intradoc.data.DataResultSet;
import intradoc.data.MapParameters;
import intradoc.data.Parameters;
import intradoc.data.PropParameters;
import intradoc.data.ResultSet;
import intradoc.data.Workspace;
import intradoc.filestore.FileStoreProvider;
import intradoc.filestore.FileStoreProviderLoader;
import intradoc.filestore.IdcFileDescriptor;
import intradoc.server.LegacyDirectoryLocator;
import intradoc.shared.LegacyDocumentPathBuilder;
import intradoc.shared.SharedObjects;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

public class DirectoryLocator extends LegacyDirectoryLocator {
    public static String getTempDirectory() {
            String tempDir = SharedObjects.getEnvironmentValue("TempDir");
            if (tempDir != null) {
                return tempDir;
            }
            tempDir = SharedObjects.getEnvironmentValue("VaultTempDir");
            if (tempDir != null) {
                return tempDir;
            }
            try {
                NativeOsUtils utils = new NativeOsUtils();
                tempDir = utils.getEnv("IDC_TMPDIR");
                if (tempDir != null) {
                    return tempDir;
                }
                tempDir = utils.getEnv("TMPDIR");
                if (tempDir != null) {
                    return tempDir;
                }
                tempDir = utils.getEnv("TEMP");
                if (tempDir != null) {
                    return tempDir;
                }
            }
            catch (Throwable ignore) {
                Report.trace(null, null, ignore);
            }
            String vaultDir = LegacyDirectoryLocator.getVaultDirectory();
            if (FileUtils.checkFile(vaultDir, false, true) == 0) {
                tempDir = vaultDir + "/~temp";
                return tempDir;
            }
            String[] lastResorts = new String[]{"/var/tmp", "/usr/tmp", "c:/tmp", "c:/temp", "/tmp"};
            for (int i = 0; i < lastResorts.length; ++i) {
                tempDir = lastResorts[i];
                if (FileUtils.checkFile(tempDir, false, true) != 0) continue;
                return tempDir;
            }
            throw new AssertionError((Object)"Unable to find a temporary directory.");
        }
}

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.