The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::EPP::Frame::Command - an instance of Net::EPP::Frame for client commands

DESCRIPTION

This module is a base class for the Net::EPP::Frame::* subclasses, you should never need to access it directly.

OBJECT HIERARCHY

    L<XML::LibXML::Node>
    +----L<XML::LibXML::Document>
        +----L<Net::EPP::Frame>
            +----L<Net::EPP::Frame::Command>

METHODS

        my $object = $frame->addObject(@spec);

This method creates and returns a new element corresponding to the data in @spec, and appends it to the "command" element (as returned by the getCommandType() method below).

The Net::EPP::Frame::ObjectSpec module can be used to quickly retrieve EPP object specifications.

        my $type = $frame->getCommandType;

This method returns a scalar containing the command type (eg 'create').

        my $type = $frame->getCommandNode;

This method returns the XML::LibXML::Element object corresponding to the command in question, eg the <create> element (for a Net::EPP::Frame::Command::Create object). It is within this element that EPP objects are placed.

        my $node = $frame->command;

This method returns the XML::LibXML::Element object corresponding to the <command> element.

        my $node = $frame->clTRID;

This method returns the XML::LibXML::Element object corresponding to the <clTRID> element.

    my $extension = $frame->extension;

This method returns the XML::LibXML::Element object corresponding to the <extension> element. If one does not exist, it will be created and inserted at the correct position.

    my $element = $frame->createExtensionElementFor($xmlns);

This methods creates a new element in the <extension> element for the EPP extension specified by $xmlns which can be obtained from Net::EPP::Frame::ObjectSpec. The element's tag name will correspond to the command name (create, update etc).

    Example usage:

    my $frame = Net::EPP::Frame::Command::Info::Domain->new;

    my $element = $frame->createExtensionElementFor(
        Net::EPP::Frame::ObjectSpec->xmlns('foobar')
    );

    // prints <info xmlns="namespace:for:foobar"/>
    print $element->toString();