public:
ResourceInitException(
bool missingUri,
+ bool invalidUri,
bool missingType,
bool missingInterface,
bool missingClientWrapper,
bool invalidPort,
- bool invalidIp)
- : m_whatMessage(),
- m_missingUri(missingUri),
+ bool invalidIp,
+ bool invalidHost)
+ : m_missingUri(missingUri),
+ m_invalidUri(invalidUri),
m_missingType(missingType),
m_missingInterface(missingInterface),
m_missingClientWrapper(missingClientWrapper),
m_invalidPort(invalidPort),
- m_invalidIp(invalidIp)
+ m_invalidIp(invalidIp),
+ m_invalidHost(invalidHost)
{
- if(isUriMissing())
- {
- m_whatMessage += OC::InitException::MISSING_URI;
- }
-
- if(isTypeMissing())
- {
- m_whatMessage += OC::InitException::MISSING_TYPE;
- }
-
- if(isInterfaceMissing())
- {
- m_whatMessage += OC::InitException::MISSING_INTERFACE;
- }
-
- if(isClientWrapperMissing())
- {
- m_whatMessage += OC::InitException::MISSING_CLIENT_WRAPPER;
- }
-
- if(isInvalidPort())
- {
- m_whatMessage += OC::InitException::INVALID_PORT;
- }
-
- if(isInvalidIp())
- {
- m_whatMessage += OC::InitException::INVALID_IP;
- }
}
- virtual ~ResourceInitException() throw() {}
-
bool isInvalidPort() const
{
return m_invalidPort;
return m_invalidIp;
}
+ bool isInvalidHost() const
+ {
+ return m_invalidHost;
+ }
+
bool isClientWrapperMissing() const
{
return m_missingClientWrapper;
return m_missingUri;
}
+ bool isInvalidUri() const
+ {
+ return m_invalidUri;
+ }
+
bool isTypeMissing() const
{
return m_missingType;
virtual const char* what() const BOOST_NOEXCEPT
{
- return m_whatMessage.c_str();
+ std::string ret;
+
+ if(isUriMissing())
+ {
+ ret += OC::InitException::MISSING_URI;
+ }
+ else if(isInvalidUri())
+ {
+ ret += OC::InitException::INVALID_URI;
+ }
+
+ if(isTypeMissing())
+ {
+ ret += OC::InitException::MISSING_TYPE;
+ }
+
+ if(isInterfaceMissing())
+ {
+ ret += OC::InitException::MISSING_INTERFACE;
+ }
+
+ if(isClientWrapperMissing())
+ {
+ ret += OC::InitException::MISSING_CLIENT_WRAPPER;
+ }
+
+ if(isInvalidPort())
+ {
+ ret += OC::InitException::INVALID_PORT;
+ }
+
+ if(isInvalidIp())
+ {
+ ret += OC::InitException::INVALID_IP;
+ }
+
+ if(isInvalidHost())
+ {
+ ret += OC::InitException::INVALID_HOST;
+ }
+
+ return ret.c_str();
}
private:
- std::string m_whatMessage;
+
bool m_missingUri;
+ bool m_invalidUri;
bool m_missingType;
bool m_missingInterface;
bool m_missingClientWrapper;
bool m_invalidPort;
bool m_invalidIp;
+ bool m_invalidHost;
};
}