@Override
    public V remove(K key) {
        begin();
        V oldValue = transactionalMap.remove(key);
        commit();
        return oldValue;
    }
@Test
    public void testRemove() {
        map.put(23, "value-23");
        assertTrue(map.containsKey(23));

        assertEquals("value-23", adapter.remove(23));
        assertFalse(map.containsKey(23));
    }