/** * [PDI-15575] Ensuring that this enum can return with some default value. Necessary for when being used on the * GUI side if a user leaves the field empty, it will enforce a default value. This allows the object to be saved, * loaded, and cloned as necessary. * @param contentType * @return ContentType */ public static ContentType getIfPresent( String contentType ) { return Enums.getIfPresent( ContentType.class, contentType ).or( Element ); } }
static <T extends Enum<T>> Optional<T> getEnumIfPresent(Class<T> enumClass, String value) { WeakReference<? extends Enum<?>> ref = Enums.getEnumConstants(enumClass).get(value); return ref == null ? Optional.<T>absent() : Optional.of(enumClass.cast(ref.get())); }
@GwtIncompatible // java.lang.ref.WeakReference static <T extends Enum<T>> Map<String, WeakReference<? extends Enum<?>>> getEnumConstants( Class<T> enumClass) { synchronized (enumConstantCache) { Map<String, WeakReference<? extends Enum<?>>> constants = enumConstantCache.get(enumClass); if (constants == null) { constants = populateCache(enumClass); } return constants; } }
public void testStringConverter_serialization() { SerializableTester.reserializeAndAssert(Enums.stringConverter(TestEnum.class)); }
@GwtIncompatible // Class.getName() public void testStringConverter_toString() { assertEquals( "Enums.stringConverter(com.google.common.base.EnumsTest$TestEnum.class)", Enums.stringConverter(TestEnum.class).toString()); }
private static Optional<TimeUnit> getTimeUnit(ExpressionTree timeUnit) { if (timeUnit instanceof IdentifierTree) { // e.g., SECONDS return Enums.getIfPresent(TimeUnit.class, ((IdentifierTree) timeUnit).getName().toString()); } if (timeUnit instanceof MemberSelectTree) { // e.g., TimeUnit.SECONDS return Enums.getIfPresent( TimeUnit.class, ((MemberSelectTree) timeUnit).getIdentifier().toString()); } return Optional.absent(); } }
@GwtIncompatible // java.lang.ref.WeakReference static <T extends Enum<T>> Map<String, WeakReference<? extends Enum<?>>> getEnumConstants( Class<T> enumClass) { synchronized (enumConstantCache) { Map<String, WeakReference<? extends Enum<?>>> constants = enumConstantCache.get(enumClass); if (constants == null) { constants = populateCache(enumClass); } return constants; } }
static <T extends Enum<T>> Optional<T> getEnumIfPresent(Class<T> enumClass, String value) { WeakReference<? extends Enum<?>> ref = Enums.getEnumConstants(enumClass).get(value); return ref == null ? Optional.<T>absent() : Optional.of(enumClass.cast(ref.get())); }
public void testStringConverter_convertError() { Converter<String, TestEnum> converter = Enums.stringConverter(TestEnum.class); try { converter.convert("xxx"); fail(); } catch (IllegalArgumentException expected) { } }
private static Optional<Deserializers> getDeserializerType(Properties props) { Preconditions.checkArgument(props.containsKey(KAFKA_DESERIALIZER_TYPE), "Missing required property " + KAFKA_DESERIALIZER_TYPE); return Enums.getIfPresent(Deserializers.class, props.getProperty(KAFKA_DESERIALIZER_TYPE).toUpperCase()); }
@GwtIncompatible // java.lang.ref.WeakReference static <T extends Enum<T>> Map<String, WeakReference<? extends Enum<?>>> getEnumConstants( Class<T> enumClass) { synchronized (enumConstantCache) { Map<String, WeakReference<? extends Enum<?>>> constants = enumConstantCache.get(enumClass); if (constants == null) { constants = populateCache(enumClass); } return constants; } }
static <T extends Enum<T>> Optional<T> getEnumIfPresent(Class<T> enumClass, String value) { WeakReference<? extends Enum<?>> ref = Enums.getEnumConstants(enumClass).get(value); return ref == null ? Optional.<T>absent() : Optional.of(enumClass.cast(ref.get())); }
@GwtIncompatible // NullPointerTester public void testStringConverter_nullPointerTester() throws Exception { Converter<String, TestEnum> converter = Enums.stringConverter(TestEnum.class); NullPointerTester tester = new NullPointerTester(); tester.testAllPublicInstanceMethods(converter); }
/** * Return the {@link TaskSchedulerType} with the specified name. If the specified name * does not map to a {@link TaskSchedulerType}, then {@link #SCHEDULEDEXECUTORSERVICE} * will be returned. * * @param name the name of the {@link TaskSchedulerType} * @return the specified {@link TaskSchedulerType} or {@link #SCHEDULEDEXECUTORSERVICE} */ public static TaskSchedulerType parse(String name) { if (StringUtils.isEmpty(name)) { return SCHEDULEDEXECUTORSERVICE; } return Enums.getIfPresent(TaskSchedulerType.class, name.toUpperCase()).or(SCHEDULEDEXECUTORSERVICE); } }
@GwtIncompatible("java.lang.ref.WeakReference") static <T extends Enum<T>> Map<String, WeakReference<? extends Enum<?>>> getEnumConstants( Class<T> enumClass) { synchronized (enumConstantCache) { Map<String, WeakReference<? extends Enum<?>>> constants = enumConstantCache.get(enumClass); if (constants == null) { constants = populateCache(enumClass); } return constants; } }
static <T extends Enum<T>> Optional<T> getEnumIfPresent(Class<T> enumClass, String value) { WeakReference<? extends Enum<?>> ref = Enums.getEnumConstants(enumClass).get(value); return ref == null ? Optional.<T> absent() : Optional.of(enumClass.cast(ref.get())); } }
public void testStringConverter_nullConversions() { Converter<String, TestEnum> converter = Enums.stringConverter(TestEnum.class); assertNull(converter.convert(null)); assertNull(converter.reverse().convert(null)); }
public void testGetIfPresent_caseSensitive() { assertThat(Enums.getIfPresent(TestEnum.class, "cHEETO")).isAbsent(); assertThat(Enums.getIfPresent(TestEnum.class, "Honda")).isAbsent(); assertThat(Enums.getIfPresent(TestEnum.class, "poodlE")).isAbsent(); }
@GwtIncompatible("java.lang.ref.WeakReference") static <T extends Enum<T>> Map<String, WeakReference<? extends Enum<?>>> getEnumConstants( Class<T> enumClass) { synchronized (enumConstantCache) { Map<String, WeakReference<? extends Enum<?>>> constants = enumConstantCache.get(enumClass); if (constants == null) { constants = populateCache(enumClass); } return constants; } }
static <T extends Enum<T>> Optional<T> getEnumIfPresent(Class<T> enumClass, String value) { WeakReference<? extends Enum<?>> ref = Enums.getEnumConstants(enumClass).get(value); return ref == null ? Optional.<T>absent() : Optional.of(enumClass.cast(ref.get())); } }