diff --git a/src/main/java/br/ufrgs/inf/prosoft/memoizeittf/MemoizeItTF.java b/src/main/java/br/ufrgs/inf/prosoft/memoizeittf/MemoizeItTF.java
index ab4c44f..ad9a454 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/memoizeittf/MemoizeItTF.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/memoizeittf/MemoizeItTF.java
@@ -6,8 +6,10 @@ import br.ufrgs.inf.prosoft.memoizeittf.adapter.Thresholds;
import br.ufrgs.inf.prosoft.memoizeittf.facade.Method;
import br.ufrgs.inf.prosoft.memoizeittf.utils.Methods;
import java.util.List;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
+import java.util.stream.Collectors;
public class MemoizeItTF extends MemoizeIt {
@@ -48,7 +50,12 @@ public class MemoizeItTF extends MemoizeIt {
LOGGER.log(Level.INFO, "Ranking {0} methods according STpTiC", tfcacheMethods.size());
tfcacheMethods.sort((method1, method2) -> method2.getBestMetrics().getSavedTimePerTimeInCache().compareTo(method1.getBestMetrics().getSavedTimePerTimeInCache()));
+
LOGGER.log(Level.INFO, "Printing recommendations for {0} methods", tfcacheMethods.size());
+ this.methods.synchronize();
+ Map<String, br.ufrgs.inf.prosoft.memoizeit.Method> memoizeItMethods = this.methods.getMemoizeitMethods().stream()
+ .collect(Collectors.toMap(key -> key.getName(), value -> value));
+
tfcacheMethods.forEach(method -> {
System.out.println(method.getName()
+ " Occurrences " + method.getOccurrencesSize()
@@ -58,6 +65,7 @@ public class MemoizeItTF extends MemoizeIt {
+ " Saves " + method.getBestMetrics().getSavedTime()
+ " Hits " + method.getBestMetrics().getHits()
+ " Stales " + method.getBestMetrics().getStales());
+ suggestImplementation(memoizeItMethods.get(method.getName()));
});
}