Example usage for org.apache.commons.collections15.keyvalue DefaultMapEntry DefaultMapEntry

List of usage examples for org.apache.commons.collections15.keyvalue DefaultMapEntry DefaultMapEntry

Introduction

In this page you can find the example usage for org.apache.commons.collections15.keyvalue DefaultMapEntry DefaultMapEntry.

Prototype

public DefaultMapEntry(final K key, final V value) 

Source Link

Document

Constructs a new entry with the specified key and given value.

Usage

From source file:de.dhke.projects.cutil.collections.aspect.AspectMultiMap.java

@Override
public V remove(final Object key, final Object item) {
    @SuppressWarnings("unchecked")
    Map.Entry<K, V> entry = new DefaultMapEntry<>((K) key, (V) item);
    if (_baseMap.containsValue(key, item)) {
        notifyBeforeElementRemoved(this, entry);
        V value = _baseMap.remove(key, item);
        notifyAfterElementRemoved(this, entry);
        return value;
    } else/*from ww  w  .  jav a 2s.  c om*/
        return null;
}

From source file:de.dhke.projects.cutil.collections.iterator.MultiMapItemIteratorTest.java

@Test
public void testHasNextSingleEntry() {
    _map.put("A", "1");

    final Iterator<Map.Entry<String, String>> iter = MultiMapEntryIterator.decorate(_map);
    assertTrue(iter.hasNext());//from w w  w  .j  a v a2 s  .co  m
    assertEquals(new DefaultMapEntry<>("A", "1"), iter.next());
    assertFalse(iter.hasNext());
}

From source file:de.dhke.projects.cutil.collections.iterator.MultiMapItemIteratorTest.java

@Test
public void testHasNextTwoEntry() {
    _map.put("A", "1");
    _map.put("B", "2");

    final Iterator<Map.Entry<String, String>> iter = MultiMapEntryIterator.decorate(_map);
    assertTrue(iter.hasNext());/* w w  w  .j  a va 2  s .  com*/
    assertEquals(new DefaultMapEntry<>("A", "1"), iter.next());
    assertTrue(iter.hasNext());
    assertEquals(new DefaultMapEntry<>("B", "2"), iter.next());
    assertFalse(iter.hasNext());
}

From source file:de.dhke.projects.cutil.collections.aspect.AspectMap.java

@Override
public V put(final K key, final V value) {
    if (containsKey(key)) {
        V oldValue = get(key);/*from ww w  . jav  a  2s .co  m*/
        final DefaultMapEntry<K, V> oldEntry = new DefaultMapEntry<>(key, oldValue);
        final DefaultMapEntry<K, V> newEntry = new DefaultMapEntry<>(key, value);
        CollectionItemReplacedEvent<Map.Entry<K, V>, Map<K, V>> ev = new CollectionItemReplacedEvent<Map.Entry<K, V>, Map<K, V>>(
                this, this, oldEntry, newEntry);
        notifyBeforeElementReplaced(ev);
        oldValue = _baseMap.put(key, value);
        notifyAfterElementReplaced(ev);
        return oldValue;
    } else {
        final DefaultMapEntry<K, V> newEntry = new DefaultMapEntry<>(key, value);
        CollectionItemEvent<Map.Entry<K, V>, Map<K, V>> ev = new CollectionItemEvent<Entry<K, V>, Map<K, V>>(
                this, this, newEntry);
        notifyBeforeElementAdded(ev);
        V oldValue = _baseMap.put(key, value);
        notifyAfterElementAdded(ev);
        return oldValue;
    }
}

From source file:de.dhke.projects.cutil.collections.iterator.MultiMapItemIteratorTest.java

@Test
public void testHasNextDoubleEntry() {
    _map.put("A", "1");
    _map.put("A", "2");

    final Iterator<Map.Entry<String, String>> iter = MultiMapEntryIterator.decorate(_map);
    assertTrue(iter.hasNext());/*from ww  w  .j ava 2s.co  m*/
    assertEquals(new DefaultMapEntry<>("A", "1"), iter.next());
    assertTrue(iter.hasNext());
    assertEquals(new DefaultMapEntry<>("A", "2"), iter.next());
    assertFalse(iter.hasNext());
}

