summaryrefslogtreecommitdiff
path: root/src/com/p4square/grow/provider/MapCollectionProvider.java
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2016-04-09 14:22:20 -0700
committerJesse Morgan <jesse@jesterpm.net>2016-04-09 15:48:01 -0700
commit3102d8bce3426d9cf41aeaf201c360d342677770 (patch)
tree38c4f1e8828f9af9c4b77a173bee0d312b321698 /src/com/p4square/grow/provider/MapCollectionProvider.java
parentbbf907e51dfcf157bdee24dead1d531122aa25db (diff)
Switching from Ivy+Ant to Maven.
Diffstat (limited to 'src/com/p4square/grow/provider/MapCollectionProvider.java')
-rw-r--r--src/com/p4square/grow/provider/MapCollectionProvider.java74
1 files changed, 0 insertions, 74 deletions
diff --git a/src/com/p4square/grow/provider/MapCollectionProvider.java b/src/com/p4square/grow/provider/MapCollectionProvider.java
deleted file mode 100644
index 4c5cef6..0000000
--- a/src/com/p4square/grow/provider/MapCollectionProvider.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright 2015 Jesse Morgan
- */
-
-package com.p4square.grow.provider;
-
-import java.io.IOException;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.HashMap;
-
-/**
- * In-memory CollectionProvider implementation, useful for tests.
- *
- * @author Jesse Morgan <jesse@jesterpm.net>
- */
-public class MapCollectionProvider<C, K, V> implements CollectionProvider<C, K, V> {
- private final Map<C, Map<K, V>> mMap;
-
- public MapCollectionProvider() {
- mMap = new HashMap<>();
- }
-
- @Override
- public synchronized V get(C collection, K key) throws IOException {
- Map<K, V> map = mMap.get(collection);
- if (map != null) {
- return map.get(key);
- }
-
- return null;
- }
-
- @Override
- public synchronized Map<K, V> query(C collection) throws IOException {
- Map<K, V> map = mMap.get(collection);
- if (map == null) {
- map = new HashMap<K, V>();
- }
-
- return map;
- }
-
- @Override
- public synchronized Map<K, V> query(C collection, int limit) throws IOException {
- Map<K, V> map = query(collection);
-
- if (map.size() > limit) {
- Map<K, V> smallMap = new HashMap<>();
-
- Iterator<Map.Entry<K, V>> iterator = map.entrySet().iterator();
- for (int i = 0; i < limit; i++) {
- Map.Entry<K, V> entry = iterator.next();
- smallMap.put(entry.getKey(), entry.getValue());
- }
-
- return smallMap;
-
- } else {
- return map;
- }
- }
-
- @Override
- public synchronized void put(C collection, K key, V obj) throws IOException {
- Map<K, V> map = mMap.get(collection);
- if (map == null) {
- map = new HashMap<K, V>();
- mMap.put(collection, map);
- }
-
- map.put(key, obj);
- }
-}