nidas
v1.2-1520
|
A provider of services to a DSM. More...
#include <DSMServer.h>
Public Member Functions | |
DSMServer () | |
virtual | ~DSMServer () |
const std::string & | getName () const |
void | setName (const std::string &val) |
const std::string & | getXMLConfigFileName () const |
void | setXMLConfigFileName (const std::string &val) |
void | addService (DSMService *service) |
const std::list< DSMService * > & | getServices () const |
void | setProject (Project *val) |
const Project * | getProject () const |
void | setSite (const Site *val) |
const Site * | getSite () const |
DSMServiceIterator | getDSMServiceIterator () const |
ProcessorIterator | getProcessorIterator () const |
SensorIterator | getSensorIterator () const |
SampleTagIterator | getSampleTagIterator () const |
void | addThread (nidas::util::Thread *thrd) |
void | scheduleServices (bool optionalProcessing) throw (nidas::util::Exception) |
void | interruptServices () throw () |
void | joinServices () throw () |
void | setStatusSocketAddr (const nidas::util::SocketAddress &val) |
const nidas::util::SocketAddress & | getStatusSocketAddr () const |
void | fromDOMElement (const xercesc::DOMElement *) throw (nidas::util::InvalidParameterException) |
Initialize myself from a xercesc::DOMElement. More... | |
virtual xercesc::DOMElement * | toDOMParent (xercesc::DOMElement *parent, bool complete) const throw (xercesc::DOMException) |
Create a DOMElement and append it to the parent. More... | |
virtual xercesc::DOMElement * | toDOMElement (xercesc::DOMElement *node, bool complete) const throw (xercesc::DOMException) |
Add my content into a DOMElement. More... | |
Static Public Member Functions | |
static const XMLCh * | getNamespaceURI () |
Private Member Functions | |
DSMServer (const DSMServer &) | |
Copy not supported. More... | |
DSMServer & | operator= (const DSMServer &) |
Assignment not supported. More... | |
Private Attributes | |
std::string | _name |
Name of this server. More... | |
Project * | _project |
const Site * | _site |
What Site to I serve? Can be NULL if this DSMServer is not for a specific Site, but serves the Project. More... | |
std::list< DSMService * > | _services |
The DSMServices that we've been configured to start. More... | |
std::string | _xmlFileName |
nidas::util::SocketAddress * | _statusSocketAddr |
A provider of services to a DSM.
DSMServer::DSMServer | ( | ) |
|
virtual |
References _services, _statusSocketAddr, and nidas::core::DSMService::getName().
|
private |
Copy not supported.
|
inline |
References _services.
void nidas::core::DSMServer::addThread | ( | nidas::util::Thread * | thrd | ) |
|
virtual |
Initialize myself from a xercesc::DOMElement.
Implements nidas::core::DOMable.
References nidas::core::DOMObjectFactory::createObject(), nidas::core::DSMService::fromDOMElement(), nidas::util::Inet4Address::getByName(), nidas::core::DSMService::getClassName(), nidas::core::XDOMAttr::getName(), nidas::core::XDOMElement::getNodeName(), NIDAS_MULTICAST_ADDR, port, nidas::core::DSMService::setDSMServer(), and nidas::util::Exception::what().
Referenced by nidas::core::Project::fromDOMElement(), and nidas::core::Site::fromDOMElement().
DSMServiceIterator DSMServer::getDSMServiceIterator | ( | ) | const |
|
inline |
|
inlinestaticinherited |
References nidas::core::DOMable::namespaceURI.
Referenced by nidas::dynld::UDPSampleOutput::getProjectDOM(), nidas::core::Dataset::toDOMElement(), nidas::core::ProjectConfig::toDOMElement(), nidas::core::Dataset::toDOMParent(), nidas::core::ProjectConfig::toDOMParent(), nidas::core::Datasets::toDOMParent(), nidas::core::ProjectConfigs::toDOMParent(), nidas::core::DSMConfig::toDOMParent(), nidas::core::Project::toDOMParent(), nidas::core::Site::toDOMParent(), nidas::core::SampleTag::toDOMParent(), nidas::core::ServerSocket::toDOMParent(), nidas::core::Variable::toDOMParent(), nidas::core::DSMSensor::toDOMParent(), nidas::core::Datasets::writeXML(), and nidas::core::ProjectConfigs::writeXML().
ProcessorIterator DSMServer::getProcessorIterator | ( | ) | const |
|
inline |
References _project.
Referenced by nidas::core::GetDsmList::execute(), nidas::core::GetAdsFileName::execute(), and nidas::core::DSMService::fromDOMElement().
SampleTagIterator DSMServer::getSampleTagIterator | ( | ) | const |
SensorIterator DSMServer::getSensorIterator | ( | ) | const |
|
inline |
References _services.
Referenced by nidas::core::DSMServiceIterator::hasNext(), and nidas::core::DSMServerStat::run().
|
inline |
References _site.
Referenced by getSensorIterator().
|
inline |
References _statusSocketAddr.
Referenced by nidas::core::DSMServerApp::run(), and nidas::core::DSMServerStat::run().
|
inline |
References _xmlFileName.
void DSMServer::interruptServices | ( | ) | ||
throw | ( | |||
) |
void DSMServer::joinServices | ( | ) | ||
throw | ( | |||
) |
References _services, nidas::core::DSMService::getName(), ILOG, and nidas::core::DSMService::join().
Referenced by nidas::core::DSMServerApp::run().
Assignment not supported.
void DSMServer::scheduleServices | ( | bool | optionalProcessing | ) | |
throw | ( | nidas::util::Exception | |||
) |
References nidas::core::DSMService::schedule().
Referenced by nidas::core::DSMServerApp::run().
|
inline |
References _name.
|
inline |
References _project.
Referenced by nidas::core::Project::fromDOMElement(), and nidas::core::Site::fromDOMElement().
|
inline |
References _site.
Referenced by nidas::core::Site::fromDOMElement().
|
inline |
References _statusSocketAddr, and nidas::util::SocketAddress::clone().
|
inline |
References _xmlFileName.
Referenced by nidas::core::DSMServerApp::run().
|
virtualinherited |
Add my content into a DOMElement.
Reimplemented in nidas::core::DSMSensor, nidas::core::Variable, nidas::core::ServerSocket, nidas::core::SampleTag, nidas::core::Site, nidas::core::Project, and nidas::core::DSMConfig.
Referenced by nidas::core::ServerSocket::toDOMParent().
|
virtualinherited |
Create a DOMElement and append it to the parent.
Reimplemented in nidas::core::DSMSensor, nidas::core::Variable, nidas::core::ServerSocket, nidas::core::SampleTag, nidas::core::Site, nidas::core::Project, and nidas::core::DSMConfig.
|
private |
|
private |
Referenced by getProject(), getSensorIterator(), and setProject().
|
private |
The DSMServices that we've been configured to start.
Referenced by addService(), getServices(), interruptServices(), joinServices(), and ~DSMServer().
|
private |
|
private |
Referenced by getStatusSocketAddr(), setStatusSocketAddr(), and ~DSMServer().
|
private |
Referenced by getXMLConfigFileName(), and setXMLConfigFileName().