BIND 10 #2957: DHCP-DDNS: Develop the DHCP DDNS configuration manager class

BIND 10 Development do-not-reply at isc.org
Tue Jun 18 20:33:02 UTC 2013


#2957: DHCP-DDNS: Develop the DHCP DDNS configuration manager class
-------------------------------------+-------------------------------------
            Reporter:  stephen       |                        Owner:  tmark
                Type:  enhancement   |                       Status:
            Priority:  medium        |  accepted
           Component:  dhcp          |                    Milestone:
            Keywords:                |  Sprint-DHCP-20130620
           Sensitive:  0             |                   Resolution:
         Sub-Project:  DHCP          |                 CVSS Scoring:
Estimated Difficulty:  0             |              Defect Severity:  N/A
         Total Hours:  0             |  Feature Depending on Ticket:
                                     |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------

Comment (by tmark):

 The initial implementation of the D2CfgMgr is complete.  This was done as
 two part commit, the
 first commit (dac0b87d5b0466e3aaf0f49ec7b2362606c03415) created the base
 classes to provide BIND10 compatible configuration management to the DCTL
 infrastructure. The new base classes added are:

 !DCfgMgrBase -  which provides the basic structure to parse a
 configuration, provided access services to it for the rest of an
 application.

 !DCfgContextBase  - acts as a storage container for application specific
 context (i.e. configuration data).

 DCfgMgrBase is designed to offload all of the work required to parse a
 configuration. DProcess now passes inbound configuration updates through
 to its configuration manager instance.  The
 configuration manager uses its context instance to store the parsed
 configuration.

 Skeletal derivations for D2: D2CfgMgr and D2CfgContext were added.  These
 new classes are shown in the following diagram:

 [[Image(overal_plus_cfg_classes.svg)]]

 The second commit (be6122f520871344324be1ceb9f118195d508bba) defined the
 DHCP-DDNS configuration specification, implemented the classes to embody
 it and parse it, and integrated this work into D2.   The new classes added
 to embody the configuration are:

 !DdnsDomainListMgr - manages a list of domains and provides domain
 matching services

 !DdnsDomain - represents a domain and the servers that support it.

 !DnsServerInfo - represents an actual DNS server and the information
 necessary to communicate with it.

 These classes are shown in the following diagram:

 [[Image(d2_config_classes.svg)]]

 The new parser classes mimic this basic structure and are listed below:

 !DdnsDomainListMgrParser parses a managed domain list entry. It handles
 any scalars which belong to the manager as well as creating and invoking a
 !DdnsDomainListParser to parse its list of domain entries.

 !DdnsDomainLiatParser creates and invokes !DdnsDomainListParser for each
 domain entry in its list.

 !DdnsDomainParser handles the scalars which belong to the domain as well
 as
 creating and invoking a !DnsSeverInfoListParser to parse its list of
 server
 entries.

 !DnsServerInfoListParser creates and invokes a !DnsServerInfoParser for
 each server entry in its list.

 !DdnsServerInfoParser handles the scalars which belong to the server.


 These classes are shown in the following diagram:

 [[Image(d2_parsers.svg)]]

-- 
Ticket URL: <http://bind10.isc.org/ticket/2957#comment:4>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list