summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--israfil-foundation-container/src/main/java/net/israfil/foundation/container/AbstractContainer.java6
-rw-r--r--israfil-foundation-container/src/main/java/net/israfil/foundation/container/util/NonDuplicateStack.java1
-rw-r--r--israfil-foundation-core/src/main/java/net/israfil/foundation/core/SimpleCounter.java4
-rw-r--r--israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicObject.java6
-rw-r--r--israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicUtil.java6
-rw-r--r--israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyAccessibleObject.java3
-rw-r--r--israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyMutableObject.java4
-rwxr-xr-xisrafil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/Coordinate.java44
-rwxr-xr-xisrafil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SimpleDimension.java26
-rwxr-xr-xisrafil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SparseNSpace.java15
-rw-r--r--israfil-foundation-valuemodel/src/main/java/net/israfil/foundation/valuemodel/ValueHolder.java16
-rw-r--r--israfil-foundation-valuemodel/src/test/java/net/israfil/foundation/valuemodel/ValueHolderTest.java26
12 files changed, 113 insertions, 44 deletions
diff --git a/israfil-foundation-container/src/main/java/net/israfil/foundation/container/AbstractContainer.java b/israfil-foundation-container/src/main/java/net/israfil/foundation/container/AbstractContainer.java
index fe6a978..86b05d5 100644
--- a/israfil-foundation-container/src/main/java/net/israfil/foundation/container/AbstractContainer.java
+++ b/israfil-foundation-container/src/main/java/net/israfil/foundation/container/AbstractContainer.java
@@ -34,7 +34,6 @@
package net.israfil.foundation.container;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.Map;
import net.israfil.foundation.container.error.ComponentAlreadyRegisteredError;
@@ -48,7 +47,7 @@ import net.israfil.foundation.container.error.ComponentAlreadyRegisteredError;
*/
public abstract class AbstractContainer implements Container {
- private final Map components = new HashMap();
+ private final Map<Object, Object> components = new HashMap<>();
private final Container parent;
@@ -66,14 +65,17 @@ public abstract class AbstractContainer implements Container {
return components.containsKey(key);
}
+ @Override
public boolean hasComponent(Object key) {
return components.containsKey(key) || (parent != null && parent.hasComponent(key));
}
+ @Override
public boolean isRunning() {
return this.running;
}
+ @Override
public void start() {
this.running = true;
}
diff --git a/israfil-foundation-container/src/main/java/net/israfil/foundation/container/util/NonDuplicateStack.java b/israfil-foundation-container/src/main/java/net/israfil/foundation/container/util/NonDuplicateStack.java
index d253024..afc9e18 100644
--- a/israfil-foundation-container/src/main/java/net/israfil/foundation/container/util/NonDuplicateStack.java
+++ b/israfil-foundation-container/src/main/java/net/israfil/foundation/container/util/NonDuplicateStack.java
@@ -47,6 +47,7 @@ public class NonDuplicateStack<T> extends Stack<T> {
private static final long serialVersionUID = -5777711467165769847L;
+ @Override
public T push(T item) {
if (contains(item)) throw new IllegalArgumentException("Duplicate item.");
return super.push(item);
diff --git a/israfil-foundation-core/src/main/java/net/israfil/foundation/core/SimpleCounter.java b/israfil-foundation-core/src/main/java/net/israfil/foundation/core/SimpleCounter.java
index 042f623..8b2caf6 100644
--- a/israfil-foundation-core/src/main/java/net/israfil/foundation/core/SimpleCounter.java
+++ b/israfil-foundation-core/src/main/java/net/israfil/foundation/core/SimpleCounter.java
@@ -43,12 +43,16 @@ public class SimpleCounter implements Counter {
private int count = 0;
+ @Override
public int getCount() { return count; }
+ @Override
public void increment() { count++; }
+ @Override
public void decrement() { count--; }
+ @Override
public void reset() { count = 0; }
}
diff --git a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicObject.java b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicObject.java
index 3beda20..4c40948 100644
--- a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicObject.java
+++ b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicObject.java
@@ -50,14 +50,16 @@ public abstract class DynamicObject implements Dynamic {
/**
* @see org.israfil.maveric.Dynamic#perform(java.lang.String, java.lang.Object[])
*/
- public Object perform(String selector, Object ... parameters) {
+ @Override
+ public Object perform(String selector, Object ... parameters) {
return DynamicUtil.performOn(this,selector,parameters);
}
/**
* @see org.israfil.maveric.Dynamic#respondsTo(java.lang.String)
*/
- public boolean respondsTo(String selector) {
+ @Override
+ public boolean respondsTo(String selector) {
return DynamicUtil.respondsTo(this,selector);
}
diff --git a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicUtil.java b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicUtil.java
index 9c165bc..e0da9ba 100644
--- a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicUtil.java
+++ b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicUtil.java
@@ -58,9 +58,9 @@ public final class DynamicUtil {
private DynamicUtil() {}
- static Map<String, Class<?>> _primitiveTypes = new HashMap<String, Class<?>>();
- static Map<Class<?>, Class<?>> _primitiveTypeEquivalents = new HashMap<Class<?>, Class<?>>();
- static Map<Class<?>, Class<?>> _boxedTypeEquivalents = new HashMap<Class<?>, Class<?>>();
+ static Map<String, Class<?>> _primitiveTypes = new HashMap<>();
+ static Map<Class<?>, Class<?>> _primitiveTypeEquivalents = new HashMap<>();
+ static Map<Class<?>, Class<?>> _boxedTypeEquivalents = new HashMap<>();
static {
_primitiveTypes.put("boolean",boolean.class);
_primitiveTypeEquivalents.put(Boolean.class,boolean.class);
diff --git a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyAccessibleObject.java b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyAccessibleObject.java
index fd376a7..6e5b9b9 100644
--- a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyAccessibleObject.java
+++ b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyAccessibleObject.java
@@ -50,6 +50,7 @@ import net.israfil.foundation.core.Strings;
public abstract class DynamicallyAccessibleObject extends DynamicObject implements DynamicallyAccessible {
private static Logger logger = Logger.getLogger(DynamicallyAccessibleObject.class.getName());
+ @Override
public Object get(String attributeName) {
return get(this,attributeName);
}
@@ -94,6 +95,7 @@ public abstract class DynamicallyAccessibleObject extends DynamicObject implemen
*
* The existing implementation is inefficient, but simple to maintain.
*/
+ @Override
public boolean hasAttribute(String attributeName) {
return hasAttribute(this,attributeName);
}
@@ -128,6 +130,7 @@ public abstract class DynamicallyAccessibleObject extends DynamicObject implemen
return null;
}
+ @Override
public boolean hasAccessor(String attributeName) {
return hasAccessor(this,attributeName);
}
diff --git a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyMutableObject.java b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyMutableObject.java
index 63b301d..a27811a 100644
--- a/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyMutableObject.java
+++ b/israfil-foundation-dynamic/src/main/java/net/israfil/foundation/dynamic/DynamicallyMutableObject.java
@@ -53,6 +53,7 @@ public abstract class DynamicallyMutableObject extends DynamicallyAccessibleObje
private static Logger logger = Logger.getLogger(DynamicallyMutableObject.class.getName());
+ @Override
public void setNull(String attributeName, Class<?> valueType) {
setNull(this,attributeName,valueType);
}
@@ -62,6 +63,7 @@ public abstract class DynamicallyMutableObject extends DynamicallyAccessibleObje
set(target,attributeName, null, valueType);
}
+ @Override
public void set(String attributeName,Object value) {
set(this,attributeName,value);
}
@@ -70,6 +72,7 @@ public abstract class DynamicallyMutableObject extends DynamicallyAccessibleObje
else set(target,attributeName, value, value.getClass());
}
+ @Override
public void set(String attributeName, Object value, Class<?> valueType) {
set(this,attributeName,value,valueType);
}
@@ -187,6 +190,7 @@ public abstract class DynamicallyMutableObject extends DynamicallyAccessibleObje
}
}
+ @Override
public boolean hasMutator(String attributeName, Class<?> type) {
return hasMutator(this,attributeName,type);
}
diff --git a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/Coordinate.java b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/Coordinate.java
index 620124a..e12ba34 100755
--- a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/Coordinate.java
+++ b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/Coordinate.java
@@ -16,39 +16,47 @@ import java.util.Set;
* @version $Revision: 254 $
*/
public interface Coordinate {
-
+
/**
- * A single empty Coordinate, which can be passed in to point-NSpaces, where
- * no dimension constraint is required.
+ * A single empty Coordinate, which can be passed in to point-NSpaces, where no
+ * dimension constraint is required.
*/
- public final static Coordinate EMPTY =
- new Coordinate() {
- private final Set<String> dim = new HashSet<String>();
-
- public Set<String> getDimensions() {
- return dim;
- }
- public long getDimensionality() { return 0; }
- public String getOrdinal(String dimensionName) {
- if (false) dimensionName.hashCode(); //quiet compiler warning.
- return null;
- }
- };
+ public final static Coordinate EMPTY = new Coordinate() {
+ private final Set<String> dim = new HashSet<>();
+
+ @Override
+ public Set<String> getDimensions() {
+ return dim;
+ }
+
+ @Override
+ public long getDimensionality() {
+ return 0;
+ }
+
+ @Override
+ public String getOrdinal(String dimensionName) {
+ return null;
+ }
+ };
/**
* Returns a set of names of contained dimensions.
+ *
* @return Set
*/
public Set<String> getDimensions();
-
+
/**
* Returns the number of dimensions
+ *
* @return long
*/
public long getDimensionality();
-
+
/**
* Returns the ordinal of the given named dimension..
+ *
* @return Set
*/
public String getOrdinal(String dimensionName);
diff --git a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SimpleDimension.java b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SimpleDimension.java
index 52250fa..3a4cbd9 100755
--- a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SimpleDimension.java
+++ b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SimpleDimension.java
@@ -16,8 +16,8 @@ import java.util.Set;
public class SimpleDimension implements Dimension {
private final String name;
- private final Set<String> positions = new HashSet<String>();
- private final Set<NSpace> spaces = new HashSet<NSpace>();
+ private final Set<String> positions = new HashSet<>();
+ private final Set<NSpace> spaces = new HashSet<>();
public SimpleDimension() {
name = null;
@@ -31,6 +31,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#getName()
*/
+ @Override
public String getName() {
return this.name;
}
@@ -38,6 +39,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#size()
*/
+ @Override
public int size() {
return this.positions.size();
}
@@ -45,6 +47,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#isEmpty()
*/
+ @Override
public boolean isEmpty() {
throw new UnsupportedOperationException("Dimension cannot have no positions. Remove the dimension.");
}
@@ -52,6 +55,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#contains(java.lang.Object)
*/
+ @Override
public boolean contains(Object positions) {
return this.positions.contains(positions);
}
@@ -59,6 +63,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#iterator()
*/
+ @Override
public Iterator<String> iterator() {
return this.positions.iterator();
}
@@ -66,6 +71,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#toArray()
*/
+ @Override
public String[] toArray() {
return this.positions.toArray(new String[size()]);
}
@@ -73,6 +79,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#toArray(java.lang.Object)
*/
+ @Override
public <T> T[] toArray(T[] array) {
return this.positions.toArray(array);
}
@@ -80,6 +87,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#add(java.lang.Object)
*/
+ @Override
public boolean add(String
position) {
boolean result = this.positions.add(position);
@@ -90,6 +98,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#remove(java.lang.Object)
*/
+ @Override
public boolean remove(Object position) {
boolean result = this.positions.remove(position);
notifyRemovePosition((String)position);
@@ -99,6 +108,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#containsAll(java.util.Collection)
*/
+ @Override
public boolean containsAll(Collection<?> positions) {
return this.positions.containsAll(positions);
}
@@ -106,6 +116,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#addAll(java.util.Collection)
*/
+ @Override
public boolean addAll(Collection<? extends String> positions) {
return this.positions.addAll(positions);
}
@@ -113,6 +124,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#retainAll(java.util.Collection)
*/
+ @Override
public boolean retainAll(Collection<?> positions) {
return this.positions.retainAll(positions);
}
@@ -120,6 +132,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#removeAll(java.util.Collection)
*/
+ @Override
public boolean removeAll(Collection<?> positions) {
return this.positions.removeAll(positions);
}
@@ -127,6 +140,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.util.Collection#clear()
*/
+ @Override
public void clear() {
throw new UnsupportedOperationException("Dimensions must always have one ordinal");
}
@@ -136,6 +150,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#abandonNSpace(org.frugenplat.framework.nspace.NSpace)
*/
+ @Override
public void abandonNSpace(NSpace n) {
this.spaces.remove(n);
}
@@ -143,6 +158,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#getWithNSpace(org.frugenplat.framework.nspace.NSpace)
*/
+ @Override
public void getWithNSpace(NSpace n) {
this.spaces.add(n);
}
@@ -150,6 +166,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#abandonNSpace(org.frugenplat.framework.nspace.NSpace)
*/
+ @Override
public void abandonNSpaces(Collection<NSpace> spaces) {
this.spaces.removeAll(spaces);
}
@@ -157,6 +174,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#getWithNSpace(org.frugenplat.framework.nspace.NSpace)
*/
+ @Override
public void getWithNSpaces(Collection<NSpace> spaces) {
this.spaces.addAll(spaces);
}
@@ -186,6 +204,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.lang.Object#hashCode()
*/
+ @Override
public int hashCode() {
return name.hashCode();
}
@@ -193,6 +212,7 @@ public class SimpleDimension implements Dimension {
/**
* @see java.lang.Object#toString()
*/
+ @Override
public String toString() {
StringBuffer sb = new StringBuffer();
sb.append(super.toString());
@@ -207,6 +227,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#addPosition(java.lang.String)
*/
+ @Override
public Dimension addPosition(String s) {
add(s);
return this;
@@ -215,6 +236,7 @@ public class SimpleDimension implements Dimension {
/**
* @see org.frugenplat.framework.nspace.Dimension#deletePosition(java.lang.String)
*/
+ @Override
public Dimension deletePosition(String s) {
remove(s);
return this;
diff --git a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SparseNSpace.java b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SparseNSpace.java
index 4c48842..aeb252c 100755
--- a/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SparseNSpace.java
+++ b/israfil-foundation-nspace/src/main/java/net/israfil/foundation/collections/nspace/SparseNSpace.java
@@ -10,7 +10,7 @@ import java.util.HashSet;
import java.util.Set;
/**
- * An implementatino of NSpace that is sparsely populated.
+ * An implementation of NSpace that is sparsely populated.
*
* @author <a href="mailto:mishkin@berteig.com">Mishkin Berteig</a>
* @author <a href="mailto:cgruber@israfil.net">Christian Gruber</a>
@@ -35,6 +35,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#createDimension(java.lang.String, java.lang.String)
*/
+ @Override
public Dimension createDimension(String name, String initialSlot)
throws DimensionExistsException {
Dimension d = new SimpleDimension(name,initialSlot);
@@ -45,6 +46,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#deleteDimension(org.frugenplat.framework.nspace.Dimension)
*/
+ @Override
public void deleteDimension(Dimension dimension) {
throw new UnsupportedOperationException("Not yet implemented.");
}
@@ -52,6 +54,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#dimensionAddedPosition(org.frugenplat.framework.nspace.Dimension, java.lang.String)
*/
+ @Override
public void dimensionAddedPosition(Dimension dimension, String position) {
throw new UnsupportedOperationException("Not yet implemented.");
}
@@ -59,6 +62,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#dimensionRemovedPosition(org.frugenplat.framework.nspace.Dimension, java.lang.String)
*/
+ @Override
public void dimensionRemovedPosition(
Dimension dimension,
String position) {
@@ -68,6 +72,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#getDimension(java.lang.String)
*/
+ @Override
public Dimension getDimension(String name) {
throw new UnsupportedOperationException("Not yet implemented.");
}
@@ -76,6 +81,7 @@ public class SparseNSpace implements NSpace {
* Returns an immutable set of dimensions for inspection..
* @see org.frugenplat.framework.nspace.NSpace#getDimensions()
*/
+ @Override
public Set<Dimension> getDimensions() {
return Collections.unmodifiableSet(dimensions);
}
@@ -91,6 +97,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#getValue()
*/
+ @Override
public Object getValue(Coordinate c) {
// SparseNSpace s = _slice(c);
throw new UnsupportedOperationException("Not yet implemented.");
@@ -103,6 +110,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#isPoint()
*/
+ @Override
public boolean isPoint() {
if (dimensions.size() == 0) return true;
else {
@@ -119,6 +127,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#lookup(org.frugenplat.framework.nspace.Coordinate)
*/
+ @Override
public NSpace lookup(Coordinate c) {
return _lookup(c);
}
@@ -126,6 +135,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#setValue(org.frugenplat.framework.nspace.Coordinate, org.frugenplat.framework.nspace.NSpace)
*/
+ @Override
public NSpace setValue(Coordinate c, NSpace value)
throws InvalidDimensionalityException {
throw new UnsupportedOperationException("Not yet implemented.");
@@ -134,6 +144,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#setValue(org.frugenplat.framework.nspace.Coordinate, java.lang.Object)
*/
+ @Override
public NSpace setValue(Coordinate c, Object value)
throws InvalidDimensionalityException {
throw new UnsupportedOperationException("Not yet implemented.");
@@ -142,6 +153,7 @@ public class SparseNSpace implements NSpace {
/**
* @see org.frugenplat.framework.nspace.NSpace#slice(org.frugenplat.framework.nspace.Coordinate)
*/
+ @Override
public NSpace slice(Coordinate c) {
return _slice(c);
}
@@ -158,6 +170,7 @@ public class SparseNSpace implements NSpace {
/* (non-Javadoc)
* @see org.frugenplat.framework.nspace.NSpace#slice(org.frugenplat.framework.nspace.Dimension)
*/
+ @Override
public NSpace[] slice(Dimension d) {
// TODO Auto-generated method stub
return null;
diff --git a/israfil-foundation-valuemodel/src/main/java/net/israfil/foundation/valuemodel/ValueHolder.java b/israfil-foundation-valuemodel/src/main/java/net/israfil/foundation/valuemodel/ValueHolder.java
index 55f23c3..578ee04 100644
--- a/israfil-foundation-valuemodel/src/main/java/net/israfil/foundation/valuemodel/ValueHolder.java
+++ b/israfil-foundation-valuemodel/src/main/java/net/israfil/foundation/valuemodel/ValueHolder.java
@@ -21,8 +21,8 @@ import net.israfil.foundation.dynamic.DynamicUtil;
public class ValueHolder<E> implements MutableValue<E> {
private E _value = null;
- private Map<Integer, ObserverHolder> _observers = new HashMap<Integer, ObserverHolder>();
- private Map<Integer, VetoerHolder> _vetoers = new HashMap<Integer, VetoerHolder>();
+ private Map<Integer, ObserverHolder> _observers = new HashMap<>();
+ private Map<Integer, VetoerHolder> _vetoers = new HashMap<>();
public ValueHolder(E o) {
set(o);
@@ -30,11 +30,13 @@ public class ValueHolder<E> implements MutableValue<E> {
protected ValueHolder() { }
+ @Override
public E get() {
return _value;
}
- public void set(E newValue) {
+ @Override
+ public void set(E newValue) {
boolean approved = true;
E oldValue = _value;
for (VetoerHolder vetoer : _vetoers.values()) {
@@ -52,6 +54,7 @@ public class ValueHolder<E> implements MutableValue<E> {
/**
* @see org.israfil.maveric.Observable#addObserver(java.lang.Object, java.lang.String)
*/
+ @Override
public void addObservers(String callback, Object ... observers) {
for (Object observer : observers) {
_observers.put(observer.hashCode(),new ObserverHolder(observer,callback));
@@ -61,6 +64,7 @@ public class ValueHolder<E> implements MutableValue<E> {
/**
* @see org.israfil.maveric.Observable#removeObserver(java.lang.Object)
*/
+ @Override
public void removeObservers(Object ... observers) {
for (Object observer : observers) {
_observers.remove(observer.hashCode());
@@ -69,7 +73,8 @@ public class ValueHolder<E> implements MutableValue<E> {
/**
* @see org.israfil.maveric.Vetoable#addVetoer(java.lang.Object, java.lang.String)
*/
- public void addVetoers(String callback, Object ... vetoers) {
+ @Override
+ public void addVetoers(String callback, Object ... vetoers) {
for (Object vetoer : vetoers) {
_vetoers.put(vetoer.hashCode(),new VetoerHolder(vetoer,callback));
}
@@ -78,7 +83,8 @@ public class ValueHolder<E> implements MutableValue<E> {
/**
* @see org.israfil.maveric.Vetoable#removeVetoer(java.lang.Object)
*/
- public void removeVetoers(Object ... vetoers) {
+ @Override
+ public void removeVetoers(Object ... vetoers) {
for (Object vetoer : vetoers) {
_vetoers.remove(vetoer.hashCode());
}
diff --git a/israfil-foundation-valuemodel/src/test/java/net/israfil/foundation/valuemodel/ValueHolderTest.java b/israfil-foundation-valuemodel/src/test/java/net/israfil/foundation/valuemodel/ValueHolderTest.java
index 271c4a0..57d4d4e 100644
--- a/israfil-foundation-valuemodel/src/test/java/net/israfil/foundation/valuemodel/ValueHolderTest.java
+++ b/israfil-foundation-valuemodel/src/test/java/net/israfil/foundation/valuemodel/ValueHolderTest.java
@@ -33,9 +33,9 @@ public class ValueHolderTest {
@BeforeMethod
protected void setUp() throws Exception {
stringValue = "String Value";
- integerValue = new Integer(5);
- stringValueHolder = new ValueHolder<String>(stringValue);
- integerValueHolder = new ValueHolder<Integer>(integerValue);
+ integerValue = Integer.valueOf(5);
+ stringValueHolder = new ValueHolder<>(stringValue);
+ integerValueHolder = new ValueHolder<>(integerValue);
}
@AfterMethod
@@ -51,7 +51,7 @@ public class ValueHolderTest {
*/
public void testValueHolderObject() {
String valueString = "Value";
- ValueHolder<String>valueHolder = new ValueHolder<String>(valueString);
+ ValueHolder<String>valueHolder = new ValueHolder<>(valueString);
Assert.assertEquals(valueString,valueHolder.get());
}
@@ -68,14 +68,14 @@ public class ValueHolderTest {
public void testAddObserverObjectString() {
String stringValue2 = "String Value 2";
- CallbackObject<String> callback = new CallbackObject<String>(stringValueHolder);
+ CallbackObject<String> callback = new CallbackObject<>(stringValueHolder);
stringValueHolder.addObservers("notifyMe:java.lang.Object:java.lang.Object:java.lang.Object",callback);
stringValueHolder.set(stringValue2);
Assert.assertTrue(callback.notified);
}
public void testRemoveObserverObjectString() {
String stringValue2 = "String Value 2";
- CallbackObject<String> callback = new CallbackObject<String>(stringValueHolder);
+ CallbackObject<String> callback = new CallbackObject<>(stringValueHolder);
stringValueHolder.addObservers("notifyMe:java.lang.Object:java.lang.Object:java.lang.Object",callback);
stringValueHolder.removeObservers(callback);
stringValueHolder.set(stringValue2);
@@ -83,12 +83,12 @@ public class ValueHolderTest {
}
public void testAddApproverObjectString() {
String stringValue2 = "String Value 2";
- CallbackObject<String> callback = new CallbackObject<String>(stringValueHolder);
+ CallbackObject<String> callback = new CallbackObject<>(stringValueHolder);
stringValueHolder.addVetoers("approve:java.lang.Object:java.lang.Object:java.lang.Object",callback);
stringValueHolder.set(stringValue2);
Assert.assertEquals(stringValue2,stringValueHolder.get());
- callback = new CallbackObject<String>(stringValueHolder);
+ callback = new CallbackObject<>(stringValueHolder);
stringValueHolder.addVetoers("approve:java.lang.Object:java.lang.Object:java.lang.Object",callback);
stringValueHolder.set(stringValue2);
stringValueHolder.set(stringValue);
@@ -97,7 +97,7 @@ public class ValueHolderTest {
}
public void testRemoveApproverObjectString() {
String stringValue2 = "String Value 2";
- CallbackObject<String> callback = new CallbackObject<String>(stringValueHolder);
+ CallbackObject<String> callback = new CallbackObject<>(stringValueHolder);
stringValueHolder.addVetoers("approve:java.lang.Object:java.lang.Object:java.lang.Object",callback);
stringValueHolder.removeVetoers(callback);
stringValueHolder.set(stringValue2);
@@ -105,7 +105,9 @@ public class ValueHolderTest {
Assert.assertEquals(stringValue,stringValueHolder.get());
Assert.assertFalse(stringValue2.equals(stringValueHolder.get()));
}
- public void finalize() throws Throwable {
+ @SuppressWarnings("deprecation")
+ @Override
+ public void finalize() throws Throwable {
stringValue = null;
integerValue = null;
stringValueHolder = null;
@@ -134,7 +136,9 @@ public class ValueHolderTest {
if (!newValue.equals(stringValue)) return true;
return false;
}
- public void finalize() throws Throwable {
+ @SuppressWarnings("deprecation")
+ @Override
+ public void finalize() throws Throwable {
this.oldValue = null;
this.newValue = null;
super.finalize();