You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mb...@apache.org on 2007/03/12 00:22:48 UTC
svn commit: r517047 - in /myfaces/core/branches/jsf12/impl/src:
main/java/org/apache/myfaces/util/AbstractAttributeMap.java
test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java
Author: mbr
Date: Sun Mar 11 16:22:47 2007
New Revision: 517047
URL: http://svn.apache.org/viewvc?view=rev&rev=517047
Log:
fixed map.values implementation
Modified:
myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/util/AbstractAttributeMap.java
myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java
Modified: myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/util/AbstractAttributeMap.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/util/AbstractAttributeMap.java?view=diff&rev=517047&r1=517046&r2=517047
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/util/AbstractAttributeMap.java (original)
+++ myfaces/core/branches/jsf12/impl/src/main/java/org/apache/myfaces/util/AbstractAttributeMap.java Sun Mar 11 16:22:47 2007
@@ -163,31 +163,32 @@
}
@Override
- public boolean contains(Object o)
+ public void clear()
{
- return AbstractAttributeMap.this.containsKey(o);
+ AbstractAttributeMap.this.clear();
}
+ }
+ private class KeySet extends AbstractAttributeSet<String>
+ {
@Override
- public boolean remove(Object o)
+ public Iterator<String> iterator()
{
- return AbstractAttributeMap.this.remove(o) != null;
+ return new KeyIterator();
}
@Override
- public void clear()
+ public boolean contains(Object o)
{
- AbstractAttributeMap.this.clear();
+ return AbstractAttributeMap.this.containsKey(o);
}
- }
- private class KeySet extends AbstractAttributeSet<String>
- {
@Override
- public Iterator<String> iterator()
+ public boolean remove(Object o)
{
- return new KeyIterator();
+ return AbstractAttributeMap.this.remove(o) != null;
}
+
}
private abstract class AbstractAttributeIterator<E> implements Iterator<E>
@@ -238,6 +239,25 @@
}
@Override
+ public boolean contains(Object o)
+ {
+ if (o == null)
+ {
+ return false;
+ }
+
+ for (Iterator it = iterator(); it.hasNext();)
+ {
+ if (o.equals(it.next()))
+ {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ @Override
public boolean remove(Object o)
{
if (o == null)
@@ -381,7 +401,6 @@
return false;
return true;
}
-
-
+
}
}
Modified: myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java
URL: http://svn.apache.org/viewvc/myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java?view=diff&rev=517047&r1=517046&r2=517047
==============================================================================
--- myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java (original)
+++ myfaces/core/branches/jsf12/impl/src/test/java/org/apache/myfaces/util/AbstractAttributeMapTest.java Sun Mar 11 16:22:47 2007
@@ -18,9 +18,9 @@
*/
package org.apache.myfaces.util;
-import java.util.Arrays;
-import java.util.Collections;
import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
import junit.framework.TestCase;
@@ -30,39 +30,61 @@
*/
public class AbstractAttributeMapTest extends TestCase
{
+ private TestAttributeMap _testimpl;
+
+ @Override
+ protected void setUp() throws Exception
+ {
+ Map map = new HashMap();
+ map.put("key", "value");
+ _testimpl = new TestAttributeMap(map);
+ }
+
/**
* Test method for {@link java.util.AbstractMap#hashCode()}.
*/
public void testHashCodeEquals()
{
- TestAttributeMap map = new TestAttributeMap();
- assertEquals(map.hashCode(), map.hashCode());
+ assertEquals(_testimpl.hashCode(), _testimpl.hashCode());
+ }
+
+ public void testValues() throws Exception
+ {
+ _testimpl.put("myKey", "myValue");
+ assertTrue(_testimpl.values().contains("myValue"));
}
private static final class TestAttributeMap extends AbstractAttributeMap
{
+ private final Map _values;
+
+ public TestAttributeMap(Map values)
+ {
+ _values = values;
+ }
+
@Override
protected Object getAttribute(String key)
{
- return "value";
+ return _values.get(key);
}
@Override
protected Enumeration getAttributeNames()
{
- return Collections.enumeration(Arrays.asList(new String[] { "attr1", "attr2" }));
+ return new IteratorEnumeration(_values.keySet().iterator());
}
@Override
protected void removeAttribute(String key)
{
- fail();
+ _values.remove(key);
}
@Override
protected void setAttribute(String key, Object value)
{
- fail();
+ _values.put(key, value);
}
}