public class Bytestream
extends org.jivesoftware.smack.packet.IQ
Modifier and Type | Class and Description |
---|---|
static class |
Bytestream.Activate
The stanza sent by the stream initiator to the stream proxy to activate the connection.
|
static class |
Bytestream.Mode
The stream can be either a TCP stream or a UDP stream.
|
static class |
Bytestream.StreamHost
Stanza extension that represents a potential SOCKS5 proxy for the file transfer.
|
static class |
Bytestream.StreamHostUsed
After selected a SOCKS5 stream host and successfully connecting, the target of the file
transfer returns a byte stream stanza with the stream host used extension.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ELEMENT |
static java.lang.String |
NAMESPACE
The XMPP namespace of the SOCKS5 Bytestream.
|
Constructor and Description |
---|
Bytestream()
The default constructor.
|
Bytestream(java.lang.String SID)
A constructor where the session ID can be specified.
|
Modifier and Type | Method and Description |
---|---|
void |
addStreamHost(Bytestream.StreamHost host)
Adds a potential stream host that the remote user can transfer the file through.
|
Bytestream.StreamHost |
addStreamHost(org.jxmpp.jid.Jid JID,
java.lang.String address)
Adds a potential stream host that the remote user can connect to to receive the file.
|
Bytestream.StreamHost |
addStreamHost(org.jxmpp.jid.Jid JID,
java.lang.String address,
int port)
Adds a potential stream host that the remote user can connect to to receive the file.
|
int |
countStreamHosts()
Returns the count of stream hosts contained in this packet.
|
protected org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder |
getIQChildElementBuilder(org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder xml) |
Bytestream.Mode |
getMode()
Returns the transport mode.
|
java.lang.String |
getSessionID()
Returns the session ID related to the bytestream negotiation.
|
Bytestream.StreamHost |
getStreamHost(org.jxmpp.jid.Jid JID)
Returns the stream host related to the given JID, or null if there is none.
|
java.util.List<Bytestream.StreamHost> |
getStreamHosts()
Returns the list of stream hosts contained in the packet.
|
Bytestream.Activate |
getToActivate()
Returns the activate element of the stanza sent to the proxy host to verify the identity of
the initiator and match them to the appropriate stream.
|
Bytestream.StreamHostUsed |
getUsedHost()
Returns the SOCKS5 host connected to by the remote user.
|
void |
setMode(Bytestream.Mode mode)
Set the transport mode.
|
void |
setSessionID(java.lang.String sessionID)
Set the session ID related to the bytestream.
|
void |
setToActivate(org.jxmpp.jid.Jid targetID)
Upon the response from the target of the used host the activate stanza is sent to the SOCKS5
proxy.
|
void |
setUsedHost(org.jxmpp.jid.Jid JID)
Upon connecting to the stream host the target of the stream replies to the initiator with the
JID of the SOCKS5 host that they used.
|
createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementXML, getType, initializeAsResultFor, initialzeAsResultFor, isRequestIQ, setType, toString, toXML
addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtensions, getExtensions, getFrom, getLanguage, getPacketID, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, logCommonAttributes, overrideExtension, removeExtension, removeExtension, setError, setError, setFrom, setFrom, setLanguage, setPacketID, setStanzaId, setStanzaId, setTo, setTo
public static final java.lang.String ELEMENT
public static final java.lang.String NAMESPACE
public Bytestream()
public Bytestream(java.lang.String SID)
SID
- The session ID related to the negotiation.setSessionID(String)
public void setSessionID(java.lang.String sessionID)
sessionID
- the unique session ID that identifies the transfer.public java.lang.String getSessionID()
setSessionID(String)
public void setMode(Bytestream.Mode mode)
mode
- the transport mode, either UDP or TCPBytestream.Mode
public Bytestream.Mode getMode()
setMode(Mode)
public Bytestream.StreamHost addStreamHost(org.jxmpp.jid.Jid JID, java.lang.String address)
JID
- The JID of the stream host.address
- The internet address of the stream host.public Bytestream.StreamHost addStreamHost(org.jxmpp.jid.Jid JID, java.lang.String address, int port)
JID
- The JID of the stream host.address
- The internet address of the stream host.port
- The port on which the remote host is seeking connections.public void addStreamHost(Bytestream.StreamHost host)
host
- The potential stream host.public java.util.List<Bytestream.StreamHost> getStreamHosts()
public Bytestream.StreamHost getStreamHost(org.jxmpp.jid.Jid JID)
JID
- The JID of the desired stream host.public int countStreamHosts()
public void setUsedHost(org.jxmpp.jid.Jid JID)
JID
- The JID of the used host.public Bytestream.StreamHostUsed getUsedHost()
public Bytestream.Activate getToActivate()
public void setToActivate(org.jxmpp.jid.Jid targetID)
targetID
- The JID of the target of the file transfer.protected org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder xml)
getIQChildElementBuilder
in class org.jivesoftware.smack.packet.IQ