1 2 #include "XmlRpcSource.h" 3 #include "XmlRpcSocket.h" 4 #include "XmlRpcUtil.h" 5 6 namespace XmlRpc { 7 8 XmlRpcSource(int fd,bool deleteOnClose)9 XmlRpcSource::XmlRpcSource(int fd /*= -1*/, bool deleteOnClose /*= false*/) 10 : _fd(fd), _deleteOnClose(deleteOnClose), _keepOpen(false) 11 { 12 } 13 ~XmlRpcSource()14 XmlRpcSource::~XmlRpcSource() 15 { 16 } 17 18 19 void close()20 XmlRpcSource::close() 21 { 22 if (_fd != -1) { 23 XmlRpcUtil::log(2,"XmlRpcSource::close: closing socket %d.", _fd); 24 XmlRpcSocket::close(_fd); 25 XmlRpcUtil::log(2,"XmlRpcSource::close: done closing socket %d.", _fd); 26 _fd = -1; 27 } 28 if (_deleteOnClose) { 29 XmlRpcUtil::log(2,"XmlRpcSource::close: deleting this"); 30 _deleteOnClose = false; 31 delete this; 32 } 33 } 34 35 } // namespace XmlRpc 36