public class XMPPBOSHConnection
extends org.jivesoftware.smack.AbstractXMPPConnection
XMPPConnection| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
authID
The BOSH equivalent of the stream ID which is used for DIGEST authentication.
|
static java.lang.String |
BOSH_URI
The BOSH namespace from XEP-0124.
|
protected java.lang.String |
sessionID
The session ID for the BOSH session with the connection manager.
|
static java.lang.String |
XMPP_BOSH_NS
The XMPP Over Bosh namespace.
|
| Constructor and Description |
|---|
XMPPBOSHConnection(boolean https,
java.lang.String host,
int port,
java.lang.String filePath,
java.lang.String xmppDomain)
Create a HTTP Binding connection to a XMPP server.
|
XMPPBOSHConnection(BOSHConfiguration config)
Create a HTTP Binding connection to a XMPP server.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
connectInternal() |
java.lang.String |
getConnectionID() |
protected org.jivesoftware.smack.SASLAuthentication |
getSASLAuthentication() |
java.lang.String |
getUser() |
protected void |
initDebugger()
Initialize the SmackDebugger which allows to log and debug XML traffic.
|
boolean |
isAuthenticated() |
boolean |
isConnected() |
boolean |
isSecureConnection() |
boolean |
isUsingCompression() |
void |
login(java.lang.String username,
java.lang.String password,
java.lang.String resource) |
void |
loginAnonymously() |
protected void |
notifyConnectionError(java.lang.Exception e)
Sends out a notification that there was an error with the connection
and closes the connection.
|
protected void |
processPacket(org.jivesoftware.smack.packet.Packet packet) |
protected void |
send(org.igniterealtime.jbosh.ComposableBody body)
Send a HTTP request to the connection manager with the provided body element.
|
void |
send(org.jivesoftware.smack.packet.PlainStreamElement element) |
protected void |
sendPacketInternal(org.jivesoftware.smack.packet.Packet packet) |
protected void |
shutdown()
Closes the connection by setting presence to unavailable and closing the
HTTP client.
|
addConnectionListener, addPacketInterceptor, addPacketListener, addPacketSendingListener, afterFeaturesReceived, afterSuccessfulLogin, bindResourceAndEstablishSession, callConnectionAuthenticatedListener, callConnectionClosedOnErrorListener, callConnectionConnectedListener, connect, createPacketCollector, createPacketCollectorAndSend, createPacketCollectorAndSend, disconnect, disconnect, finalize, getConfiguration, getConnectionCounter, getConnectionCreationListeners, getConnectionListeners, getConnectionLock, getFeature, getFromMode, getHost, getLastStanzaReceived, getPacketReplyTimeout, getPort, getRoster, getRosterStore, getServiceName, hasFeature, invokePacketCollectors, isAnonymous, isRosterLoadedAtLogin, login, maybeResolveDns, notifiyReceivedListeners, parseFeatures, removeConnectionListener, removePacketCollector, removePacketInterceptor, removePacketListener, removePacketSendingListener, reportStanzaReceived, sendIqWithResponseCallback, sendIqWithResponseCallback, sendIqWithResponseCallback, sendPacket, sendStanzaWithResponseCallback, sendStanzaWithResponseCallback, sendStanzaWithResponseCallback, setFromMode, setLoginInfo, setPacketReplyTimeout, setServiceName, setWasAuthenticatedpublic static final java.lang.String XMPP_BOSH_NS
public static final java.lang.String BOSH_URI
protected java.lang.String authID
protected java.lang.String sessionID
public XMPPBOSHConnection(boolean https,
java.lang.String host,
int port,
java.lang.String filePath,
java.lang.String xmppDomain)
https - true if you want to use SSL
(e.g. false for http://domain.lt:7070/http-bind).host - the hostname or IP address of the connection manager
(e.g. domain.lt for http://domain.lt:7070/http-bind).port - the port of the connection manager
(e.g. 7070 for http://domain.lt:7070/http-bind).filePath - the file which is described by the URL
(e.g. /http-bind for http://domain.lt:7070/http-bind).xmppDomain - the XMPP service name
(e.g. domain.lt for the user alice@domain.lt)public XMPPBOSHConnection(BOSHConfiguration config)
config - The configuration which is used for this connection.protected void connectInternal()
throws org.jivesoftware.smack.SmackException
connectInternal in class org.jivesoftware.smack.AbstractXMPPConnectionorg.jivesoftware.smack.SmackExceptionpublic java.lang.String getConnectionID()
getConnectionID in interface org.jivesoftware.smack.XMPPConnectiongetConnectionID in class org.jivesoftware.smack.AbstractXMPPConnectionpublic java.lang.String getUser()
getUser in interface org.jivesoftware.smack.XMPPConnectiongetUser in class org.jivesoftware.smack.AbstractXMPPConnectionpublic boolean isAuthenticated()
isAuthenticated in interface org.jivesoftware.smack.XMPPConnectionisAuthenticated in class org.jivesoftware.smack.AbstractXMPPConnectionpublic boolean isConnected()
isConnected in interface org.jivesoftware.smack.XMPPConnectionisConnected in class org.jivesoftware.smack.AbstractXMPPConnectionpublic boolean isSecureConnection()
isSecureConnection in interface org.jivesoftware.smack.XMPPConnectionisSecureConnection in class org.jivesoftware.smack.AbstractXMPPConnectionpublic boolean isUsingCompression()
isUsingCompression in interface org.jivesoftware.smack.XMPPConnectionisUsingCompression in class org.jivesoftware.smack.AbstractXMPPConnectionpublic void login(java.lang.String username,
java.lang.String password,
java.lang.String resource)
throws org.jivesoftware.smack.XMPPException,
org.jivesoftware.smack.SmackException,
java.io.IOException
login in class org.jivesoftware.smack.AbstractXMPPConnectionorg.jivesoftware.smack.XMPPExceptionorg.jivesoftware.smack.SmackExceptionjava.io.IOExceptionpublic void loginAnonymously()
throws org.jivesoftware.smack.XMPPException,
org.jivesoftware.smack.SmackException,
java.io.IOException
loginAnonymously in class org.jivesoftware.smack.AbstractXMPPConnectionorg.jivesoftware.smack.XMPPExceptionorg.jivesoftware.smack.SmackExceptionjava.io.IOExceptionpublic void send(org.jivesoftware.smack.packet.PlainStreamElement element)
throws org.jivesoftware.smack.SmackException.NotConnectedException
send in interface org.jivesoftware.smack.XMPPConnectionsend in class org.jivesoftware.smack.AbstractXMPPConnectionorg.jivesoftware.smack.SmackException.NotConnectedExceptionprotected void sendPacketInternal(org.jivesoftware.smack.packet.Packet packet)
throws org.jivesoftware.smack.SmackException.NotConnectedException
sendPacketInternal in class org.jivesoftware.smack.AbstractXMPPConnectionorg.jivesoftware.smack.SmackException.NotConnectedExceptionprotected void shutdown()
AbstractXMPPConnection.disconnect() the connection's
BOSH packet reader and Roster will not be removed; thus
connection's state is kept.shutdown in class org.jivesoftware.smack.AbstractXMPPConnectionprotected void send(org.igniterealtime.jbosh.ComposableBody body)
throws org.igniterealtime.jbosh.BOSHException
body - the body which will be sent.org.igniterealtime.jbosh.BOSHExceptionprotected void initDebugger()
initDebugger in class org.jivesoftware.smack.AbstractXMPPConnectionprotected void notifyConnectionError(java.lang.Exception e)
e - the exception that causes the connection close event.protected void processPacket(org.jivesoftware.smack.packet.Packet packet)
processPacket in class org.jivesoftware.smack.AbstractXMPPConnectionprotected org.jivesoftware.smack.SASLAuthentication getSASLAuthentication()
getSASLAuthentication in class org.jivesoftware.smack.AbstractXMPPConnection