cache

changed key to Object

12/12/2018 6:04:33 AM

Details

diff --git a/src/main/java/br/ufrgs/inf/prosoft/cache/Cache.java b/src/main/java/br/ufrgs/inf/prosoft/cache/Cache.java
index 0ed51a2..3b2a650 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/cache/Cache.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/cache/Cache.java
@@ -11,12 +11,12 @@ package br.ufrgs.inf.prosoft.cache;
  */
 public interface Cache {
 
-    public Object put(String key, Object value, long timeToLive);
+    public Object put(Object key, Object value, long timeToLive);
 
-    public Object put(String key, Object value);
+    public Object put(Object key, Object value);
 
     public Object get(Object key);
 
-    public void invalidate(String key);
+    public void invalidate(Object key);
 
 }
diff --git a/src/main/java/br/ufrgs/inf/prosoft/cache/MultiCache.java b/src/main/java/br/ufrgs/inf/prosoft/cache/MultiCache.java
index f4084f1..de0dc83 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/cache/MultiCache.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/cache/MultiCache.java
@@ -13,7 +13,7 @@ import java.util.logging.Logger;
  *
  * @author romulo
  */
-public class MultiCache extends HashMap<String, Object> implements Cache {
+public class MultiCache extends HashMap<Object, Object> implements Cache {
 
     private final CachingPerformance cachingPerformance;
 
@@ -30,7 +30,7 @@ public class MultiCache extends HashMap<String, Object> implements Cache {
     }
 
     @Override
-    public Object put(String key, Object value, long timeToLive) {
+    public Object put(Object key, Object value, long timeToLive) {
         Object put = put(key, value);
         Thread thread = new Thread(() -> {
             try {
@@ -45,7 +45,7 @@ public class MultiCache extends HashMap<String, Object> implements Cache {
     }
 
     @Override
-    public Object put(String key, Object value) {
+    public Object put(Object key, Object value) {
         Object oldReference = super.put(key, value);
         if (oldReference == null) {
             this.cachingPerformance.registerSize(size());
@@ -65,7 +65,7 @@ public class MultiCache extends HashMap<String, Object> implements Cache {
     }
 
     @Override
-    public void invalidate(String key) {
+    public void invalidate(Object key) {
         Object remove = this.remove(key);
         if (remove != null) {
             this.cachingPerformance.registerInvalidation();
diff --git a/src/main/java/br/ufrgs/inf/prosoft/cache/SingleCache.java b/src/main/java/br/ufrgs/inf/prosoft/cache/SingleCache.java
index 12d6ac1..ff090a7 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/cache/SingleCache.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/cache/SingleCache.java
@@ -15,7 +15,7 @@ import java.util.logging.Logger;
 public class SingleCache implements Cache {
 
     private final CachingPerformance cachingPerformance;
-    private String lastInput;
+    private Object lastInput;
     private Object result;
 
     public SingleCache() {
@@ -31,7 +31,7 @@ public class SingleCache implements Cache {
     }
 
     @Override
-    public Object put(String key, Object value, long timeToLive) {
+    public Object put(Object key, Object value, long timeToLive) {
         Object put = put(key, value);
         Thread thread = new Thread(() -> {
             try {
@@ -47,7 +47,7 @@ public class SingleCache implements Cache {
     }
 
     @Override
-    public Object put(String key, Object value) {
+    public Object put(Object key, Object value) {
         this.lastInput = key;
         this.result = value;
         this.cachingPerformance.registerSize(1);
@@ -65,7 +65,7 @@ public class SingleCache implements Cache {
     }
 
     @Override
-    public void invalidate(String key) {
+    public void invalidate(Object key) {
         this.lastInput = null;
         this.result = null;
         this.cachingPerformance.registerInvalidation();