45 lines
1.3 KiB
C++
45 lines
1.3 KiB
C++
|
#ifndef SECDNSDOMAININFORESPONSEEXTENSION_HPP_
|
||
|
#define SECDNSDOMAININFORESPONSEEXTENSION_HPP_
|
||
|
|
||
|
#include "se/ResponseExtension.hpp"
|
||
|
#include "SecDNSDSOrKeyType.hpp"
|
||
|
|
||
|
/**
|
||
|
* This class models the <infData> elements as defined in the
|
||
|
* AusRegistry secDNS-1.1 EPP command extension.
|
||
|
*/
|
||
|
|
||
|
class DomainSecDNSInfoResponseExtension : public ResponseExtension
|
||
|
{
|
||
|
public:
|
||
|
DomainSecDNSInfoResponseExtension() :
|
||
|
initialised(false),
|
||
|
infData(NULL)
|
||
|
{}
|
||
|
virtual void fromXML(XMLDocument *xmlDoc);
|
||
|
virtual bool isInitialised() const;
|
||
|
SecDNSDSOrKeyType* getInfData() const;
|
||
|
private:
|
||
|
int getResponseDSData(const XMLDocument* xmlDoc);
|
||
|
int getResponseKeyData(const XMLDocument* xmlDoc);
|
||
|
|
||
|
std::auto_ptr<SecDNSDSData> getDSData(const XMLDocument* xmlDoc, const std::string& dsDataXPath);
|
||
|
std::auto_ptr<SecDNSKeyData> getKeyData(const XMLDocument* xmlDoc, const std::string& keyDataXPath);
|
||
|
int getInt(const std::string& value);
|
||
|
|
||
|
bool initialised;
|
||
|
std::auto_ptr<SecDNSDSOrKeyType> infData;
|
||
|
|
||
|
static const std::string DS_DATA_LIST_EXPR();
|
||
|
static const std::string KEY_DATA_LIST_EXPR();
|
||
|
static const std::string MAXSIGLIFE_EXPR();
|
||
|
|
||
|
};
|
||
|
|
||
|
inline bool DomainSecDNSInfoResponseExtension::isInitialised() const
|
||
|
{
|
||
|
return initialised;
|
||
|
}
|
||
|
|
||
|
#endif /* SECDNSDOMAININFORESPONSEEXTENSION_HPP_ */
|