Provided by: libnet-xmpp-perl_1.02-5_all bug

NAME

       Net::XMPP::JID - XMPP JID Module

SYNOPSIS

         Net::XMPP::JID is a companion to the Net::XMPP module.
         It provides the user a simple interface to set and retrieve all
         parts of a Jabber ID (userid on a server).

DESCRIPTION

         To initialize the JID you must pass it the string that represents the
         jid from the XML packet.  Inside the XMPP modules this is done
         automatically and the JID object is returned instead of a string.
         For example, in the callback function for the XMPP object foo:

           use Net::XMPP;

           sub foo {
             my $foo = new Net::XMPP::Foo(@_);
             my $from = $foo->GetFrom();
             my $JID = new Net::XMPP::JID($from);
             .
             .
             .
           }

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

         To create a new JID to send to the server:

           use Net::XMPP;

           $JID = new Net::XMPP::JID();

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

   Retrieval functions
           $userid   = $JID->GetUserID();
           $server   = $JID->GetServer();
           $resource = $JID->GetResource();

           $JID      = $JID->GetJID();
           $fullJID  = $JID->GetJID("full");
           $baseJID  = $JID->GetJID("base");

   Creation functions
           $JID->SetJID(userid=>"bob",
                        server=>"jabber.org",
                        resource=>"Work");

           $JID->SetJID('blue@moon.org/Home');

           $JID->SetUserID("foo");
           $JID->SetServer("bar.net");
           $JID->SetResource("Foo Bar");

METHODS

   Retrieval functions
         GetUserID() - returns a string with the userid of the JID.
                       If the string is an address (bob%jabber.org) then
                       the function will return it as an address
                       (bob@jabber.org).

         GetServer() - returns a string with the server of the JID.

         GetResource() - returns a string with the resource of the JID.

         GetJID()       - returns a string that represents the JID stored
         GetJID("full")   within.  If the "full" string is specified, then
         GetJID("base")   you get the full JID, including Resource, which
                          should be used to send to the server.  If the "base",
                          string is specified, then you will just get
                          user@server, or the base JID.

   Creation functions
         SetJID(userid=>string,   - set multiple fields in the jid at
                server=>string,     one time.  This is a cumulative
                resource=>string)   and over writing action.  If you set
         SetJID(string)             the "userid" attribute twice, the second
                                    setting is what is used.  If you set
                                    the server, and then set the resource
                                    then both will be in the jid.  If all
                                    you pass is a string, then that string
                                    is used as the JID.  For valid settings
                                    read the specific Set functions below.

         SetUserID(string) - sets the userid.  Must be a valid userid or the
                             server will complain if you try to use this JID
                             to talk to the server.  If the string is an
                             address then it will be converted to the %
                             form suitable for using as a User ID.

         SetServer(string) - sets the server.  Must be a valid host on the
                             network or the server will not be able to talk
                             to it.

         SetResource(string) - sets the resource of the userid to talk to.

AUTHOR

       Ryan Eatmon

COPYRIGHT

       This module is free software, you can redistribute it and/or modify it under the LGPL.