src/main/java/org/jivesoftware/smack/sasl/SASLMechanism.java
public void authenticate(String username, String host, CallbackHandler cbh)
            throws IOException, XMPPException {
        String[] mechanisms = { getName() };
        Map<String, String> props = new HashMap<String, String>();
        sc = Sasl.createSaslClient(mechanisms, username, "xmpp", host, props,
                cbh);
        authenticate();
    }
public void authenticate(String username, String host, CallbackHandler cbh)
            throws IOException, XMPPException {
        String[] mechanisms = { getName() };
        Map<String, String> props = new HashMap<String, String>();
        sc = Sasl.createSaslClient(mechanisms, username, "xmpp", host, props,
                cbh);
        authenticate();
    }
public void authenticate ( String username , String host , CallbackHandler cbh ) throws IOException , XMPPException { String [ ] mechanisms = { getName ( ) } ; Map < String , String > props = new HashMap < String , String > ( ) ; sc = Sasl . createSaslClient ( mechanisms , username , "xmpp" , host , props , cbh ) ; authenticate ( ) ; }
Builds and sends the <tt>auth</tt> stanza to the server. The callback
handler will handle any additional information, such as the
authentication ID or realm, if it is needed.

@param username
the username of the user being authenticated.
@param host
the hostname where the user account resides.
@param cbh
the CallbackHandler to obtain user information.
@throws IOException
If a network error occures while authenticating.
@throws XMPPException
If a protocol error occurs or the user is not authenticated.
Builds and sends the <tt > auth< / tt > stanza to the server . The callback handler will handle any additional information such as the authentication ID or realm if it is needed .