Skip to content

Commit

Permalink
Move ip gossip strategy selection to simulation demo main
Browse files Browse the repository at this point in the history
  • Loading branch information
vladamatena committed Nov 3, 2014
1 parent c6e048b commit 03ea4cb
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,12 @@
import cz.cuni.mff.d3s.deeco.model.runtime.custom.RuntimeMetadataFactoryExt;
import cz.cuni.mff.d3s.deeco.network.DirectGossipStrategy;
import cz.cuni.mff.d3s.deeco.network.DirectRecipientSelector;
import cz.cuni.mff.d3s.deeco.network.IPGossipStrategy;
import cz.cuni.mff.d3s.deeco.network.KnowledgeDataManager;
import cz.cuni.mff.d3s.deeco.network.PacketReceiver;
import cz.cuni.mff.d3s.deeco.network.PacketSender;
import cz.cuni.mff.d3s.deeco.network.PublisherTask;
import cz.cuni.mff.d3s.deeco.network.RandomIPGossip;
import cz.cuni.mff.d3s.deeco.runtime.RuntimeFramework;
import cz.cuni.mff.d3s.deeco.simulation.SimulationRuntimeBuilder;
import cz.cuni.mff.d3s.deeco.simulation.omnet.OMNetSimulation;
Expand Down Expand Up @@ -151,7 +153,8 @@ public Collection<String> filterRecipients(
if (component.hasIP) {
recipientSelectors = Arrays.asList((DirectRecipientSelector) directRecipientSelector);
}
RuntimeFramework runtime = builder.build(host, sim, null, model, recipientSelectors, directGossipStrategy);
IPGossipStrategy ipGossipStrategy = new RandomIPGossip(recipientSelectors, directGossipStrategy);
RuntimeFramework runtime = builder.build(host, sim, null, model, ipGossipStrategy);
runtimes.add(runtime);
runtime.start();
i++;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,9 @@
import cz.cuni.mff.d3s.deeco.model.runtime.api.RuntimeMetadata;
import cz.cuni.mff.d3s.deeco.model.runtime.custom.TimeTriggerExt;
import cz.cuni.mff.d3s.deeco.network.AbstractHost;
import cz.cuni.mff.d3s.deeco.network.DirectGossipStrategy;
import cz.cuni.mff.d3s.deeco.network.DirectRecipientSelector;
import cz.cuni.mff.d3s.deeco.network.IPGossipStrategy;
import cz.cuni.mff.d3s.deeco.network.KnowledgeDataManager;
import cz.cuni.mff.d3s.deeco.network.PublisherTask;
import cz.cuni.mff.d3s.deeco.network.RandomIPGossip;
import cz.cuni.mff.d3s.deeco.runtime.RuntimeFramework;
import cz.cuni.mff.d3s.deeco.runtime.RuntimeFrameworkImpl;
import cz.cuni.mff.d3s.deeco.simulation.scheduler.SimulationScheduler;
Expand All @@ -24,8 +22,7 @@ public class SimulationRuntimeBuilder {

public RuntimeFramework build(AbstractHost host,
CallbackProvider callbackProvider, Collection<? extends TimerTaskListener> listeners, RuntimeMetadata model,
Collection<DirectRecipientSelector> recipientSelectors,
DirectGossipStrategy directGossipStrategy) {
IPGossipStrategy ipGossipStrategy) {
if (model == null) {
throw new IllegalArgumentException("Model must not be null");
}
Expand All @@ -45,7 +42,7 @@ public RuntimeFramework build(AbstractHost host,

KnowledgeDataManager kdManager = new KnowledgeDataManager(container,
host.getKnowledgeDataSender(), model.getEnsembleDefinitions(),
host.getHostId(), scheduler, new RandomIPGossip(recipientSelectors, directGossipStrategy));
host.getHostId(), scheduler, ipGossipStrategy);
host.setKnowledgeDataReceiver(kdManager);
// Set up the publisher task
TimeTriggerExt publisherTrigger = new TimeTriggerExt();
Expand Down

0 comments on commit 03ea4cb

Please sign in to comment.