DomainPlug-insDocumentation
Public Member Functions | Protected Attributes
DTPlugin< T > Class Template Reference

DTPlugin defines all methods to implement a Domain Plug-in. More...

#include <DomainPluginClass.h>

Public Member Functions

 DTPlugin ()
virtual void init (Int rID, Int cID, T *self)
Str getLog ()
virtual const
DTOutCheckAvailability 
checkAvailability (const DTInCheckAvailability &input)
 Check domain availability for registration.
virtual const DTOutCheckTransfer checkTransfer (const DTInCheckTransfer &input)
 Check domain availability for transfer.
virtual const DTOutRegisterDomain registerDomain (const DTInRegisterDomain &input)
 Register domain.
virtual const DTOutTransferDomain transferDomain (const DTInTransferDomain &input)
 Transfer domain.
virtual const DTOutRenewDomain renewDomain (const DTInRenewDomain &input)
 Renew domain.
virtual const DTOutTerminateDomain terminateDomain (const DTInTerminateDomain &input)
 Terminate domain (cancel at Registrar side).
virtual const DTOutGetDomainStatus getDomainStatus (const DTInGetDomainStatus &input)
 Check status of domain operation request.
virtual const DTOutRegisterContacts registerContacts (const DTInRegisterContacts &input)
 Register Domain Contacts.
virtual const
DTOutGetContactsStatus 
getContactsStatus (const DTInGetContactsStatus &input)
 Check status of Domain Contacts registration request.
virtual const
DTOutRegisterNameServers 
registerNameServers (const DTInRegisterNameServers &input)
 Register Name Servers on Registrar side.
virtual const
DTOutGetNameServersStatus 
getNameServersStatus (const DTInGetNameServersStatus &)
 Check status of name server registration request.
virtual const DTOutGetDomainDetails getDomainDetails (const DTInGetDomainDetails &input)
 Get Domain Details from Registrar.
virtual const
DTOutUpdateDomainNameServers 
updateDomainNameServers (const DTInUpdateDomainNameServers &input)
 Update Name Servers for existing Domain.
virtual const
DTOutUpdateDomainContacts 
updateDomainContacts (const DTInUpdateDomainContacts &input)
 Update Contacts for existing Domain.
virtual const
DTOutGetDomainNameServersStatus 
getDomainNameServersStatus (const DTInGetDomainNameServersStatus &input)
 Check status of update name servers request.
virtual const
DTOutGetDomainContactsStatus 
getDomainContactsStatus (const DTInGetDomainContactsStatus &input)
 Check status of update contacts request.
virtual const DTOutValidateExtData validateExtData (const DTInValidateExtData &input)
 Get additional parameters that may be necessary for domain Registration, Transfer or Renew.
virtual const DTOutSetLock setLock (const DTInSetLock &input)
 Set Domain Lock.
virtual const DTOutSetWhoisPrivacy setWhoisPrivacy (const DTInSetWhoisPrivacy &input)
 Set Whois Privacy.
virtual const DTOutCallback processCallback (const DTInCallback &input)
 Process incoming mail.
virtual const
DTOutGetDomainNameServers 
getDomainNameServers (const DTInGetDomainNameServers &input)
 Get name servers, registered in olugin.
const DTRegisteredDomainInfo getRegisteredDomainInfo (const Str domainName) const
virtual ~DTPlugin ()

Protected Attributes

StrStream Logger
Int registrarID
Int collectorID
T * ths

Detailed Description

template<class T>
class DTPlugin< T >

DTPlugin defines all methods to implement a Domain Plug-in.


Constructor & Destructor Documentation

template<class T >
DTPlugin< T >::DTPlugin ( ) [inline]
template<class T >
virtual DTPlugin< T >::~DTPlugin ( ) [inline, virtual]

Member Function Documentation

template<class T >
virtual const DTOutGetDomainContactsStatus DTPlugin< T >::getDomainContactsStatus ( const DTInGetDomainContactsStatus input) [inline, virtual]

Check status of update contacts request.

