Adding Project Files
diff --git a/ndn-traffic-server.cpp b/ndn-traffic-server.cpp
new file mode 100644
index 0000000..fbc92ce
--- /dev/null
+++ b/ndn-traffic-server.cpp
@@ -0,0 +1,112 @@
+/**
+ *
+ * Copyright (C) 2013 University of Arizona.
+ * @author: Jerald Paul Abraham <jeraldabraham@email.arizona.edu>
+ *
+ */
+
+#include <ndn-cpp-dev/security/key-chain.hpp>
+
+using namespace ndn;
+
+class NdnTrafficServer
+{
+public:
+
+ NdnTrafficServer( char* programName )
+ {
+ programName_ = programName;
+ contentDelayTime_ = getDefaultContentDelayTime();
+ prefix_ = "";
+ configurationFile_ = "";
+ }
+
+ NdnTrafficServer()
+ : keyChain_()
+ {
+ }
+
+ void
+ usage()
+ {
+ std::cout << "\nUsage: " << programName_ << " Printing Usage"
+ "\n\n";
+ exit(1);
+ }
+
+ int
+ getDefaultContentDelayTime()
+ {
+ return 0;
+ }
+
+ bool
+ isPrefixSet()
+ {
+ if (prefix_.length() > 0)
+ return true;
+ else
+ return false;
+ }
+
+ void
+ setContentDelayTime( int contentDelayTime )
+ {
+ if (contentDelayTime < 0)
+ usage();
+ contentDelayTime_ = contentDelayTime;
+ }
+
+ void
+ setPrefix( char* prefix )
+ {
+ prefix_ = prefix;
+ }
+
+ void
+ setConfigurationFile( char* configurationFile )
+ {
+ configurationFile_ = configurationFile;
+ }
+
+private:
+
+ KeyChain keyChain_;
+ std::string programName_;
+ int contentDelayTime_;
+ std::string prefix_;
+ std::string configurationFile_;
+
+};
+
+int main( int argc, char* argv[] )
+{
+ int option;
+ NdnTrafficServer ndnTrafficServer (argv[0]);
+ while ((option = getopt(argc, argv, "hd:p:")) != -1) {
+ switch (option) {
+ case 'h' :
+ ndnTrafficServer.usage();
+ break;
+ case 'd' :
+ ndnTrafficServer.setContentDelayTime(atoi(optarg));
+ break;
+ case 'p' :
+ ndnTrafficServer.setPrefix(optarg);
+ break;
+ default :
+ ndnTrafficServer.usage();
+ break;
+ }
+ }
+
+ argc -= optind;
+ argv += optind;
+
+ if (argv[0] == NULL && !ndnTrafficServer.isPrefixSet() )
+ ndnTrafficServer.usage();
+
+ ndnTrafficServer.setConfigurationFile(argv[0]);
+
+ return 0;
+}