contain filesystem access
This commit is contained in:
parent
a3f078985b
commit
6ac4d6daef
|
@ -33,3 +33,6 @@ java.nio.file.Path#toFile()
|
|||
@defaultMessage Don't use deprecated lucene apis
|
||||
org.apache.lucene.index.DocsEnum
|
||||
org.apache.lucene.index.DocsAndPositionsEnum
|
||||
|
||||
java.nio.file.Paths @ Use PathUtils.get instead.
|
||||
java.nio.file.FileSystems#getDefault() @ use PathUtils.getDefault instead.
|
||||
|
|
|
@ -26,6 +26,8 @@ import org.elasticsearch.common.SuppressForbidden;
|
|||
import org.elasticsearch.common.collect.Tuple;
|
||||
import org.elasticsearch.common.inject.CreationException;
|
||||
import org.elasticsearch.common.inject.spi.Message;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.jna.Natives;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.logging.Loggers;
|
||||
|
@ -153,7 +155,7 @@ public class Bootstrap {
|
|||
|
||||
if (pidFile != null) {
|
||||
try {
|
||||
PidFile.create(Paths.get(pidFile), true);
|
||||
PidFile.create(PathUtils.get(pidFile), true);
|
||||
} catch (Exception e) {
|
||||
String errorMessage = buildErrorMessage("pid", e);
|
||||
sysError(errorMessage, true);
|
||||
|
|
|
@ -208,7 +208,7 @@ public final class FileSystemUtils {
|
|||
} else if (suffix != null) {
|
||||
if (!isSameFile(file, path)) {
|
||||
// If it already exists we try to copy this new version appending suffix to its name
|
||||
path = Paths.get(path.toString().concat(suffix));
|
||||
path = path.resolveSibling(path.getFileName().toString().concat(suffix));
|
||||
// We just move the file to new dir but with a new name (appended with suffix)
|
||||
Files.move(file, path, StandardCopyOption.REPLACE_EXISTING);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
/*
|
||||
* Licensed to Elasticsearch under one or more contributor
|
||||
* license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright
|
||||
* ownership. Elasticsearch licenses this file to you under
|
||||
* the Apache License, Version 2.0 (the "License"); you may
|
||||
* not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
package org.elasticsearch.common.io;
|
||||
|
||||
import org.elasticsearch.common.SuppressForbidden;
|
||||
|
||||
import java.net.URI;
|
||||
import java.nio.file.FileSystem;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
/**
|
||||
* Utilities for creating a Path from names,
|
||||
* or accessing the default FileSystem.
|
||||
* <p>
|
||||
* This class allows the default filesystem to
|
||||
* be changed during tests.
|
||||
*/
|
||||
@SuppressForbidden(reason = "accesses the default filesystem by design")
|
||||
public final class PathUtils {
|
||||
/** no instantiation */
|
||||
private PathUtils() {}
|
||||
|
||||
/** can be changed by tests */
|
||||
static FileSystem DEFAULT = FileSystems.getDefault();
|
||||
|
||||
/**
|
||||
* Returns a {@code Path} from name components.
|
||||
* <p>
|
||||
* This works just like {@code Paths.get()}.
|
||||
* Remember: just like {@code Paths.get()} this is NOT A STRING CONCATENATION
|
||||
* UTILITY FUNCTION.
|
||||
* <p>
|
||||
* Remember: this should almost never be used. Usually resolve
|
||||
* a path against an existing one!
|
||||
*/
|
||||
public static Path get(String first, String... more) {
|
||||
return DEFAULT.getPath(first, more);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a {@code Path} from a URI
|
||||
* <p>
|
||||
* This works just like {@code Paths.get()}.
|
||||
* <p>
|
||||
* Remember: this should almost never be used. Usually resolve
|
||||
* a path against an existing one!
|
||||
*/
|
||||
public static Path get(URI uri) {
|
||||
if (uri.getScheme().equalsIgnoreCase("file")) {
|
||||
return DEFAULT.provider().getPath(uri);
|
||||
} else {
|
||||
return Paths.get(uri);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the default FileSystem.
|
||||
*/
|
||||
public static FileSystem getDefaultFileSystem() {
|
||||
return DEFAULT;
|
||||
}
|
||||
}
|
|
@ -20,6 +20,8 @@
|
|||
package org.elasticsearch.env;
|
||||
|
||||
import org.elasticsearch.cluster.ClusterName;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.io.Streams;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
|
||||
|
@ -68,25 +70,25 @@ public class Environment {
|
|||
public Environment(Settings settings) {
|
||||
this.settings = settings;
|
||||
if (settings.get("path.home") != null) {
|
||||
homeFile = Paths.get(cleanPath(settings.get("path.home")));
|
||||
homeFile = PathUtils.get(cleanPath(settings.get("path.home")));
|
||||
} else {
|
||||
homeFile = Paths.get(System.getProperty("user.dir"));
|
||||
homeFile = PathUtils.get(System.getProperty("user.dir"));
|
||||
}
|
||||
|
||||
if (settings.get("path.conf") != null) {
|
||||
configFile = Paths.get(cleanPath(settings.get("path.conf")));
|
||||
configFile = PathUtils.get(cleanPath(settings.get("path.conf")));
|
||||
} else {
|
||||
configFile = homeFile.resolve("config");
|
||||
}
|
||||
|
||||
if (settings.get("path.plugins") != null) {
|
||||
pluginsFile = Paths.get(cleanPath(settings.get("path.plugins")));
|
||||
pluginsFile = PathUtils.get(cleanPath(settings.get("path.plugins")));
|
||||
} else {
|
||||
pluginsFile = homeFile.resolve("plugins");
|
||||
}
|
||||
|
||||
if (settings.get("path.work") != null) {
|
||||
workFile = Paths.get(cleanPath(settings.get("path.work")));
|
||||
workFile = PathUtils.get(cleanPath(settings.get("path.work")));
|
||||
} else {
|
||||
workFile = homeFile.resolve("work");
|
||||
}
|
||||
|
@ -97,7 +99,7 @@ public class Environment {
|
|||
dataFiles = new Path[dataPaths.length];
|
||||
dataWithClusterFiles = new Path[dataPaths.length];
|
||||
for (int i = 0; i < dataPaths.length; i++) {
|
||||
dataFiles[i] = Paths.get(dataPaths[i]);
|
||||
dataFiles[i] = PathUtils.get(dataPaths[i]);
|
||||
dataWithClusterFiles[i] = dataFiles[i].resolve(ClusterName.clusterNameFromSettings(settings).value());
|
||||
}
|
||||
} else {
|
||||
|
@ -106,7 +108,7 @@ public class Environment {
|
|||
}
|
||||
|
||||
if (settings.get("path.logs") != null) {
|
||||
logsFile = Paths.get(cleanPath(settings.get("path.logs")));
|
||||
logsFile = PathUtils.get(cleanPath(settings.get("path.logs")));
|
||||
} else {
|
||||
logsFile = homeFile.resolve("logs");
|
||||
}
|
||||
|
@ -178,7 +180,7 @@ public class Environment {
|
|||
public URL resolveConfig(String path) throws FailedToResolveConfigException {
|
||||
String origPath = path;
|
||||
// first, try it as a path on the file system
|
||||
Path f1 = Paths.get(path);
|
||||
Path f1 = PathUtils.get(path);
|
||||
if (Files.exists(f1)) {
|
||||
try {
|
||||
return f1.toUri().toURL();
|
||||
|
|
|
@ -22,6 +22,7 @@ package org.elasticsearch.env;
|
|||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.google.common.primitives.Ints;
|
||||
|
||||
import org.apache.lucene.store.*;
|
||||
import org.apache.lucene.util.Constants;
|
||||
import org.apache.lucene.util.IOUtils;
|
||||
|
@ -33,6 +34,7 @@ import org.elasticsearch.common.Nullable;
|
|||
import org.elasticsearch.common.component.AbstractComponent;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.unit.ByteSizeValue;
|
||||
|
@ -128,7 +130,8 @@ public class NodeEnvironment extends AbstractComponent implements Closeable {
|
|||
int maxLocalStorageNodes = settings.getAsInt("node.max_local_storage_nodes", 50);
|
||||
for (int possibleLockId = 0; possibleLockId < maxLocalStorageNodes; possibleLockId++) {
|
||||
for (int dirIndex = 0; dirIndex < environment.dataWithClusterFiles().length; dirIndex++) {
|
||||
Path dir = environment.dataWithClusterFiles()[dirIndex].resolve(Paths.get(NODES_FOLDER, Integer.toString(possibleLockId)));
|
||||
// TODO: wtf with resolve(get())
|
||||
Path dir = environment.dataWithClusterFiles()[dirIndex].resolve(PathUtils.get(NODES_FOLDER, Integer.toString(possibleLockId)));
|
||||
Files.createDirectories(dir);
|
||||
|
||||
try (Directory luceneDir = FSDirectory.open(dir, NativeFSLockFactory.INSTANCE)) {
|
||||
|
@ -616,7 +619,8 @@ public class NodeEnvironment extends AbstractComponent implements Closeable {
|
|||
final NodePath[] nodePaths = nodePaths();
|
||||
final Path[] shardLocations = new Path[nodePaths.length];
|
||||
for (int i = 0; i < nodePaths.length; i++) {
|
||||
shardLocations[i] = nodePaths[i].path.resolve(Paths.get(INDICES_FOLDER,
|
||||
// TODO: wtf with resolve(get())
|
||||
shardLocations[i] = nodePaths[i].path.resolve(PathUtils.get(INDICES_FOLDER,
|
||||
shardId.index().name(),
|
||||
Integer.toString(shardId.id())));
|
||||
}
|
||||
|
@ -730,9 +734,9 @@ public class NodeEnvironment extends AbstractComponent implements Closeable {
|
|||
// This assert is because this should be caught by MetaDataCreateIndexService
|
||||
assert customPathsEnabled;
|
||||
if (addNodeId) {
|
||||
return Paths.get(customDataDir, Integer.toString(this.localNodeId));
|
||||
return PathUtils.get(customDataDir, Integer.toString(this.localNodeId));
|
||||
} else {
|
||||
return Paths.get(customDataDir);
|
||||
return PathUtils.get(customDataDir);
|
||||
}
|
||||
} else {
|
||||
throw new ElasticsearchIllegalArgumentException("no custom " + IndexMetaData.SETTING_DATA_PATH + " setting available");
|
||||
|
|
|
@ -25,6 +25,7 @@ import org.elasticsearch.ElasticsearchException;
|
|||
import org.elasticsearch.common.component.AbstractLifecycleComponent;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.env.Environment;
|
||||
import org.elasticsearch.node.service.NodeService;
|
||||
|
@ -175,7 +176,7 @@ public class HttpServer extends AbstractLifecycleComponent<HttpServer> {
|
|||
// Convert file separators.
|
||||
sitePath = sitePath.replace("/", separator);
|
||||
// this is a plugin provided site, serve it as static files from the plugin location
|
||||
Path file = FileSystemUtils.append(siteFile, Paths.get(sitePath), 0);
|
||||
Path file = FileSystemUtils.append(siteFile, PathUtils.get(sitePath), 0);
|
||||
if (!Files.exists(file) || Files.isHidden(file)) {
|
||||
channel.sendResponse(new BytesRestResponse(NOT_FOUND));
|
||||
return;
|
||||
|
|
|
@ -45,6 +45,7 @@ import org.elasticsearch.common.collect.Tuple;
|
|||
import org.elasticsearch.common.compress.CompressedString;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.io.Streams;
|
||||
import org.elasticsearch.common.lucene.search.AndFilter;
|
||||
import org.elasticsearch.common.lucene.search.NotFilter;
|
||||
|
@ -180,7 +181,7 @@ public class MapperService extends AbstractIndexComponent {
|
|||
} catch (FailedToResolveConfigException e) {
|
||||
// not there, default to the built in one
|
||||
try {
|
||||
percolatorMappingUrl = Paths.get(percolatorMappingLocation).toUri().toURL();
|
||||
percolatorMappingUrl = PathUtils.get(percolatorMappingLocation).toUri().toURL();
|
||||
} catch (MalformedURLException e1) {
|
||||
throw new FailedToResolveConfigException("Failed to resolve default percolator mapping location [" + percolatorMappingLocation + "]");
|
||||
}
|
||||
|
@ -231,7 +232,7 @@ public class MapperService extends AbstractIndexComponent {
|
|||
} catch (FailedToResolveConfigException e) {
|
||||
// not there, default to the built in one
|
||||
try {
|
||||
mappingUrl = Paths.get(mappingLocation).toUri().toURL();
|
||||
mappingUrl = PathUtils.get(mappingLocation).toUri().toURL();
|
||||
} catch (MalformedURLException e1) {
|
||||
throw new FailedToResolveConfigException("Failed to resolve dynamic mapping location [" + mappingLocation + "]");
|
||||
}
|
||||
|
|
|
@ -146,9 +146,9 @@ public interface Translog extends IndexShardComponent, Closeable, Accountable {
|
|||
|
||||
/**
|
||||
* Returns the translog file with the given id as a Path. This
|
||||
* will return a relative path.
|
||||
* will return a filename.
|
||||
*/
|
||||
Path getPath(long translogId);
|
||||
String getPath(long translogId);
|
||||
|
||||
/**
|
||||
* return stats
|
||||
|
|
|
@ -431,8 +431,8 @@ public class FsTranslog extends AbstractIndexShardComponent implements Translog
|
|||
}
|
||||
|
||||
@Override
|
||||
public Path getPath(long translogId) {
|
||||
return Paths.get(TRANSLOG_FILE_PREFIX + translogId);
|
||||
public String getPath(long translogId) {
|
||||
return TRANSLOG_FILE_PREFIX + translogId;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -473,14 +473,14 @@ public class FsTranslog extends AbstractIndexShardComponent implements Translog
|
|||
|
||||
@Override
|
||||
public OperationIterator openIterator(long translogId) throws IOException {
|
||||
final Path translogName = getPath(translogId);
|
||||
final String translogName = getPath(translogId);
|
||||
Path recoveringTranslogFile = null;
|
||||
logger.trace("try open translog file {} locations: {}", translogName, Arrays.toString(locations()));
|
||||
OUTER:
|
||||
for (Path translogLocation : locations()) {
|
||||
// we have to support .recovering since it's a leftover from previous version but might still be on the filesystem
|
||||
// we used to rename the foo into foo.recovering since foo was reused / overwritten but we fixed that in 2.0
|
||||
for (Path recoveryFiles : FileSystemUtils.files(translogLocation, translogName.getFileName() + "{.recovering,}")) {
|
||||
for (Path recoveryFiles : FileSystemUtils.files(translogLocation, translogName + "{.recovering,}")) {
|
||||
logger.trace("translog file found in {}", recoveryFiles);
|
||||
recoveringTranslogFile = recoveryFiles;
|
||||
break OUTER;
|
||||
|
|
|
@ -22,11 +22,13 @@ import com.google.common.cache.CacheBuilder;
|
|||
import com.google.common.cache.CacheLoader;
|
||||
import com.google.common.cache.LoadingCache;
|
||||
import com.google.common.util.concurrent.UncheckedExecutionException;
|
||||
|
||||
import org.apache.lucene.analysis.hunspell.Dictionary;
|
||||
import org.elasticsearch.ElasticsearchException;
|
||||
import org.elasticsearch.common.component.AbstractComponent;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.env.Environment;
|
||||
|
@ -116,7 +118,7 @@ public class HunspellService extends AbstractComponent {
|
|||
private Path resolveHunspellDirectory(Settings settings, Environment env) {
|
||||
String location = settings.get(HUNSPELL_LOCATION, null);
|
||||
if (location != null) {
|
||||
return Paths.get(location);
|
||||
return PathUtils.get(location);
|
||||
}
|
||||
return env.configFile().resolve("hunspell");
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.plugins;
|
|||
|
||||
import com.google.common.base.Charsets;
|
||||
import com.google.common.collect.*;
|
||||
|
||||
import org.apache.lucene.util.Constants;
|
||||
import org.apache.lucene.util.IOUtils;
|
||||
import org.elasticsearch.ElasticsearchException;
|
||||
|
@ -35,6 +36,7 @@ import org.elasticsearch.common.component.AbstractComponent;
|
|||
import org.elasticsearch.common.component.LifecycleComponent;
|
||||
import org.elasticsearch.common.inject.Module;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.lucene.Lucene;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
|
@ -61,7 +63,7 @@ public class PluginsService extends AbstractComponent {
|
|||
public static final String ES_PLUGIN_PROPERTIES = "es-plugin.properties";
|
||||
public static final String LOAD_PLUGIN_FROM_CLASSPATH = "plugins.load_classpath_plugins";
|
||||
|
||||
private static final PathMatcher PLUGIN_LIB_MATCHER = FileSystems.getDefault().getPathMatcher("glob:**.{jar,zip}");
|
||||
static final String PLUGIN_LIB_PATTERN = "glob:**.{jar,zip}";
|
||||
public static final String PLUGINS_CHECK_LUCENE_KEY = "plugins.check_lucene";
|
||||
public static final String PLUGINS_INFO_REFRESH_INTERVAL_KEY = "plugins.info_refresh_interval";
|
||||
|
||||
|
@ -393,9 +395,11 @@ public class PluginsService extends AbstractComponent {
|
|||
libFiles.addAll(Arrays.asList(files(libLocation)));
|
||||
}
|
||||
|
||||
PathMatcher matcher = PathUtils.getDefaultFileSystem().getPathMatcher(PLUGIN_LIB_PATTERN);
|
||||
|
||||
// if there are jars in it, add it as well
|
||||
for (Path libFile : libFiles) {
|
||||
if (!hasLibExtension(libFile)) {
|
||||
if (!matcher.matches(libFile)) {
|
||||
continue;
|
||||
}
|
||||
addURL.invoke(classLoader, libFile.toUri().toURL());
|
||||
|
@ -407,10 +411,6 @@ public class PluginsService extends AbstractComponent {
|
|||
}
|
||||
}
|
||||
|
||||
protected static boolean hasLibExtension(Path lib) {
|
||||
return PLUGIN_LIB_MATCHER.matches(lib);
|
||||
}
|
||||
|
||||
private Path[] files(Path from) throws IOException {
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(from)) {
|
||||
return Iterators.toArray(stream.iterator(), Path.class);
|
||||
|
|
|
@ -23,6 +23,8 @@ import org.elasticsearch.common.blobstore.BlobPath;
|
|||
import org.elasticsearch.common.blobstore.BlobStore;
|
||||
import org.elasticsearch.common.blobstore.fs.FsBlobStore;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.unit.ByteSizeValue;
|
||||
import org.elasticsearch.index.snapshots.IndexShardRepository;
|
||||
import org.elasticsearch.repositories.RepositoryException;
|
||||
|
@ -74,7 +76,7 @@ public class FsRepository extends BlobStoreRepository {
|
|||
logger.warn("using local fs location for gateway, should be changed to be a shared location across nodes");
|
||||
throw new RepositoryException(name.name(), "missing location");
|
||||
} else {
|
||||
locationFile = Paths.get(location);
|
||||
locationFile = PathUtils.get(location);
|
||||
}
|
||||
blobStore = new FsBlobStore(settings, locationFile);
|
||||
this.chunkSize = repositorySettings.settings().getAsBytesSize("chunk_size", settings.getAsBytesSize("repositories.fs.chunk_size", null));
|
||||
|
|
|
@ -27,7 +27,9 @@ import com.carrotsearch.randomizedtesting.rules.NoClassHooksShadowingRule;
|
|||
import com.carrotsearch.randomizedtesting.rules.NoInstanceHooksOverridesRule;
|
||||
import com.carrotsearch.randomizedtesting.rules.StaticFieldsInvariantRule;
|
||||
import com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule;
|
||||
|
||||
import org.apache.lucene.util.LuceneTestCase.SuppressCodecs;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.lucene.Lucene;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.util.concurrent.EsExecutors;
|
||||
|
@ -190,7 +192,7 @@ public abstract class AbstractRandomizedTest extends RandomizedTest {
|
|||
String s = System.getProperty("tempDir", System.getProperty("java.io.tmpdir"));
|
||||
if (s == null)
|
||||
throw new RuntimeException("To run tests, you need to define system property 'tempDir' or 'java.io.tmpdir'.");
|
||||
TEMP_DIR = Paths.get(s);
|
||||
TEMP_DIR = PathUtils.get(s);
|
||||
try {
|
||||
Files.createDirectories(TEMP_DIR);
|
||||
} catch (IOException e) {
|
||||
|
|
|
@ -20,8 +20,11 @@ package org.elasticsearch;
|
|||
|
||||
import com.google.common.base.Joiner;
|
||||
import com.google.common.collect.Sets;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.test.ElasticsearchLuceneTestCase;
|
||||
import org.elasticsearch.test.ElasticsearchTestCase;
|
||||
import org.elasticsearch.test.ElasticsearchTokenStreamTestCase;
|
||||
|
@ -51,10 +54,10 @@ public class NamingConventionTests extends ElasticsearchTestCase {
|
|||
String[] packages = {"org.elasticsearch", "org.apache.lucene"};
|
||||
for (final String packageName : packages) {
|
||||
final String path = "/" + packageName.replace('.', '/');
|
||||
final Path startPath = Paths.get(NamingConventionTests.class.getResource(path).toURI());
|
||||
final Set<Path> ignore = Sets.newHashSet(Paths.get("/org/elasticsearch/stresstest"), Paths.get("/org/elasticsearch/benchmark/stress"));
|
||||
final Path startPath = PathUtils.get(NamingConventionTests.class.getResource(path).toURI());
|
||||
final Set<Path> ignore = Sets.newHashSet(PathUtils.get("/org/elasticsearch/stresstest"), PathUtils.get("/org/elasticsearch/benchmark/stress"));
|
||||
Files.walkFileTree(startPath, new FileVisitor<Path>() {
|
||||
private Path pkgPrefix = Paths.get(path).getParent();
|
||||
private Path pkgPrefix = PathUtils.get(path).getParent();
|
||||
@Override
|
||||
public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
|
||||
Path next = pkgPrefix.resolve(dir.getFileName());
|
||||
|
|
|
@ -25,6 +25,7 @@ import org.apache.lucene.document.StringField;
|
|||
import org.apache.lucene.index.*;
|
||||
import org.apache.lucene.store.FSDirectory;
|
||||
import org.elasticsearch.common.StopWatch;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.lucene.Lucene;
|
||||
import org.elasticsearch.common.lucene.uid.Versions;
|
||||
import org.elasticsearch.common.unit.SizeValue;
|
||||
|
@ -40,7 +41,7 @@ public class LuceneUidScanBenchmark {
|
|||
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
FSDirectory dir = FSDirectory.open(Paths.get("work/test"));
|
||||
FSDirectory dir = FSDirectory.open(PathUtils.get("work/test"));
|
||||
IndexWriter writer = new IndexWriter(dir, new IndexWriterConfig(Lucene.STANDARD_ANALYZER));
|
||||
|
||||
final int NUMBER_OF_THREADS = 2;
|
||||
|
|
|
@ -20,6 +20,7 @@ package org.elasticsearch.benchmark.fs;
|
|||
|
||||
import org.apache.lucene.util.IOUtils;
|
||||
import org.elasticsearch.common.StopWatch;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.unit.ByteSizeValue;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
@ -35,7 +36,7 @@ import java.util.Random;
|
|||
public class FsAppendBenchmark {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
Path path = Paths.get("work/test.log");
|
||||
Path path = PathUtils.get("work/test.log");
|
||||
IOUtils.deleteFilesIgnoringExceptions(path);
|
||||
|
||||
int CHUNK = (int) ByteSizeValue.parseBytesSizeValue("1k").bytes();
|
||||
|
|
|
@ -25,6 +25,7 @@ import org.elasticsearch.action.search.SearchResponse;
|
|||
import org.elasticsearch.action.search.SearchType;
|
||||
import org.elasticsearch.client.Client;
|
||||
import org.elasticsearch.common.StopWatch;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.lucene.search.function.CombineFunction;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||
|
@ -150,7 +151,7 @@ public class BasicScriptBenchmark {
|
|||
}
|
||||
|
||||
public static void writeHelperFunction() throws IOException {
|
||||
try (BufferedWriter out = Files.newBufferedWriter(Paths.get("addToPlot.m"), StandardCharsets.UTF_8)) {
|
||||
try (BufferedWriter out = Files.newBufferedWriter(PathUtils.get("addToPlot.m"), StandardCharsets.UTF_8)) {
|
||||
out.write("function handle = addToPlot(numTerms, perDoc, color, linestyle, linewidth)\n" + "handle = line(numTerms, perDoc);\n"
|
||||
+ "set(handle, 'color', color);\n" + "set(handle, 'linestyle',linestyle);\n" + "set(handle, 'LineWidth',linewidth);\n"
|
||||
+ "end\n");
|
||||
|
@ -161,7 +162,7 @@ public class BasicScriptBenchmark {
|
|||
if (args.length == 0) {
|
||||
return;
|
||||
}
|
||||
try (BufferedWriter out = Files.newBufferedWriter(Paths.get(args[0]), StandardCharsets.UTF_8)) {
|
||||
try (BufferedWriter out = Files.newBufferedWriter(PathUtils.get(args[0]), StandardCharsets.UTF_8)) {
|
||||
out.write("#! /usr/local/bin/octave -qf");
|
||||
out.write("\n\n\n\n");
|
||||
out.write("######################################\n");
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.bwcompat;
|
|||
|
||||
import com.carrotsearch.randomizedtesting.LifecycleScope;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
|
||||
import org.apache.lucene.index.IndexWriter;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
import org.apache.lucene.util.TestUtil;
|
||||
|
@ -30,6 +31,7 @@ import org.elasticsearch.action.get.GetResponse;
|
|||
import org.elasticsearch.action.search.SearchRequestBuilder;
|
||||
import org.elasticsearch.action.search.SearchResponse;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.unit.TimeValue;
|
||||
|
@ -88,7 +90,7 @@ public class OldIndexBackwardsCompatibilityTests extends ElasticsearchIntegratio
|
|||
public static void initIndexesList() throws Exception {
|
||||
indexes = new ArrayList<>();
|
||||
URL dirUrl = OldIndexBackwardsCompatibilityTests.class.getResource(".");
|
||||
Path dir = Paths.get(dirUrl.toURI());
|
||||
Path dir = PathUtils.get(dirUrl.toURI());
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir, "index-*.zip")) {
|
||||
for (Path path : stream) {
|
||||
indexes.add(path.getFileName().toString());
|
||||
|
@ -157,7 +159,7 @@ public class OldIndexBackwardsCompatibilityTests extends ElasticsearchIntegratio
|
|||
String indexName = indexFile.replace(".zip", "").toLowerCase(Locale.ROOT);
|
||||
|
||||
// decompress the index
|
||||
Path backwardsIndex = Paths.get(getClass().getResource(indexFile).toURI());
|
||||
Path backwardsIndex = PathUtils.get(getClass().getResource(indexFile).toURI());
|
||||
try (InputStream stream = Files.newInputStream(backwardsIndex)) {
|
||||
TestUtil.unzip(stream, unzipDir);
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ import org.elasticsearch.cluster.ClusterState;
|
|||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
import org.elasticsearch.cluster.metadata.IndexTemplateMetaData;
|
||||
import org.elasticsearch.cluster.routing.allocation.decider.FilterAllocationDecider;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.rest.RestStatus;
|
||||
import org.elasticsearch.snapshots.AbstractSnapshotTests;
|
||||
|
@ -94,7 +95,7 @@ public class RestoreBackwardsCompatTests extends AbstractSnapshotTests {
|
|||
|
||||
public static List<String> repoVersions() throws Exception {
|
||||
List<String> repoVersions = newArrayList();
|
||||
Path repoFiles = Paths.get(RestoreBackwardsCompatTests.class.getResource(".").toURI());
|
||||
Path repoFiles = PathUtils.get(RestoreBackwardsCompatTests.class.getResource(".").toURI());
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(repoFiles, "repo-*.zip")) {
|
||||
for (Path entry : stream) {
|
||||
String fileName = entry.getFileName().toString();
|
||||
|
|
|
@ -24,6 +24,7 @@ import org.elasticsearch.action.admin.indices.settings.get.GetSettingsResponse;
|
|||
import org.elasticsearch.action.get.GetResponse;
|
||||
import org.elasticsearch.action.search.SearchResponse;
|
||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.node.Node;
|
||||
|
@ -48,7 +49,7 @@ public class RoutingBackwardCompatibilityUponUpgradeTests extends ElasticsearchI
|
|||
}
|
||||
|
||||
private void test(String name, Class<? extends HashFunction> expectedHashFunction, boolean expectedUseType) throws Exception {
|
||||
Path zippedIndexDir = Paths.get(getClass().getResource("/org/elasticsearch/cluster/routing/" + name + ".zip").toURI());
|
||||
Path zippedIndexDir = PathUtils.get(getClass().getResource("/org/elasticsearch/cluster/routing/" + name + ".zip").toURI());
|
||||
Settings baseSettings = prepareBackwardsDataDir(zippedIndexDir);
|
||||
internalCluster().startNode(ImmutableSettings.builder()
|
||||
.put(baseSettings)
|
||||
|
|
|
@ -53,7 +53,7 @@ public class FileSystemUtilsTests extends ElasticsearchTestCase {
|
|||
|
||||
// We first copy sources test files from src/test/resources
|
||||
// Because after when the test runs, src files are moved to their destination
|
||||
final Path path = Paths.get(FileSystemUtilsTests.class.getResource("/org/elasticsearch/common/io/copyappend").toURI());
|
||||
final Path path = PathUtils.get(FileSystemUtilsTests.class.getResource("/org/elasticsearch/common/io/copyappend").toURI());
|
||||
FileSystemUtils.copyDirectoryRecursively(path, src);
|
||||
}
|
||||
|
||||
|
@ -161,13 +161,13 @@ public class FileSystemUtilsTests extends ElasticsearchTestCase {
|
|||
|
||||
@Test
|
||||
public void testAppend() {
|
||||
assertEquals(FileSystemUtils.append(Paths.get("/foo/bar"), Paths.get("/hello/world/this_is/awesome"), 0),
|
||||
Paths.get("/foo/bar/hello/world/this_is/awesome"));
|
||||
assertEquals(FileSystemUtils.append(PathUtils.get("/foo/bar"), PathUtils.get("/hello/world/this_is/awesome"), 0),
|
||||
PathUtils.get("/foo/bar/hello/world/this_is/awesome"));
|
||||
|
||||
assertEquals(FileSystemUtils.append(Paths.get("/foo/bar"), Paths.get("/hello/world/this_is/awesome"), 2),
|
||||
Paths.get("/foo/bar/this_is/awesome"));
|
||||
assertEquals(FileSystemUtils.append(PathUtils.get("/foo/bar"), PathUtils.get("/hello/world/this_is/awesome"), 2),
|
||||
PathUtils.get("/foo/bar/this_is/awesome"));
|
||||
|
||||
assertEquals(FileSystemUtils.append(Paths.get("/foo/bar"), Paths.get("/hello/world/this_is/awesome"), 1),
|
||||
Paths.get("/foo/bar/world/this_is/awesome"));
|
||||
assertEquals(FileSystemUtils.append(PathUtils.get("/foo/bar"), PathUtils.get("/hello/world/this_is/awesome"), 1),
|
||||
PathUtils.get("/foo/bar/world/this_is/awesome"));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import org.apache.log4j.Level;
|
|||
import org.apache.log4j.Logger;
|
||||
import org.apache.log4j.spi.LocationInfo;
|
||||
import org.apache.log4j.spi.LoggingEvent;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
|
@ -129,7 +130,7 @@ public class Log4jESLoggerTests extends ElasticsearchTestCase {
|
|||
|
||||
private static Path resolveConfigDir() throws Exception {
|
||||
URL url = Log4jESLoggerTests.class.getResource("config");
|
||||
return Paths.get(url.toURI());
|
||||
return PathUtils.get(url.toURI());
|
||||
}
|
||||
|
||||
private static class TestAppender extends AppenderSkeleton {
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.common.logging.log4j;
|
|||
|
||||
import org.apache.log4j.Appender;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.logging.Loggers;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
|
@ -145,7 +146,7 @@ public class LoggingConfigurationTests extends ElasticsearchTestCase {
|
|||
|
||||
private static Path resolveConfigDir() throws Exception {
|
||||
URL url = LoggingConfigurationTests.class.getResource("config");
|
||||
return Paths.get(url.toURI());
|
||||
return PathUtils.get(url.toURI());
|
||||
}
|
||||
|
||||
private static String loggingConfiguration(String suffix) {
|
||||
|
|
|
@ -22,6 +22,7 @@ import org.apache.lucene.store.LockObtainFailedException;
|
|||
import org.apache.lucene.util.IOUtils;
|
||||
import org.elasticsearch.ElasticsearchIllegalStateException;
|
||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.util.concurrent.AbstractRunnable;
|
||||
|
@ -69,7 +70,7 @@ public class NodeEnvironmentTests extends ElasticsearchTestCase {
|
|||
assertEquals(env.nodeDataPaths().length, dataPaths.length);
|
||||
|
||||
for (int i = 0; i < dataPaths.length; i++) {
|
||||
assertTrue(env.nodeDataPaths()[i].startsWith(Paths.get(dataPaths[i])));
|
||||
assertTrue(env.nodeDataPaths()[i].startsWith(PathUtils.get(dataPaths[i])));
|
||||
}
|
||||
env.close();
|
||||
assertTrue("LockedShards: " + env.lockedShards(), env.lockedShards().isEmpty());
|
||||
|
@ -312,7 +313,7 @@ public class NodeEnvironmentTests extends ElasticsearchTestCase {
|
|||
assertTrue("settings with path_data should have a custom data path", NodeEnvironment.hasCustomDataPath(s2));
|
||||
|
||||
assertThat(env.shardDataPaths(sid, s1), equalTo(env.shardPaths(sid)));
|
||||
assertThat(env.shardDataPaths(sid, s2), equalTo(new Path[] {Paths.get("/tmp/foo/0/myindex/0")}));
|
||||
assertThat(env.shardDataPaths(sid, s2), equalTo(new Path[] {PathUtils.get("/tmp/foo/0/myindex/0")}));
|
||||
|
||||
assertThat("shard paths with a custom data_path should contain only regular paths",
|
||||
env.shardPaths(sid),
|
||||
|
@ -326,7 +327,7 @@ public class NodeEnvironmentTests extends ElasticsearchTestCase {
|
|||
ImmutableSettings.builder().put(NodeEnvironment.ADD_NODE_ID_TO_CUSTOM_PATH, false).build());
|
||||
|
||||
assertThat(env2.shardDataPaths(sid, s1), equalTo(env2.shardPaths(sid)));
|
||||
assertThat(env2.shardDataPaths(sid, s2), equalTo(new Path[] {Paths.get("/tmp/foo/myindex/0")}));
|
||||
assertThat(env2.shardDataPaths(sid, s2), equalTo(new Path[] {PathUtils.get("/tmp/foo/myindex/0")}));
|
||||
|
||||
assertThat("shard paths with a custom data_path should contain only regular paths",
|
||||
env2.shardPaths(sid),
|
||||
|
@ -342,7 +343,7 @@ public class NodeEnvironmentTests extends ElasticsearchTestCase {
|
|||
private Path[] stringsToPaths(String[] strings, String additional) {
|
||||
Path[] locations = new Path[strings.length];
|
||||
for (int i = 0; i < strings.length; i++) {
|
||||
locations[i] = Paths.get(strings[i], additional);
|
||||
locations[i] = PathUtils.get(strings[i], additional);
|
||||
}
|
||||
return locations;
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ import com.carrotsearch.randomizedtesting.LifecycleScope;
|
|||
import com.carrotsearch.randomizedtesting.generators.RandomPicks;
|
||||
import com.google.common.base.Charsets;
|
||||
import com.google.common.base.Predicate;
|
||||
|
||||
import org.apache.lucene.codecs.CodecUtil;
|
||||
import org.apache.lucene.index.CheckIndex;
|
||||
import org.apache.lucene.index.IndexFileNames;
|
||||
|
@ -45,6 +46,7 @@ import org.elasticsearch.cluster.routing.allocation.decider.EnableAllocationDeci
|
|||
import org.elasticsearch.cluster.routing.allocation.decider.ThrottlingAllocationDecider;
|
||||
import org.elasticsearch.common.Nullable;
|
||||
import org.elasticsearch.common.bytes.BytesArray;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.io.stream.BytesStreamOutput;
|
||||
import org.elasticsearch.common.lucene.Lucene;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
|
@ -528,7 +530,7 @@ public class CorruptedFileTest extends ElasticsearchIntegrationTest {
|
|||
for (FsStats.Info info : nodeStatses.getNodes()[0].getFs()) {
|
||||
String path = info.getPath();
|
||||
final String relativeDataLocationPath = "indices/test/" + Integer.toString(shardRouting.getId()) + "/index";
|
||||
Path file = Paths.get(path).resolve(relativeDataLocationPath);
|
||||
Path file = PathUtils.get(path).resolve(relativeDataLocationPath);
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(file)) {
|
||||
for (Path item : stream) {
|
||||
if (Files.isRegularFile(item) && "write.lock".equals(item.getFileName().toString()) == false) {
|
||||
|
@ -637,7 +639,7 @@ public class CorruptedFileTest extends ElasticsearchIntegrationTest {
|
|||
List<Path> files = new ArrayList<>();
|
||||
for (FsStats.Info info : nodeStatses.getNodes()[0].getFs()) {
|
||||
String path = info.getPath();
|
||||
Path file = Paths.get(path).resolve("indices/test/" + Integer.toString(routing.getId()) + "/index");
|
||||
Path file = PathUtils.get(path).resolve("indices/test/" + Integer.toString(routing.getId()) + "/index");
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(file)) {
|
||||
for (Path item : stream) {
|
||||
files.add(item);
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.index.store;
|
|||
|
||||
import com.carrotsearch.ant.tasks.junit4.dependencies.com.google.common.collect.Lists;
|
||||
import com.carrotsearch.randomizedtesting.generators.RandomPicks;
|
||||
|
||||
import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsResponse;
|
||||
import org.elasticsearch.action.index.IndexRequestBuilder;
|
||||
import org.elasticsearch.action.search.SearchPhaseExecutionException;
|
||||
|
@ -28,6 +29,7 @@ import org.elasticsearch.cluster.ClusterState;
|
|||
import org.elasticsearch.cluster.routing.GroupShardsIterator;
|
||||
import org.elasticsearch.cluster.routing.ShardIterator;
|
||||
import org.elasticsearch.cluster.routing.ShardRouting;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.index.shard.IndexShard;
|
||||
|
@ -125,7 +127,7 @@ public class CorruptedTranslogTests extends ElasticsearchIntegrationTest {
|
|||
for (FsStats.Info info : nodeStatses.getNodes()[0].getFs()) {
|
||||
String path = info.getPath();
|
||||
final String relativeDataLocationPath = "indices/test/" + Integer.toString(shardRouting.getId()) + "/translog";
|
||||
Path file = Paths.get(path).resolve(relativeDataLocationPath);
|
||||
Path file = PathUtils.get(path).resolve(relativeDataLocationPath);
|
||||
logger.info("--> path: {}", file);
|
||||
try (DirectoryStream<Path> stream = Files.newDirectoryStream(file)) {
|
||||
for (Path item : stream) {
|
||||
|
|
|
@ -23,6 +23,7 @@ import org.apache.lucene.util.IOUtils;
|
|||
import org.elasticsearch.action.search.SearchResponse;
|
||||
import org.elasticsearch.action.support.IndicesOptions;
|
||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.test.ElasticsearchIntegrationTest;
|
||||
import org.elasticsearch.test.junit.annotations.TestLogging;
|
||||
|
@ -53,7 +54,7 @@ public class IndicesCustomDataPathTests extends ElasticsearchIntegrationTest {
|
|||
|
||||
@After
|
||||
public void teardown() throws Exception {
|
||||
IOUtils.deleteFilesIgnoringExceptions(Paths.get(path));
|
||||
IOUtils.deleteFilesIgnoringExceptions(PathUtils.get(path));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
@ -25,6 +25,7 @@ import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
|
|||
import org.elasticsearch.action.admin.cluster.node.info.NodesInfoResponse;
|
||||
import org.elasticsearch.action.admin.cluster.node.info.PluginInfo;
|
||||
import org.elasticsearch.cluster.ClusterService;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.nodesinfo.plugin.dummy1.TestPlugin;
|
||||
|
@ -162,7 +163,7 @@ public class SimpleNodesInfoTests extends ElasticsearchIntegrationTest {
|
|||
ImmutableSettings.Builder settings = settingsBuilder();
|
||||
settings.put(nodeSettings);
|
||||
if (resource != null) {
|
||||
settings.put("path.plugins", Paths.get(resource.toURI()).toAbsolutePath());
|
||||
settings.put("path.plugins", PathUtils.get(resource.toURI()).toAbsolutePath());
|
||||
}
|
||||
|
||||
if (pluginClassNames.length > 0) {
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
package org.elasticsearch.plugins;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import org.elasticsearch.action.admin.cluster.node.info.PluginInfo;
|
||||
import org.elasticsearch.common.collect.Tuple;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.nodesinfo.SimpleNodesInfoTests;
|
||||
import org.elasticsearch.plugins.loading.classpath.InClassPathPlugin;
|
||||
|
@ -31,6 +33,7 @@ import org.junit.Test;
|
|||
|
||||
import java.net.URISyntaxException;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.PathMatcher;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
import static org.elasticsearch.common.settings.ImmutableSettings.settingsBuilder;
|
||||
|
@ -71,17 +74,19 @@ public class PluginServiceTests extends ElasticsearchIntegrationTest {
|
|||
|
||||
@Test
|
||||
public void testHasLibExtension() {
|
||||
Path p = Paths.get("path", "to", "plugin.jar");
|
||||
assertTrue(PluginsService.hasLibExtension(p));
|
||||
PathMatcher matcher = PathUtils.getDefaultFileSystem().getPathMatcher(PluginsService.PLUGIN_LIB_PATTERN);
|
||||
|
||||
p = Paths.get("path", "to", "plugin.zip");
|
||||
assertTrue(PluginsService.hasLibExtension(p));
|
||||
Path p = PathUtils.get("path", "to", "plugin.jar");
|
||||
assertTrue(matcher.matches(p));
|
||||
|
||||
p = Paths.get("path", "to", "plugin.tar.gz");
|
||||
assertFalse(PluginsService.hasLibExtension(p));
|
||||
p = PathUtils.get("path", "to", "plugin.zip");
|
||||
assertTrue(matcher.matches(p));
|
||||
|
||||
p = Paths.get("path", "to", "plugin");
|
||||
assertFalse(PluginsService.hasLibExtension(p));
|
||||
p = PathUtils.get("path", "to", "plugin.tar.gz");
|
||||
assertFalse(matcher.matches(p));
|
||||
|
||||
p = PathUtils.get("path", "to", "plugin");
|
||||
assertFalse(matcher.matches(p));
|
||||
}
|
||||
|
||||
private Plugin getPlugin(String pluginName) {
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.plugins;
|
|||
import org.apache.http.client.config.RequestConfig;
|
||||
import org.apache.http.impl.client.CloseableHttpClient;
|
||||
import org.apache.http.impl.client.HttpClients;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.http.HttpServerTransport;
|
||||
import org.elasticsearch.rest.RestStatus;
|
||||
|
@ -49,7 +50,7 @@ public class SitePluginTests extends ElasticsearchIntegrationTest {
|
|||
@Override
|
||||
protected Settings nodeSettings(int nodeOrdinal) {
|
||||
try {
|
||||
Path pluginDir = Paths.get(SitePluginTests.class.getResource("/org/elasticsearch/plugins").toURI());
|
||||
Path pluginDir = PathUtils.get(SitePluginTests.class.getResource("/org/elasticsearch/plugins").toURI());
|
||||
return settingsBuilder()
|
||||
.put(super.nodeSettings(nodeOrdinal))
|
||||
.put("path.plugins", pluginDir.toAbsolutePath())
|
||||
|
|
|
@ -21,6 +21,7 @@ package org.elasticsearch.snapshots.mockstore;
|
|||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
|
||||
import org.elasticsearch.ElasticsearchException;
|
||||
import org.elasticsearch.cluster.ClusterService;
|
||||
import org.elasticsearch.cluster.metadata.MetaData;
|
||||
|
@ -30,6 +31,7 @@ import org.elasticsearch.common.blobstore.BlobMetaData;
|
|||
import org.elasticsearch.common.blobstore.BlobPath;
|
||||
import org.elasticsearch.common.blobstore.BlobStore;
|
||||
import org.elasticsearch.common.inject.Inject;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.index.snapshots.IndexShardRepository;
|
||||
import org.elasticsearch.repositories.RepositoryName;
|
||||
|
@ -111,7 +113,7 @@ public class MockRepository extends FsRepository {
|
|||
}
|
||||
|
||||
private static Settings localizeLocation(Settings settings, ClusterService clusterService) {
|
||||
Path location = Paths.get(settings.get("location"));
|
||||
Path location = PathUtils.get(settings.get("location"));
|
||||
location = location.resolve(clusterService.localNode().getId());
|
||||
return settingsBuilder().put(settings).put("location", location.toAbsolutePath()).build();
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import org.elasticsearch.cluster.ClusterState;
|
|||
import org.elasticsearch.cluster.routing.IndexRoutingTable;
|
||||
import org.elasticsearch.cluster.routing.IndexShardRoutingTable;
|
||||
import org.elasticsearch.cluster.routing.ShardRouting;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.regex.Regex;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
|
@ -99,7 +100,7 @@ public abstract class ElasticsearchBackwardsCompatIntegrationTest extends Elasti
|
|||
throw new IllegalArgumentException("Backcompat elasticsearch version must be same major version as current. " +
|
||||
"backcompat: " + version + ", current: " + Version.CURRENT.toString());
|
||||
}
|
||||
Path file = Paths.get(path, "elasticsearch-" + version);
|
||||
Path file = PathUtils.get(path, "elasticsearch-" + version);
|
||||
if (!Files.exists(file)) {
|
||||
throw new IllegalArgumentException("Backwards tests location is missing: " + file.toAbsolutePath());
|
||||
}
|
||||
|
|
|
@ -26,6 +26,7 @@ import com.carrotsearch.randomizedtesting.generators.RandomPicks;
|
|||
import com.google.common.base.Joiner;
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import org.apache.http.impl.client.HttpClients;
|
||||
import org.apache.lucene.store.StoreRateLimiting;
|
||||
import org.apache.lucene.util.AbstractRandomizedTest;
|
||||
|
@ -76,6 +77,7 @@ import org.elasticsearch.common.Strings;
|
|||
import org.elasticsearch.common.collect.ImmutableOpenMap;
|
||||
import org.elasticsearch.common.collect.Tuple;
|
||||
import org.elasticsearch.common.io.FileSystemUtils;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.regex.Regex;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
|
@ -1838,7 +1840,7 @@ public abstract class ElasticsearchIntegrationTest extends ElasticsearchTestCase
|
|||
* Asserts that there are no files in the specified path
|
||||
*/
|
||||
public void assertPathHasBeenCleared(String path) throws Exception {
|
||||
assertPathHasBeenCleared(Paths.get(path));
|
||||
assertPathHasBeenCleared(PathUtils.get(path));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -34,6 +34,7 @@ import org.elasticsearch.client.Requests;
|
|||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||
import org.elasticsearch.cluster.routing.DjbHashFunction;
|
||||
import org.elasticsearch.common.Strings;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.logging.Loggers;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
|
@ -200,7 +201,7 @@ public abstract class ElasticsearchTestCase extends AbstractRandomizedTest {
|
|||
*/
|
||||
public Path getResourcePath(String relativePath) {
|
||||
URI uri = URI.create(getClass().getResource(relativePath).toString());
|
||||
return Paths.get(uri);
|
||||
return PathUtils.get(uri);
|
||||
}
|
||||
|
||||
@After
|
||||
|
|
|
@ -27,6 +27,7 @@ import org.elasticsearch.action.admin.cluster.node.info.NodesInfoResponse;
|
|||
import org.elasticsearch.client.Client;
|
||||
import org.elasticsearch.client.transport.TransportClient;
|
||||
import org.elasticsearch.cluster.ClusterName;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.logging.ESLogger;
|
||||
import org.elasticsearch.common.logging.Loggers;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
|
@ -127,7 +128,7 @@ final class ExternalNode implements Closeable {
|
|||
params.add("-Des." + entry.getKey() + "=" + entry.getValue());
|
||||
}
|
||||
|
||||
params.add("-Des.path.home=" + Paths.get(".").toAbsolutePath());
|
||||
params.add("-Des.path.home=" + PathUtils.get(".").toAbsolutePath());
|
||||
params.add("-Des.path.conf=" + path + "/config");
|
||||
|
||||
ProcessBuilder builder = new ProcessBuilder(params);
|
||||
|
|
|
@ -25,9 +25,11 @@ import com.carrotsearch.randomizedtesting.annotations.ParametersFactory;
|
|||
import com.carrotsearch.randomizedtesting.annotations.TestGroup;
|
||||
import com.carrotsearch.randomizedtesting.annotations.TimeoutSuite;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import org.apache.lucene.util.AbstractRandomizedTest;
|
||||
import org.apache.lucene.util.TimeUnits;
|
||||
import org.elasticsearch.common.Strings;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.node.Node;
|
||||
|
@ -46,10 +48,8 @@ import org.junit.BeforeClass;
|
|||
import org.junit.Test;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.PathMatcher;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
|
@ -102,7 +102,7 @@ public class ElasticsearchRestTests extends ElasticsearchIntegrationTest {
|
|||
blacklistPathMatchers = new PathMatcher[blacklist.length];
|
||||
int i = 0;
|
||||
for (String glob : blacklist) {
|
||||
blacklistPathMatchers[i++] = FileSystems.getDefault().getPathMatcher("glob:" + glob);
|
||||
blacklistPathMatchers[i++] = PathUtils.getDefaultFileSystem().getPathMatcher("glob:" + glob);
|
||||
}
|
||||
} else {
|
||||
blacklistPathMatchers = new PathMatcher[0];
|
||||
|
@ -251,7 +251,7 @@ public class ElasticsearchRestTests extends ElasticsearchIntegrationTest {
|
|||
//we need to replace a few characters otherwise the test section name can't be parsed as a path on windows
|
||||
String testSection = testCandidate.getTestSection().getName().replace("*", "").replace("\\", "/").replaceAll("\\s+/", "/").trim();
|
||||
String testPath = testCandidate.getSuitePath() + "/" + testSection;
|
||||
assumeFalse("[" + testCandidate.getTestPath() + "] skipped, reason: blacklisted", blacklistedPathMatcher.matches(Paths.get(testPath)));
|
||||
assumeFalse("[" + testCandidate.getTestPath() + "] skipped, reason: blacklisted", blacklistedPathMatcher.matches(PathUtils.get(testPath)));
|
||||
}
|
||||
//The client needs non static info to get initialized, therefore it can't be initialized in the before class
|
||||
restTestExecutionContext.initClient(cluster().httpAddresses(), restClientSettings());
|
||||
|
|
|
@ -22,6 +22,7 @@ import com.google.common.collect.Maps;
|
|||
import com.google.common.collect.Sets;
|
||||
|
||||
import org.elasticsearch.common.Strings;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
|
@ -106,7 +107,7 @@ public final class FileUtils {
|
|||
}
|
||||
}
|
||||
|
||||
return Paths.get(URI.create(resource.toString()));
|
||||
return PathUtils.get(URI.create(resource.toString()));
|
||||
}
|
||||
|
||||
private static URL findResource(String path, String optionalFileSuffix) {
|
||||
|
@ -121,9 +122,9 @@ public final class FileUtils {
|
|||
}
|
||||
|
||||
private static Path findFile(String path, String optionalFileSuffix) {
|
||||
Path file = Paths.get(path);
|
||||
Path file = PathUtils.get(path);
|
||||
if (!Files.exists(file)) {
|
||||
file = Paths.get(path + optionalFileSuffix);
|
||||
file = PathUtils.get(path + optionalFileSuffix);
|
||||
}
|
||||
return file;
|
||||
}
|
||||
|
|
|
@ -20,9 +20,11 @@
|
|||
package org.elasticsearch.tribe;
|
||||
|
||||
import com.carrotsearch.randomizedtesting.LifecycleScope;
|
||||
|
||||
import org.elasticsearch.client.Client;
|
||||
import org.elasticsearch.cluster.ClusterState;
|
||||
import org.elasticsearch.cluster.node.DiscoveryNode;
|
||||
import org.elasticsearch.common.io.PathUtils;
|
||||
import org.elasticsearch.common.settings.ImmutableSettings;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.node.Node;
|
||||
|
@ -88,7 +90,7 @@ public class TribeUnitTests extends ElasticsearchTestCase {
|
|||
|
||||
@Test
|
||||
public void testThatTribeClientsIgnoreGlobalConfig() throws Exception {
|
||||
Path pathConf = Paths.get(TribeUnitTests.class.getResource("elasticsearch.yml").toURI()).getParent();
|
||||
Path pathConf = PathUtils.get(TribeUnitTests.class.getResource("elasticsearch.yml").toURI()).getParent();
|
||||
Settings settings = ImmutableSettings.builder().put("config.ignore_system_properties", true).put("path.conf", pathConf).build();
|
||||
assertTribeNodeSuccesfullyCreated(settings);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue