NAME
Lim::Plugin::DNS::Server - Server class for DNS Manager Lim plugin
VERSION
See Lim::Plugin::DNS for version.
SYNOPSIS
use Lim::Plugin::DNS;
# Create a Server object
$server = Lim::Plugin::DNS->Server;
CONFIGURATION
TODO
INTERNAL METHODS
These are only internal methods and should not be used externally.
- $server->_ScanZoneFile
 - 
Scan for zone files based on configuration and returns a hash reference.
$hash_ref->{<software>}->{<full path file name>} = { name => <full path file name>, software => <the software related to the zone file>, short => <file name>, write => <true if writable>, read => <true if readable> }; - $server->_ParseZoneFile($file, $option, $rr)
 - 
Parse a zone file and returns the content into
$optionand/or$rr.$optionand$rrcan be a hash or array reference.# $option as an array reference $option = [ { name => <option name>, value => <option value> }, ... ]; # $option as a hash reference $option->{<option name>} = <option value>; # $rr as an array reference $rr = [ { name => <rr name>, ttl => <rr ttl>, class => <rr class>, type => <rr type>, rdata => <rr rdata> }, ... ]; # $rr as a hash reference $rr->{<rr name>} = [ { ttl => <rr ttl>, class => <rr class>, type => <rr type>, rdata => <rr rdata> }, ... ]; - $server->_ParseZoneContent($content, $option, $rr)
 - 
Parse a zone content from a string and returns the content into
$optionand/or$rr.$optionand$rrcan be a hash or array reference.# $option as an array reference $option = [ { name => <option name>, value => <option value> }, ... ]; # $option as a hash reference $option->{<option name>} = <option value>; # $rr as an array reference $rr = [ { name => <rr name>, ttl => <rr ttl>, class => <rr class>, type => <rr type>, rdata => <rr rdata> }, ... ]; # $rr as a hash reference $rr->{<rr name>} = [ { ttl => <rr ttl>, class => <rr class>, type => <rr type>, rdata => <rr rdata> }, ... ]; - $server->_WriteZoneFile($file, $rr, $option)
 - 
Write the content of
$rrand$optionout to a zone file. A temporary file is used and then renamed to the specified$fileonce the writing is complete.The
$rrand$optionneeds to be in the format specified by _ParseZoneFile and _ParseZoneContent. 
METHODS
These methods are called from the Lim framework and should not be used else where.
Please see Lim::Plugin::DNS for full documentation of calls.
- $server->ReadZones(...)
 - 
Get a list of all zones that can be managed by the plugin.
 - $server->CreateZone(...)
 - 
Create a new zone file.
 - $server->ReadZone(...)
 - 
Returns a zone file as a content or split into option and rr.
 - $server->UpdateZone(...)
 - 
Update a zone file, this overwrites all zone data.
 - $server->DeleteZone(...)
 - 
Delete a zone file.
 - $server->CreateZoneOption(...)
 - 
Create a new zone option.
 - $server->ReadZoneOption(...)
 - 
Return zone options specified or all zone options for a zone file.
 - $server->UpdateZoneOption(...)
 - 
Update a zone option, this does not overwrite other zone options.
 - $server->DeleteZoneOption(...)
 - 
Delete a zone options.
 - $server->CreateZoneRr(...)
 - 
Create a new zone resource record.
 - $server->ReadZoneRr(...)
 - 
Return zone resource records specified or all zone resource records for a zone file.
 - $server->UpdateZoneRr(...)
 - 
Update a zone resource record, this does not remove other zone resource records.
 - $server->DeleteZoneRr(...)
 - 
Delete a zone resource records.
 
AUTHOR
Jerry Lundström, <lundstrom.jerry at gmail.com>
BUGS
Please report any bugs or feature requests to https://github.com/jelu/lim-plugin-dns/issues.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Lim::Plugin::DNS
You can also look for information at:
Lim issue tracker (report bugs here)
ACKNOWLEDGEMENTS
LICENSE AND COPYRIGHT
Copyright 2012-2013 Jerry Lundström.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.