Parameters:
inputdomain name and all domain extension + Contacts that was send.
Returns:
contacts update operation status and extension data
template<class T >
virtual const DTOutGetDomainDetails DTPlugin< T >::getDomainDetails ( const DTInGetDomainDetails input) [inline, virtual]

Get Domain Details from Registrar.

Called to get e.g. current expiration date

After registration in case registerDomain did not returns expDate
After transferDomain in case expDate was not returned,
before Renew in sync operation and
after renew in case checkRenew was not returned exp date

Parameters:
inputis domain with extension data
Returns:
expiration date and registration date
template<class T >
virtual const DTOutGetDomainNameServers DTPlugin< T >::getDomainNameServers ( const DTInGetDomainNameServers input) [inline, virtual]

Get name servers, registered in olugin.

Called if KEEPEXISTING is true in case plug-in is unable to get current nameservers, empty list MUST be returned, exception will be treated as failure.

Parameters:
inputis domain name
Returns:
list of name servers
template<class T >
virtual const DTOutGetDomainNameServersStatus DTPlugin< T >::getDomainNameServersStatus ( const DTInGetDomainNameServersStatus input) [inline, virtual]

Check status of update name servers request.

Parameters:
inputdomain name and all domain extension + Name Servers that was send.
Returns:
nameservers update operation status and extension data
template<class T >
Str DTPlugin< T >::getLog ( ) [inline]
template<class T >
const DTRegisteredDomainInfo DTPlugin< T >::getRegisteredDomainInfo ( const Str  domainName) const [inline]

Get information about domain registered in PBA This method should be called with caution only if you can't live w/o it It may throw exception in case domain is not registered

Parameters:
inputis a domain name
Returns:
Object which contains all domain info
template<class T >
virtual void DTPlugin< T >::init ( Int  rID,
Int  cID,
T *  self 
) [inline, virtual]
template<class T >
virtual const DTOutCallback DTPlugin< T >::processCallback ( const DTInCallback input) [inline, virtual]

Process incoming mail.

Called automatically on incoming mail event

Parameters:
inputis raw data of incoming mail (use class MailMessage to parse it).
Returns:
list of processed domains with operation types and their status
See also:
MailMessage::MailMessage(Str)
template<class T >
virtual const DTOutSetLock DTPlugin< T >::setLock ( const DTInSetLock input) [inline, virtual]

Set Domain Lock.

Required for operation Reg Lock

Parameters:
inputis domain and value of reg lock (on/off)
Returns:
domain lock operation status and extension data
template<class T >
virtual const DTOutSetWhoisPrivacy DTPlugin< T >::setWhoisPrivacy ( const DTInSetWhoisPrivacy input) [inline, virtual]

Set Whois Privacy.

Whois privacy set and unset

Parameters:
inputis domain and value of whois privacy (on/off)
Returns:
whois privacy operation status and extension data
template<class T >
virtual const DTOutUpdateDomainContacts DTPlugin< T >::updateDomainContacts ( const DTInUpdateDomainContacts input) [inline, virtual]

Update Contacts for existing Domain.

Parameters:
inputis contacts and domain.
Returns:
contacts update operation status and extension data
template<class T >
virtual const DTOutUpdateDomainNameServers DTPlugin< T >::updateDomainNameServers ( const DTInUpdateDomainNameServers input) [inline, virtual]

Update Name Servers for existing Domain.

Parameters:
inputis name servers and domain.
Returns:
nameservers update operation status and extension data
template<class T >
virtual const DTOutValidateExtData DTPlugin< T >::validateExtData ( const DTInValidateExtData input) [inline, virtual]

Get additional parameters that may be necessary for domain Registration, Transfer or Renew.

They will be shown to customer to fill it while placing an order. Require only if you need to ask customers about additional parameters for domain.

Parameters:
inputis extension data and operation type
Returns:
all necessary parameters for operation depending on TLD and registrar

Field Documentation

template<class T >
Int DTPlugin< T >::collectorID [protected]
template<class T >
StrStream DTPlugin< T >::Logger [protected]
template<class T >
Int DTPlugin< T >::registrarID [protected]
template<class T >
T* DTPlugin< T >::ths [protected]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines