face: Implementing new "isOnDemand" flag

This flags replaces isPermanent flag in datagram faces, but with the
reversed logic (isPermanent = !isOnDemand)

Change-Id: I37ba604e5f105ca95a79a08b8cfc3d640df8b412
Refs: #1376
diff --git a/daemon/face/stream-face.hpp b/daemon/face/stream-face.hpp
index a623665..f6c008a 100644
--- a/daemon/face/stream-face.hpp
+++ b/daemon/face/stream-face.hpp
@@ -26,7 +26,8 @@
    */
   explicit
   StreamFace(const FaceUri& uri,
-             const shared_ptr<typename protocol::socket>& socket);
+             const shared_ptr<typename protocol::socket>& socket,
+             bool isOnDemand);
 
   virtual
   ~StreamFace();
@@ -99,11 +100,13 @@
 template<class T, class FaceBase>
 inline
 StreamFace<T, FaceBase>::StreamFace(const FaceUri& uri,
-                                    const shared_ptr<typename StreamFace::protocol::socket>& socket)
+                                    const shared_ptr<typename StreamFace::protocol::socket>& socket,
+                                    bool isOnDemand)
   : FaceBase(uri)
   , m_socket(socket)
   , m_inputBufferSize(0)
 {
+  FaceBase::setOnDemand(isOnDemand);
   StreamFaceValidator<T, FaceBase>::validateSocket(*socket);
   m_socket->async_receive(boost::asio::buffer(m_inputBuffer, MAX_NDN_PACKET_SIZE), 0,
                           bind(&StreamFace<T, FaceBase>::handleReceive, this, _1, _2));