# Net::Jabber::Dialback::Result - phpMan

## NAME
    [Net::Jabber::Dialback::Result] - Jabber Dialback Result Module

## SYNOPSIS
      [Net::Jabber::Dialback::Result] is a companion to the [Net::Jabber::Dialback]
      module.  It provides the user a simple interface to set and retrieve all
      parts of a Jabber Dialback Result.

## DESCRIPTION
      To initialize the Result with a Jabber <db:*/> you must pass it
      the [XML::Stream] hash.  For example:

        my $dialback = new [Net::Jabber::Dialback::Result](%hash);

      There has been a change from the old way of handling the callbacks.
      You no longer have to do the above yourself, a [NJ::Dialback::Result]
      object is passed to the callback function for the message.  Also,
      the first argument to the callback functions is the session ID from
      [XML::Streams].  There are some cases where you might want this
      information, like if you created a Client that connects to two servers
      at once, or for writing a mini server.

        use [Net::Jabber] qw(Server);

        sub dialbackResult {
          my ($sid,$Result) = @_;
          .
          .
          .
        }

      You now have access to all of the retrieval functions available.

      To create a new dialback to send to the server:

        use [Net::Jabber] qw(Server);

        $Result = new [Net::Jabber::Dialback::Result]();

      Now you can call the creation functions below to populate the tag before
      sending it.

      For more information about the array format being passed to the CallBack
      please read the [Net::Jabber::Client] documentation.

  Retrieval functions
        $to         = $Result->GetTo();
        $from       = $Result->GetFrom();
        $type       = $Result->GetType();

        $data       = $Result->GetData();

        $str        = $Result->GetXML();
        @dialback   = $Result->GetTree();

  Creation functions
        $Result->SetResult(from=>"jabber.org",
                           to=>"jabber.com",
                           data=>key);
        $Result->SetTo("jabber.org");
        $Result->SetFrom("jabber.com");
        $Result->SetType("valid");
        $Result->SetData(key);

  Test functions
        $test = $Result->DefinedTo();
        $test = $Result->DefinedFrom();
        $test = $Result->DefinedType();

## METHODS
  Retrieval functions
      GetTo() -  returns a string with server that the <db:result/> is being
                 sent to.

      GetFrom() -  returns a string with server that the <db:result/> is being
                   sent from.

      GetType() - returns a string with the type <db:result/> this is.

      GetData() - returns a string with the cdata of the <db:result/>.

      GetXML() - returns the XML string that represents the <db:result/>.
                 This is used by the Send() function in Server.pm to send
                 this object as a Jabber Dialback Result.

      GetTree() - returns an array that contains the <db:result/> tag
                  in [XML::Parser::Tree] format.

  Creation functions
      SetResult(to=>string,   - set multiple fields in the <db:result/>
                from=>string,   at one time.  This is a cumulative
                type=>string,   and over writing action.  If you set
                data=>string)   the "from" attribute twice, the second
                                setting is what is used.  If you set
                                the type, and then set the data
                                then both will be in the <db:result/>
                                tag.  For valid settings read the
                                specific Set functions below.

      SetTo(string) - sets the to attribute.

      SetFrom(string) - sets the from attribute.

      SetType(string) - sets the type attribute.  Valid settings are:

                        valid
                        invalid

      SetData(string) - sets the cdata of the <db:result/>.

  Test functions
      DefinedTo() - returns 1 if the to attribute is defined in the
                    <db:result/>, 0 otherwise.

      DefinedFrom() - returns 1 if the from attribute is defined in the
                      <db:result/>, 0 otherwise.

      DefinedType() - returns 1 if the type attribute is defined in the
                      <db:result/>, 0 otherwise.

## AUTHOR
    By Ryan Eatmon in May of 2001 for <http://jabber.org>..

## COPYRIGHT
    This module is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

