Slight API change. Now there is only one CcnxAppHelper that can create all CcnxApps
diff --git a/examples/abilene-topology.cc b/examples/abilene-topology.cc
index 660d899..d17f23a 100644
--- a/examples/abilene-topology.cc
+++ b/examples/abilene-topology.cc
@@ -121,10 +121,14 @@
ccnxHelper.InstallAll ();
NS_LOG_INFO ("Installing Applications");
- CcnxConsumerHelper consumerHelper ("/5");
+ CcnxAppHelper consumerHelper ("ns3::CcnxConsumer");
+ consumerHelper.SetPrefix ("/5");
ApplicationContainer consumers = consumerHelper.Install (Names::Find<Node> ("/abilene", "ATLAng"));
-
- CcnxProducerHelper producerHelper ("/5",1024);
+
+ CcnxAppHelper producerHelper ("ns3::CcnxProducer");
+ producerHelper.SetPrefix ("/5");
+ producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
+
ApplicationContainer producers = producerHelper.Install (Names::Find<Node> ("/abilene", "IPLSng"));
// // Populate FIB based on IPv4 global routing controller
diff --git a/examples/annotated-topology-read-example.cc b/examples/annotated-topology-read-example.cc
index c220873..450d8d1 100644
--- a/examples/annotated-topology-read-example.cc
+++ b/examples/annotated-topology-read-example.cc
@@ -93,15 +93,19 @@
Ptr<CcnxFaceContainer> cf = ccnx.Install (nodes);
NS_LOG_INFO ("Installing Applications");
- CcnxConsumerHelper helper ("/3");
- ApplicationContainer app = helper.Install (nodes.Get(1));
+ CcnxAppHelper helper ("ns3::CcnxConsumer");
+ helper.SetPrefix ("/3");
+ ApplicationContainer app = helper.Install ("1");
app.Start (Seconds (1.0));
app.Stop (Seconds (1000.05));
-
- CcnxProducerHelper helper3 ("/3",120);
- ApplicationContainer app3 = helper3.Install(nodes.Get(6));
- app3.Start(Seconds(0.0));
- app3.Stop(Seconds(1500.0));
+
+ CcnxAppHelper helper2 ("ns3::CcnxProducer");
+ helper2.SetPrefix ("/3");
+ helper2.SetAttribute ("PayloadSize", StringValue("1024"));
+ ApplicationContainer app2 = helper2.Install("3");
+
+ app2.Start(Seconds(0.0));
+ app2.Stop(Seconds(1500.0));
// ------------------------------------------------------------
// -- Run the simulation
diff --git a/examples/ccnx-grid.cc b/examples/ccnx-grid.cc
index 51d7858..28a021b 100644
--- a/examples/ccnx-grid.cc
+++ b/examples/ccnx-grid.cc
@@ -116,13 +116,16 @@
std::ostringstream prefix;
prefix << "/" << producer->GetId ();
- CcnxConsumerHelper consumerHelper (prefix.str ());
+ CcnxAppHelper consumerHelper ("ns3::CcnxConsumer");
+ consumerHelper.SetPrefix (prefix.str ());
ApplicationContainer consumers = consumerHelper.Install (consumerNodes);
// consumers.Start (Seconds (0.0));
// consumers.Stop (finishTime);
- CcnxProducerHelper producerHelper (prefix.str (),1024);
+ CcnxAppHelper producerHelper ("ns3::CcnxProducer");
+ producerHelper.SetPrefix (prefix.str ());
+ producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
ApplicationContainer producers = producerHelper.Install (producer);
// producers.Start(Seconds(0.0));
diff --git a/examples/ccnx-test.cc b/examples/ccnx-test.cc
index d5cb1ad..cae2815 100644
--- a/examples/ccnx-test.cc
+++ b/examples/ccnx-test.cc
@@ -46,13 +46,17 @@
CcnxStackHelper ccnx;
Ptr<CcnxFaceContainer> cf = ccnx.Install (c);
- CcnxConsumerHelper helper ("/3");
+ CcnxAppHelper helper ("ns3::CcnxConsumer");
+ helper.SetPrefix ("/3");
ApplicationContainer app = helper.Install ("1");
app.Start (Seconds (1.0));
app.Stop (Seconds (10.05));
-
- CcnxProducerHelper helper2 ("/3",120);
+
+ CcnxAppHelper helper2 ("ns3::CcnxProducer");
+ helper2.SetPrefix ("/3");
+ helper2.SetAttribute ("PayloadSize", StringValue("1024"));
ApplicationContainer app2 = helper2.Install("3");
+
app2.Start(Seconds(0.0));
app2.Stop(Seconds(15.0));
diff --git a/examples/synthetic-topology.cc b/examples/synthetic-topology.cc
index f03c22e..39c45eb 100644
--- a/examples/synthetic-topology.cc
+++ b/examples/synthetic-topology.cc
@@ -88,7 +88,9 @@
ccnxHelper.InstallAll ();
NS_LOG_INFO ("Installing Applications");
- CcnxConsumerHelper consumerHelper ("/6");
+ CcnxAppHelper consumerHelper ("ns3::CcnxConsumer");
+
+ consumerHelper.SetPrefix ("/6");
ApplicationContainer consumers = consumerHelper.Install (Names::Find<Node> ("/synthetic", "c1"));
consumerHelper.SetPrefix ("/7");
@@ -100,24 +102,27 @@
consumerHelper.SetPrefix ("/10");
ApplicationContainer consumers4 = consumerHelper.Install(Names::Find<Node> ("/synthetic", "c4"));
- consumers.Start (Seconds (2.121212123));
- consumers2.Start (Seconds (0.166666));
- consumers3.Start (Seconds (4.1235432));
- consumers4.Start (Seconds (3.00005421));
-
- CcnxProducerHelper producerHelper ("/6",1024);
- ApplicationContainer producers = producerHelper.Install (Names::Find<Node> ("/synthetic", "p1"));
-
- CcnxProducerHelper producerHelper2 ("/7",1024);
- ApplicationContainer producers2 = producerHelper2.Install (Names::Find<Node> ("/synthetic", "p2"));
+ consumers.Start (Seconds (0));
+ consumers2.Start (Seconds (10));
+ consumers3.Start (Seconds (20));
+ consumers4.Start (Seconds (30));
- CcnxProducerHelper producerHelper3 ("/8",1024);
- ApplicationContainer producers3 = producerHelper3.Install (Names::Find<Node> ("/synthetic", "p3"));
+ /////////////////////////////////////////////
- CcnxProducerHelper producerHelper4 ("/10",1024);
- ApplicationContainer producers4 = producerHelper4.Install (Names::Find<Node> ("/synthetic", "p4"));
+ CcnxAppHelper producerHelper ("ns3::CcnxProducer");
+ producerHelper.SetAttribute ("PayloadSize", StringValue("1024"));
+
+ producerHelper.SetPrefix ("/6");
+ producerHelper.Install (Names::Find<Node> ("/synthetic", "p1"));
+
+ producerHelper.SetPrefix ("/7");
+ producerHelper.Install (Names::Find<Node> ("/synthetic", "p2"));
+
+ producerHelper.SetPrefix ("/8");
+ producerHelper.Install (Names::Find<Node> ("/synthetic", "p3"));
- Simulator::Schedule (Seconds (10.0), PrintTime);
+ producerHelper.SetPrefix ("/10");
+ producerHelper.Install (Names::Find<Node> ("/synthetic", "p4"));
// Populate FIB based on IPv4 global routing controller
ccnxHelper.InstallFakeGlobalRoutes ();
@@ -126,6 +131,8 @@
ccnxHelper.InstallRouteTo (Names::Find<Node> ("/synthetic", "p3"));
ccnxHelper.InstallRouteTo (Names::Find<Node> ("/synthetic", "p4"));
+ Simulator::Schedule (Seconds (10.0), PrintTime);
+
Simulator::Stop (finishTime);
NS_LOG_INFO ("Run Simulation.");
diff --git a/examples/synthetic-topology.txt b/examples/synthetic-topology.txt
index 0d175b0..240ef1e 100644
--- a/examples/synthetic-topology.txt
+++ b/examples/synthetic-topology.txt
@@ -21,7 +21,7 @@
n1 n2 1Mbps 1176 1ms 20
n1 n12 1Mbps 587 1ms 20
n12 n2 1Mbps 846 1ms 20
-n2 p1 10Mbps 260 50ms 200
+n2 p1 10Mbps 260 1ms 200
n2 p2 10Mbps 700 1ms 200
n2 p3 10Mbps 1 1ms 200
c4 n1 10Mbps 1 1ms 200