projects
/
Sone.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Store the insert URI in the information used for inserting.
[Sone.git]
/
src
/
main
/
java
/
net
/
pterodactylus
/
sone
/
core
/
Options.java
diff --git
a/src/main/java/net/pterodactylus/sone/core/Options.java
b/src/main/java/net/pterodactylus/sone/core/Options.java
index
513138b
..
83444bb
100644
(file)
--- a/
src/main/java/net/pterodactylus/sone/core/Options.java
+++ b/
src/main/java/net/pterodactylus/sone/core/Options.java
@@
-1,5
+1,5
@@
/*
/*
- * Sone - Options.java - Copyright © 2010 David Roden
+ * Sone - Options.java - Copyright © 2010
–2013
David Roden
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@
-21,7
+21,7
@@
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.HashMap;
import java.util.Map;
-import
net.pterodactylus.util.validation.Validator
;
+import
com.google.common.base.Predicate
;
/**
* Stores various options that influence Sone’s behaviour.
/**
* Stores various options that influence Sone’s behaviour.
@@
-68,9
+68,8
@@
public class Options {
*
* @param value
* The value to validate
*
* @param value
* The value to validate
- * @return {@code true} if this option does not have a {@link Validator}
- * , or the {@link Validator} validates this object, {@code
- * false} otherwise
+ * @return {@code true} if this option does not have a validator, or the
+ * validator validates this object, {@code false} otherwise
*/
public boolean validate(T value);
*/
public boolean validate(T value);
@@
-127,7
+126,7
@@
public class Options {
private volatile T value;
/** The validator. */
private volatile T value;
/** The validator. */
- private
Validator
<T> validator;
+ private
Predicate
<T> validator;
/** The option watcher. */
private final OptionWatcher<T> optionWatcher;
/** The option watcher. */
private final OptionWatcher<T> optionWatcher;
@@
-150,7
+149,7
@@
public class Options {
* @param validator
* The validator for value validation (may be {@code null})
*/
* @param validator
* The validator for value validation (may be {@code null})
*/
- public DefaultOption(T defaultValue,
Validator
<T> validator) {
+ public DefaultOption(T defaultValue,
Predicate
<T> validator) {
this(defaultValue, validator, null);
}
this(defaultValue, validator, null);
}
@@
-176,53
+175,35
@@
public class Options {
* @param optionWatcher
* The option watcher (may be {@code null})
*/
* @param optionWatcher
* The option watcher (may be {@code null})
*/
- public DefaultOption(T defaultValue,
Validator
<T> validator, OptionWatcher<T> optionWatcher) {
+ public DefaultOption(T defaultValue,
Predicate
<T> validator, OptionWatcher<T> optionWatcher) {
this.defaultValue = defaultValue;
this.validator = validator;
this.optionWatcher = optionWatcher;
}
this.defaultValue = defaultValue;
this.validator = validator;
this.optionWatcher = optionWatcher;
}
- /**
- * {@inheritDoc}
- */
@Override
public T getDefault() {
return defaultValue;
}
@Override
public T getDefault() {
return defaultValue;
}
- /**
- * {@inheritDoc}
- */
@Override
public T get() {
return (value != null) ? value : defaultValue;
}
@Override
public T get() {
return (value != null) ? value : defaultValue;
}
- /**
- * Returns the real value of the option. This will also return an unset
- * value (usually {@code null})!
- *
- * @return The real value of the option
- */
@Override
public T getReal() {
return value;
}
@Override
public T getReal() {
return value;
}
- /**
- * {@inheritDoc}
- */
@Override
public boolean validate(T value) {
@Override
public boolean validate(T value) {
- return (validator == null) || (value == null) || validator.
validate
(value);
+ return (validator == null) || (value == null) || validator.
apply
(value);
}
}
- /**
- * {@inheritDoc}
- */
@Override
public void set(T value) {
@Override
public void set(T value) {
- if ((value != null) && (validator != null) && (!validator.
validate
(value))) {
+ if ((value != null) && (validator != null) && (!validator.
apply
(value))) {
throw new IllegalArgumentException("New Value (" + value + ") could not be validated.");
}
T oldValue = this.value;
throw new IllegalArgumentException("New Value (" + value + ") could not be validated.");
}
T oldValue = this.value;
@@
-329,6
+310,8
@@
public class Options {
/**
* Adds an {@link Enum} {@link Option}.
*
/**
* Adds an {@link Enum} {@link Option}.
*
+ * @param <T>
+ * The enum type
* @param name
* The name of the option
* @param enumOption
* @param name
* The name of the option
* @param enumOption
@@
-350,11
+333,14
@@
public class Options {
* options.<SomeEnum> getEnumOption("SomeEnumOption").get();
* </pre>
*
* options.<SomeEnum> getEnumOption("SomeEnumOption").get();
* </pre>
*
+ * @param <T>
+ * The enum type
* @param name
* The name of the option
* @return The enum option, or {@code null} if there is no enum option with
* the given name
*/
* @param name
* The name of the option
* @return The enum option, or {@code null} if there is no enum option with
* the given name
*/
+ @SuppressWarnings("unchecked")
public <T extends Enum<T>> Option<T> getEnumOption(String name) {
return (Option<T>) enumOptions.get(name);
}
public <T extends Enum<T>> Option<T> getEnumOption(String name) {
return (Option<T>) enumOptions.get(name);
}