m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java
diff options
context:
space:
mode:
authorMartin <marcin.j.chrzanowski@gmail.com>2019-12-26 15:27:44 +0100
committerGitHub <noreply@github.com>2019-12-26 15:27:44 +0100
commit8b076ed54b692381a3c1410b704bdad33ad5ca0b (patch)
tree004c318b28166e70d3ef8fd988d75fef136c68ff /src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java
parentcbb43ba62d11888ce73314465dcffb537b6cd295 (diff)
Refactor handle (#75)
* Refactor passing messages to handler * Add RMIMessage skeleton * Handle RMI message in RMI module
Diffstat (limited to 'src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java')
-rw-r--r--src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java
index 4e75a51..1b078cf 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/Agent.java
@@ -5,29 +5,29 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
-import pl.edu.mimuw.cloudatlas.agent.messages.AgentMessage;
import pl.edu.mimuw.cloudatlas.agent.modules.Module;
+import pl.edu.mimuw.cloudatlas.agent.modules.ModuleType;
import pl.edu.mimuw.cloudatlas.agent.modules.RMI;
import pl.edu.mimuw.cloudatlas.agent.modules.TimerScheduler;
public class Agent {
- public static HashMap<AgentMessage.AgentModule, Module> initializeModules() {
- HashMap<AgentMessage.AgentModule, Module> modules = new HashMap<AgentMessage.AgentModule, Module>();
- modules.put(AgentMessage.AgentModule.TIMER_SCHEDULER, new TimerScheduler(AgentMessage.AgentModule.TIMER_SCHEDULER));
- modules.put(AgentMessage.AgentModule.RMI, new RMI(AgentMessage.AgentModule.RMI));
+ public static HashMap<ModuleType, Module> initializeModules() {
+ HashMap<ModuleType, Module> modules = new HashMap<ModuleType, Module>();
+ modules.put(ModuleType.TIMER_SCHEDULER, new TimerScheduler(ModuleType.TIMER_SCHEDULER));
+ modules.put(ModuleType.RMI, new RMI(ModuleType.RMI));
// TODO add modules as we implement them
return modules;
}
- public static HashMap<AgentMessage.AgentModule, Executor> initializeExecutors(
- HashMap<AgentMessage.AgentModule, Module> modules) {
- HashMap<AgentMessage.AgentModule, Executor> executors = new HashMap<AgentMessage.AgentModule, Executor>();
+ public static HashMap<ModuleType, Executor> initializeExecutors(
+ HashMap<ModuleType, Module> modules) {
+ HashMap<ModuleType, Executor> executors = new HashMap<ModuleType, Executor>();
Iterator it = modules.entrySet().iterator();
while (it.hasNext()) {
- Map.Entry<AgentMessage.AgentModule, Module> moduleEntry =
- (Map.Entry<AgentMessage.AgentModule, Module>) it.next();
+ Map.Entry<ModuleType, Module> moduleEntry =
+ (Map.Entry<ModuleType, Module>) it.next();
Module module = moduleEntry.getValue();
Executor executor = new Executor(module);
executors.put(moduleEntry.getKey(), executor);
@@ -36,13 +36,13 @@ public class Agent {
return executors;
}
- public static ArrayList<Thread> initializeExecutorThreads(HashMap<AgentMessage.AgentModule, Executor> executors) {
+ public static ArrayList<Thread> initializeExecutorThreads(HashMap<ModuleType, Executor> executors) {
ArrayList<Thread> executorThreads = new ArrayList<Thread>();
Iterator it = executors.entrySet().iterator();
while (it.hasNext()) {
- Map.Entry<AgentMessage.AgentModule, Executor> executorEntry =
- (Map.Entry<AgentMessage.AgentModule, Executor>) it.next();
+ Map.Entry<ModuleType, Executor> executorEntry =
+ (Map.Entry<ModuleType, Executor>) it.next();
Thread thread = new Thread(executorEntry.getValue());
thread.setDaemon(true);
System.out.println("Initializing executor " + executorEntry.getKey());
@@ -60,8 +60,8 @@ public class Agent {
}
public static void runModulesAsThreads() {
- HashMap<AgentMessage.AgentModule, Module> modules = initializeModules();
- HashMap<AgentMessage.AgentModule, Executor> executors = initializeExecutors(modules);
+ HashMap<ModuleType, Module> modules = initializeModules();
+ HashMap<ModuleType, Executor> executors = initializeExecutors(modules);
ArrayList<Thread> executorThreads = initializeExecutorThreads(executors);
Thread eventBusThread = new Thread(new EventBus(executors));