reverse the "single pattern" in ccnx wrapper
disable ccn reconnect before the openssl bug get's fixed in ccnx code
it's parc's problem to fix the openssl bug
diff --git a/ccnx/sync-app-socket.cc b/ccnx/sync-app-socket.cc
index 22d51b9..3bc6954 100644
--- a/ccnx/sync-app-socket.cc
+++ b/ccnx/sync-app-socket.cc
@@ -29,7 +29,7 @@
{
SyncAppSocket::SyncAppSocket (const string &syncPrefix, NewDataCallback dataCallback, RemoveCallback rmCallback )
- : m_ccnxHandle (CcnxWrapper::Create ())
+ : m_ccnxHandle (new CcnxWrapper())
, m_newDataCallback(dataCallback)
, m_syncLogic (syncPrefix,
bind(&SyncAppSocket::passCallback, this, _1),
@@ -39,14 +39,13 @@
SyncAppSocket::~SyncAppSocket()
{
- CcnxWrapper::Destroy ();
}
std::string
SyncAppSocket::GetLocalPrefix()
{
// this handle is supposed to be short lived
- CcnxWrapperPtr handle = CcnxWrapper::Create();
+ CcnxWrapperPtr handle( new CcnxWrapper());
return handle->getLocalPrefix();
}
diff --git a/ccnx/sync-ccnx-wrapper.cc b/ccnx/sync-ccnx-wrapper.cc
index df1cbab..b742548 100644
--- a/ccnx/sync-ccnx-wrapper.cc
+++ b/ccnx/sync-ccnx-wrapper.cc
@@ -45,8 +45,6 @@
namespace Sync {
-boost::shared_ptr<CcnxWrapper> CcnxWrapper::s_wrapper;
-
#ifdef _DEBUG_WRAPPER_
CcnxWrapper::CcnxWrapper(char c)
#else
@@ -200,6 +198,9 @@
}
catch (CcnxOperationException &e)
{
+ // do not try reconnect for now
+ throw e;
+ /*
m_connected = false;
// probably ccnd has been stopped
// try reconnect with sleep
@@ -226,6 +227,7 @@
}
}
}
+ */
}
catch (const std::exception &exc)
{
diff --git a/include/sync-ccnx-wrapper.h b/include/sync-ccnx-wrapper.h
index 843ab54..6ffba7b 100644
--- a/include/sync-ccnx-wrapper.h
+++ b/include/sync-ccnx-wrapper.h
@@ -59,33 +59,8 @@
typedef boost::function<void (std::string, const char *buf, size_t len)> RawDataCallback;
typedef boost::function<void (std::string)> InterestCallback;
-private:
- static boost::shared_ptr<CcnxWrapper> s_wrapper;
-
public:
- static
- boost::shared_ptr<CcnxWrapper>
- Create ()
- {
- if (s_wrapper.get () == 0)
- s_wrapper = boost::shared_ptr<CcnxWrapper> (new CcnxWrapper ());
-
- return s_wrapper;
- }
- static
- void
- Destroy ()
- {
- s_wrapper.reset ();
- }
-
-private:
- /**
- * @brief initialize the wrapper; a lot of things needs to be done. 1) init
- * keystore 2) init keylocator 3) start a thread to hold a loop of ccn_run
- *
- */
#ifdef _DEBUG_WRAPPER_
CcnxWrapper(char c='.');
char m_c;
@@ -93,7 +68,6 @@
CcnxWrapper();
#endif
-public:
~CcnxWrapper();
/**
diff --git a/model/sync-logic.cc b/model/sync-logic.cc
index f298768..acb4d90 100644
--- a/model/sync-logic.cc
+++ b/model/sync-logic.cc
@@ -66,7 +66,7 @@
, m_onUpdate (onUpdate)
, m_perBranch (false)
, m_onRemove (onRemove)
- , m_ccnxHandle(CcnxWrapper::Create ())
+ , m_ccnxHandle(new CcnxWrapper ())
, m_recoveryRetransmissionInterval (m_defaultRecoveryRetransmitInterval)
#ifndef NS3_MODULE
, m_randomGenerator (static_cast<unsigned int> (std::time (0)))
@@ -96,7 +96,7 @@
, m_syncPrefix (syncPrefix)
, m_onUpdateBranch (onUpdateBranch)
, m_perBranch(true)
- , m_ccnxHandle(CcnxWrapper::Create ())
+ , m_ccnxHandle(new CcnxWrapper())
, m_recoveryRetransmissionInterval (m_defaultRecoveryRetransmitInterval)
#ifndef NS3_MODULE
, m_randomGenerator (static_cast<unsigned int> (std::time (0)))
@@ -122,10 +122,6 @@
SyncLogic::~SyncLogic ()
{
m_ccnxHandle->clearInterestFilter (m_syncPrefix);
- m_ccnxHandle.reset ();
- // m_scheduler.cancel (REEXPRESSING_INTEREST);
- // m_scheduler.cancel (DELAYED_INTEREST_PROCESSING);
- // sleep (m_syncInterestReexpress+1);
}
#ifdef NS3_MODULE