@Override public WindowsStore create(Map<String, Object> topoConf) { if (inMemoryWindowsStore == null) { inMemoryWindowsStore = new InMemoryWindowsStore(); } return inMemoryWindowsStore; } }
@Override public Iterable<Object> get(List<String> keys) { List<Object> values = new ArrayList<>(); for (String key : keys) { values.add(get(key)); } return values; }
@Override public void put(String key, Object value) { _put(key, value); if (backingStore != null) { backingStore.put(key, value); } }
private void _put(String key, Object value) { if (!canAdd()) { return; } store.put(key, value); incrementCurrentSize(); }
@Test public void testInMemoryWindowStore() { InMemoryWindowsStore store = new InMemoryWindowsStore(); String keyPrefix = "key"; String valuePrefix = "valuePrefix"; int ct = 10; for (int i = 0; i < ct; i++) { store.put(keyPrefix + i, valuePrefix + i); } for (int i = 0; i < ct; i++) { Assert.assertTrue((valuePrefix + i).equals(store.get(keyPrefix + i))); } store.remove(keyPrefix + 1); Assert.assertNull(store.get(keyPrefix + 1)); }
@Override public void remove(String key) { _remove(key); if (backingStore != null) { backingStore.remove(key); } }
private void _remove(String key) { Object oldValue = store.remove(key); if (oldValue != null) { decrementSize(); if (backingStore != null) { backingStore.remove(key); } } }
private void _put(String key, Object value) { if(!canAdd()) { return; } store.put(key, value); incrementCurrentSize(); }
@Override public void removeAll(Collection<String> keys) { for (String key : keys) { _remove(key); } if (backingStore != null) { backingStore.removeAll(keys); } }
private void _remove(String key) { Object oldValue = store.remove(key); if(oldValue != null) { decrementSize(); if(backingStore != null) { backingStore.remove(key); } } }
@Override public WindowsStore create(Map stormConf) { if(inMemoryWindowsStore == null) { inMemoryWindowsStore = new InMemoryWindowsStore(); } return inMemoryWindowsStore; } }
@Override public Iterable<Object> get(List<String> keys) { List<Object> values = new ArrayList<>(); for (String key : keys) { values.add(get(key)); } return values; }
@Override public void putAll(Collection<Entry> entries) { for (Entry entry : entries) { _put(entry.key, entry.value); } if (backingStore != null) { backingStore.putAll(entries); } }
@Override public void remove(String key) { _remove(key); if(backingStore != null) { backingStore.remove(key); } }
@Override public void put(String key, Object value) { _put(key, value); if(backingStore != null) { backingStore.put(key, value); } }
@Override public void removeAll(Collection<String> keys) { for (String key : keys) { _remove(key); } if(backingStore != null) { backingStore.removeAll(keys); } }
@Override public void putAll(Collection<Entry> entries) { for (Entry entry : entries) { _put(entry.key, entry.value); } if(backingStore != null) { backingStore.putAll(entries); } }