From source file:de.dhke.projects.cutil.collections.aspect.AspectMapEntrySetTest.java

/**
 * Test of contains method, of class AspectMapEntrySet.
 *///from   w w w. ja  v a  2  s  .  co m
@Test
public void testContains() {
    assertTrue(_entrySet.contains(new DefaultMapEntry<>("A", "1")));
    assertTrue(_entrySet.contains(new DefaultMapEntry<>("B", "2")));
    assertTrue(_entrySet.contains(new DefaultMapEntry<>("C", "3")));
    assertTrue(_entrySet.contains(new DefaultMapEntry<>("D", "4")));
    assertFalse(_entrySet.contains(new DefaultMapEntry<>("E", "5")));
}

From source file:de.dhke.projects.cutil.collections.iterator.MultiMapEntryIterator.java

private Map.Entry<K, V> advance() {
    Map.Entry<K, V> currentEntry = _currentEntry;
    if (_currentValueCollection != null) {
        assert _currentKey != null;
        if (_currentValueCollection.hasNext()) {
            final V currentValue = _currentValueCollection.next();
            _currentEntry = new DefaultMapEntry<>(_currentKey, currentValue);
        } else {//from ww  w  .j  ava 2  s . c o  m
            _currentEntry = null;
            while ((_baseIter.hasNext()) && (_currentValueCollection != null) && (_currentEntry == null)) {
                final Map.Entry<K, Collection<V>> nextMapEntry = _baseIter.next();
                _currentKey = nextMapEntry.getKey();
                if (nextMapEntry.getValue() != null) {
                    _currentValueCollection = nextMapEntry.getValue().iterator();
                    if (_currentValueCollection.hasNext()) {
                        final V currentValue = _currentValueCollection.next();
                        _currentEntry = new DefaultMapEntry<>(_currentKey, currentValue);
                    }
                }
            }
        }
    }
    return currentEntry;
}

From source file:de.dhke.projects.cutil.collections.cow.CopyOnWriteMultiMapEntrySetTest.java

/**
 * Test of contains method, of class CopyOnWriteMultiMapEntrySet.
 *///from w w  w . ja  v  a 2s  . c o m
@Test
public void testContains() {
    Map.Entry<String, Collection<String>> e = new DefaultMapEntry<String, Collection<String>>("1",
            Arrays.asList("a", "A"));
    assertTrue(_entrySet.contains(e));
}

From source file:de.dhke.projects.cutil.collections.aspect.AspectMapKeySet.java

private boolean batchRemove(final Collection<?> c, final boolean retain) {
    for (K key : _keySet) {
        if (c.contains(key) != retain) {
            Map.Entry<K, V> entry = new DefaultMapEntry<>(key, _aspectMap.get(key));
            _aspectMap.notifyBeforeElementRemoved(_aspectMap, entry);
        }/*from  w w w. ja  va2 s . com*/
    }

    boolean wasRemoved = false;
    Iterator<K> iter = _aspectMap.getDecoratee().keySet().iterator();
    while (iter.hasNext()) {
        K key = iter.next();
        if (c.contains(key) != retain) {
            Map.Entry<K, V> entry = new DefaultMapEntry<>(key, _aspectMap.get(key));
            iter.remove();
            wasRemoved = true;
            _aspectMap.notifyAfterElementRemoved(_aspectMap, entry);
        }
    }
    return wasRemoved;
}

From source file:de.dhke.projects.cutil.collections.aspect.AspectMultiMap.java

@Override
public V put(final K key, final V value) {
    Map.Entry<K, V> entry = new DefaultMapEntry<>(key, value);
    CollectionItemEvent<Map.Entry<K, V>, MultiMap<K, V>> ev = notifyBeforeElementAdded(this, entry);
    final V oldValue = _baseMap.put(key, value);
    /* Notify after add only if the element was actually added */
    if (oldValue != null)
        notifyAfterElementAdded(ev);//w  w w  .java 2  s .c  o m
    return oldValue;
}