public abstract class StreamNegotiator extends Object
| Constructor and Description |
|---|
StreamNegotiator() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
cleanup()
Cleanup any and all resources associated with this negotiator.
|
IQ |
createError(String from,
String to,
String packetID,
XMPPError xmppError) |
abstract InputStream |
createIncomingStream(StreamInitiation initiation)
This method handles the file stream download negotiation process.
|
StreamInitiation |
createInitiationAccept(StreamInitiation streamInitiationOffer,
String[] namespaces)
Creates the initiation acceptance packet to forward to the stream
initiator.
|
abstract OutputStream |
createOutgoingStream(String streamID,
String initiator,
String target)
This method handles the file upload stream negotiation process.
|
abstract PacketFilter |
getInitiationPacketFilter(String from,
String streamID)
Returns the packet filter that will return the initiation packet for the appropriate stream
initiation.
|
abstract String[] |
getNamespaces()
Returns the XMPP namespace reserved for this particular type of file
transfer.
|
public StreamNegotiator()
public StreamInitiation createInitiationAccept(StreamInitiation streamInitiationOffer, String[] namespaces)
streamInitiationOffer - The offer from the stream initiator to connect for a stream.namespaces - The namespace that relates to the accepted means of transfer.public abstract PacketFilter getInitiationPacketFilter(String from, String streamID)
from - The initiator of the file transfer.streamID - The stream ID related to the transfer.public abstract InputStream createIncomingStream(StreamInitiation initiation) throws XMPPException.XMPPErrorException, InterruptedException, SmackException.NoResponseException, SmackException
initiation - The initiation that triggered this download.XMPPException.XMPPErrorException - If an error occurs during this process an XMPPException is
thrown.InterruptedException - If thread is interrupted.SmackExceptionSmackException.NoResponseExceptionpublic abstract OutputStream createOutgoingStream(String streamID, String initiator, String target) throws XMPPException.XMPPErrorException, SmackException.NoResponseException, SmackException, XMPPException
streamID - The streamID that uniquely identifies the file transfer.initiator - The fully-qualified JID of the initiator of the file transfer.target - The fully-qualified JID of the target or receiver of the file
transfer.XMPPException.XMPPErrorException - If an error occurs during the negotiation process an
exception will be thrown.SmackExceptionXMPPExceptionSmackException.NoResponseExceptionpublic abstract String[] getNamespaces()
public abstract void cleanup()