Minor changes to collection creation from enums (#24274)

These changes are mainly cosmetic with minor perf advantages drawn from checkstyle.
This commit is contained in:
Koen De Groote 2017-04-25 13:13:55 +02:00 committed by Simon Willnauer
parent 508b774d76
commit 88de33d43d
11 changed files with 24 additions and 25 deletions

View File

@ -198,7 +198,7 @@ public class DiscoveryNode implements Writeable, ToXContent {
/** extract node roles from the given settings */ /** extract node roles from the given settings */
public static Set<Role> getRolesFromSettings(Settings settings) { public static Set<Role> getRolesFromSettings(Settings settings) {
Set<Role> roles = new HashSet<>(); Set<Role> roles = EnumSet.noneOf(Role.class);
if (Node.NODE_INGEST_SETTING.get(settings)) { if (Node.NODE_INGEST_SETTING.get(settings)) {
roles.add(Role.INGEST); roles.add(Role.INGEST);
} }

View File

@ -31,7 +31,7 @@ import org.elasticsearch.common.xcontent.XContentBuilder;
import java.io.IOException; import java.io.IOException;
import java.util.Collections; import java.util.Collections;
import java.util.HashMap; import java.util.EnumMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
@ -49,7 +49,7 @@ public class AllocateUnassignedDecision extends AbstractAllocationDecision {
*/ */
private static final Map<AllocationStatus, AllocateUnassignedDecision> CACHED_DECISIONS; private static final Map<AllocationStatus, AllocateUnassignedDecision> CACHED_DECISIONS;
static { static {
Map<AllocationStatus, AllocateUnassignedDecision> cachedDecisions = new HashMap<>(); Map<AllocationStatus, AllocateUnassignedDecision> cachedDecisions = new EnumMap<>(AllocationStatus.class);
cachedDecisions.put(AllocationStatus.FETCHING_SHARD_DATA, cachedDecisions.put(AllocationStatus.FETCHING_SHARD_DATA,
new AllocateUnassignedDecision(AllocationStatus.FETCHING_SHARD_DATA, null, null, null, false, 0L, 0L)); new AllocateUnassignedDecision(AllocationStatus.FETCHING_SHARD_DATA, null, null, null, false, 0L, 0L));
cachedDecisions.put(AllocationStatus.NO_VALID_SHARD_COPY, cachedDecisions.put(AllocationStatus.NO_VALID_SHARD_COPY,

View File

@ -21,12 +21,9 @@ package org.elasticsearch.common.settings;
import java.io.InputStream; import java.io.InputStream;
import java.security.GeneralSecurityException; import java.security.GeneralSecurityException;
import java.util.Arrays; import java.util.EnumSet;
import java.util.HashSet;
import java.util.Objects;
import java.util.Set; import java.util.Set;
import org.elasticsearch.common.Strings;
import org.elasticsearch.common.util.ArrayUtils; import org.elasticsearch.common.util.ArrayUtils;
@ -36,9 +33,7 @@ import org.elasticsearch.common.util.ArrayUtils;
* This class allows access to settings from the Elasticsearch keystore. * This class allows access to settings from the Elasticsearch keystore.
*/ */
public abstract class SecureSetting<T> extends Setting<T> { public abstract class SecureSetting<T> extends Setting<T> {
private static final Set<Property> ALLOWED_PROPERTIES = new HashSet<>( private static final Set<Property> ALLOWED_PROPERTIES = EnumSet.of(Property.Deprecated, Property.Shared);
Arrays.asList(Property.Deprecated, Property.Shared)
);
private static final Property[] FIXED_PROPERTIES = { private static final Property[] FIXED_PROPERTIES = {
Property.NodeScope Property.NodeScope

View File

@ -31,6 +31,7 @@ import org.joda.time.format.PeriodFormatter;
import java.io.IOException; import java.io.IOException;
import java.util.Collections; import java.util.Collections;
import java.util.EnumMap;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Locale; import java.util.Locale;
@ -48,7 +49,7 @@ public class TimeValue implements Writeable, Comparable<TimeValue> {
private static Map<Byte, TimeUnit> BYTE_TIME_UNIT_MAP; private static Map<Byte, TimeUnit> BYTE_TIME_UNIT_MAP;
static { static {
final Map<TimeUnit, Byte> timeUnitByteMap = new HashMap<>(); final Map<TimeUnit, Byte> timeUnitByteMap = new EnumMap<>(TimeUnit.class);
timeUnitByteMap.put(TimeUnit.NANOSECONDS, (byte)0); timeUnitByteMap.put(TimeUnit.NANOSECONDS, (byte)0);
timeUnitByteMap.put(TimeUnit.MICROSECONDS, (byte)1); timeUnitByteMap.put(TimeUnit.MICROSECONDS, (byte)1);
timeUnitByteMap.put(TimeUnit.MILLISECONDS, (byte)2); timeUnitByteMap.put(TimeUnit.MILLISECONDS, (byte)2);

View File

@ -31,6 +31,7 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Base64; import java.util.Base64;
import java.util.Date; import java.util.Date;
import java.util.EnumMap;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -554,7 +555,7 @@ public final class IngestDocument {
* Metadata fields that used to be accessible as ordinary top level fields will be removed as part of this call. * Metadata fields that used to be accessible as ordinary top level fields will be removed as part of this call.
*/ */
public Map<MetaData, String> extractMetadata() { public Map<MetaData, String> extractMetadata() {
Map<MetaData, String> metadataMap = new HashMap<>(); Map<MetaData, String> metadataMap = new EnumMap<>(MetaData.class);
for (MetaData metaData : MetaData.values()) { for (MetaData metaData : MetaData.values()) {
metadataMap.put(metaData, cast(metaData.getFieldName(), sourceAndMetadata.remove(metaData.getFieldName()), String.class)); metadataMap.put(metaData, cast(metaData.getFieldName(), sourceAndMetadata.remove(metaData.getFieldName()), String.class));
} }

View File

@ -25,6 +25,7 @@ import org.elasticsearch.common.settings.Settings;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.EnumMap;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -35,7 +36,7 @@ public class ScriptSettings {
private static final Map<ScriptType, Setting<Boolean>> SCRIPT_TYPE_SETTING_MAP; private static final Map<ScriptType, Setting<Boolean>> SCRIPT_TYPE_SETTING_MAP;
static { static {
Map<ScriptType, Setting<Boolean>> scriptTypeSettingMap = new HashMap<>(); Map<ScriptType, Setting<Boolean>> scriptTypeSettingMap = new EnumMap<>(ScriptType.class);
for (ScriptType scriptType : ScriptType.values()) { for (ScriptType scriptType : ScriptType.values()) {
scriptTypeSettingMap.put(scriptType, Setting.boolSetting( scriptTypeSettingMap.put(scriptType, Setting.boolSetting(
ScriptModes.sourceKey(scriptType), ScriptModes.sourceKey(scriptType),

View File

@ -63,7 +63,7 @@ import org.elasticsearch.search.sort.SortAndFormats;
import org.elasticsearch.search.suggest.SuggestionSearchContext; import org.elasticsearch.search.suggest.SuggestionSearchContext;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.EnumMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
@ -336,7 +336,7 @@ public abstract class SearchContext extends AbstractRefCounted implements Releas
*/ */
public void addReleasable(Releasable releasable, Lifetime lifetime) { public void addReleasable(Releasable releasable, Lifetime lifetime) {
if (clearables == null) { if (clearables == null) {
clearables = new HashMap<>(); clearables = new EnumMap<>(Lifetime.class);
} }
List<Releasable> releasables = clearables.get(lifetime); List<Releasable> releasables = clearables.get(lifetime);
if (releasables == null) { if (releasables == null) {

View File

@ -98,6 +98,7 @@ import org.elasticsearch.indices.analysis.PreBuiltTokenizers;
import org.elasticsearch.test.ESTestCase; import org.elasticsearch.test.ESTestCase;
import java.util.Collection; import java.util.Collection;
import java.util.EnumMap;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Map; import java.util.Map;
@ -152,7 +153,7 @@ public class AnalysisFactoryTestCase extends ESTestCase {
static final Map<PreBuiltTokenizers, Class<?>> PREBUILT_TOKENIZERS; static final Map<PreBuiltTokenizers, Class<?>> PREBUILT_TOKENIZERS;
static { static {
PREBUILT_TOKENIZERS = new HashMap<>(); PREBUILT_TOKENIZERS = new EnumMap<>(PreBuiltTokenizers.class);
for (PreBuiltTokenizers tokenizer : PreBuiltTokenizers.values()) { for (PreBuiltTokenizers tokenizer : PreBuiltTokenizers.values()) {
Class<?> luceneFactoryClazz; Class<?> luceneFactoryClazz;
switch (tokenizer) { switch (tokenizer) {
@ -289,7 +290,7 @@ public class AnalysisFactoryTestCase extends ESTestCase {
static final Map<PreBuiltTokenFilters, Class<?>> PREBUILT_TOKENFILTERS; static final Map<PreBuiltTokenFilters, Class<?>> PREBUILT_TOKENFILTERS;
static { static {
PREBUILT_TOKENFILTERS = new HashMap<>(); PREBUILT_TOKENFILTERS = new EnumMap<>(PreBuiltTokenFilters.class);
for (PreBuiltTokenFilters tokenizer : PreBuiltTokenFilters.values()) { for (PreBuiltTokenFilters tokenizer : PreBuiltTokenFilters.values()) {
Class<?> luceneFactoryClazz; Class<?> luceneFactoryClazz;
switch (tokenizer) { switch (tokenizer) {
@ -335,7 +336,7 @@ public class AnalysisFactoryTestCase extends ESTestCase {
static final Map<PreBuiltCharFilters, Class<?>> PREBUILT_CHARFILTERS; static final Map<PreBuiltCharFilters, Class<?>> PREBUILT_CHARFILTERS;
static { static {
PREBUILT_CHARFILTERS = new HashMap<>(); PREBUILT_CHARFILTERS = new EnumMap<>(PreBuiltCharFilters.class);
for (PreBuiltCharFilters tokenizer : PreBuiltCharFilters.values()) { for (PreBuiltCharFilters tokenizer : PreBuiltCharFilters.values()) {
Class<?> luceneFactoryClazz; Class<?> luceneFactoryClazz;
switch (tokenizer) { switch (tokenizer) {

View File

@ -43,7 +43,7 @@ import org.elasticsearch.test.gateway.TestGatewayAllocator;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.HashSet; import java.util.EnumSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Random; import java.util.Random;
@ -95,7 +95,7 @@ public abstract class ESAllocationTestCase extends ESTestCase {
} }
protected static Set<DiscoveryNode.Role> MASTER_DATA_ROLES = protected static Set<DiscoveryNode.Role> MASTER_DATA_ROLES =
Collections.unmodifiableSet(new HashSet<>(Arrays.asList(DiscoveryNode.Role.MASTER, DiscoveryNode.Role.DATA))); Collections.unmodifiableSet(EnumSet.of(DiscoveryNode.Role.MASTER, DiscoveryNode.Role.DATA));
protected static DiscoveryNode newNode(String nodeId) { protected static DiscoveryNode newNode(String nodeId) {
return newNode(nodeId, Version.CURRENT); return newNode(nodeId, Version.CURRENT);

View File

@ -33,7 +33,7 @@ import org.elasticsearch.threadpool.ThreadPool;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.HashSet; import java.util.EnumSet;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
import static junit.framework.TestCase.fail; import static junit.framework.TestCase.fail;
@ -42,7 +42,7 @@ public class ClusterServiceUtils {
public static ClusterService createClusterService(ThreadPool threadPool) { public static ClusterService createClusterService(ThreadPool threadPool) {
DiscoveryNode discoveryNode = new DiscoveryNode("node", ESTestCase.buildNewFakeTransportAddress(), Collections.emptyMap(), DiscoveryNode discoveryNode = new DiscoveryNode("node", ESTestCase.buildNewFakeTransportAddress(), Collections.emptyMap(),
new HashSet<>(Arrays.asList(DiscoveryNode.Role.values())),Version.CURRENT); EnumSet.allOf(DiscoveryNode.Role.class), Version.CURRENT);
return createClusterService(threadPool, discoveryNode); return createClusterService(threadPool, discoveryNode);
} }

View File

@ -18,6 +18,8 @@
*/ */
package org.elasticsearch.test; package org.elasticsearch.test;
import java.util.EnumSet;
import java.util.Set;
import org.junit.Assert; import org.junit.Assert;
import java.io.IOException; import java.io.IOException;
@ -25,8 +27,6 @@ import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.attribute.PosixFileAttributeView; import java.nio.file.attribute.PosixFileAttributeView;
import java.nio.file.attribute.PosixFilePermission; import java.nio.file.attribute.PosixFilePermission;
import java.util.HashSet;
import java.util.Set;
/** Stores the posix attributes for a path and resets them on close. */ /** Stores the posix attributes for a path and resets them on close. */
public class PosixPermissionsResetter implements AutoCloseable { public class PosixPermissionsResetter implements AutoCloseable {
@ -46,6 +46,6 @@ public class PosixPermissionsResetter implements AutoCloseable {
} }
public Set<PosixFilePermission> getCopyPermissions() { public Set<PosixFilePermission> getCopyPermissions() {
return new HashSet<>(permissions); return EnumSet.copyOf(permissions);
} }
} }