Class ContentNegotiator

java.lang.Object
org.jivesoftware.smackx.jingleold.JingleNegotiator
org.jivesoftware.smackx.jingleold.ContentNegotiator

public class ContentNegotiator extends JingleNegotiator
Content negotiator.
  • Field Details

  • Constructor Details

  • Method Details

    • dispatchIncomingPacket

      public List<org.jivesoftware.smack.packet.IQ> dispatchIncomingPacket(org.jivesoftware.smack.packet.IQ iq, String id) throws org.jivesoftware.smack.XMPPException, org.jivesoftware.smack.SmackException, InterruptedException
      Description copied from class: JingleNegotiator
      Dispatch an incoming packet. The negotiators form a tree relationship that roughly matches the Jingle stanza format: JingleSession Content Negotiator Media Negotiator Transport Negotiator Content Negotiator Media Negotiator Transport Negotiator <jingle> <content> <description> <transport> <content> <description> <transport> This way, each segment of a Jingle stanza has a corresponding negotiator that know how to deal with that part of the Jingle packet. It also allows us to support Jingle packets of arbitrary complexity. Each parent calls dispatchIncomingPacket for each of its children. The children then pass back a List of results that will get sent when we reach the top level negotiator (JingleSession).
      Specified by:
      dispatchIncomingPacket in class JingleNegotiator
      Parameters:
      iq - the stanza received
      id - the ID of the response that will be sent
      Returns:
      the new stanza to send (either a Jingle or an IQ error).
      Throws:
      org.jivesoftware.smack.XMPPException - if an XMPP protocol error was received.
      org.jivesoftware.smack.SmackException - if Smack detected an exceptional situation.
      InterruptedException - if the calling thread was interrupted.
    • getCreator

      public String getCreator()
    • getName

      public String getName()
    • getJingleMediaSession

      public JingleMediaSession getJingleMediaSession()
      Get the JingleMediaSession of this Jingle Session.
      Returns:
      the JingleMediaSession
    • addTransportNegotiator

      public void addTransportNegotiator(TransportNegotiator transportNegotiator)
    • setJingleTransportManager

      public void setJingleTransportManager(JingleTransportManager jingleTransportManager)
      Set jingle transport manager.
      Parameters:
      jingleTransportManager - TODO javadoc me please
    • getTransportManager

      public JingleTransportManager getTransportManager()
      Get jingle transport manager.
      Returns:
      the JingleTransportManager
    • doStart

      protected void doStart()
      Called from above when starting a new session.
      Specified by:
      doStart in class JingleNegotiator
    • close

      public void close()
      Prepare to close the media manager.
      Overrides:
      close in class JingleNegotiator
    • getMediaNegotiator

      public MediaNegotiator getMediaNegotiator()
      Obtain the description negotiator for this session.
      Returns:
      the description negotiator
    • setMediaNegotiator

      protected void setMediaNegotiator(MediaNegotiator mediaNeg)
      Set the jmf negotiator.
      Parameters:
      mediaNeg - TODO javadoc me please the description negotiator to set
    • destroyMediaNegotiator

      protected void destroyMediaNegotiator()
      Destroy the jmf negotiator.
    • getTransportNegotiator

      public TransportNegotiator getTransportNegotiator()
      Obtain the transport negotiator for this session.
      Returns:
      the transport negotiator instance
    • setTransportNegotiator

      protected void setTransportNegotiator(TransportNegotiator transNeg)
      Set TransportNegotiator
      Parameters:
      transNeg - TODO javadoc me please the transNeg to set
    • destroyTransportNegotiator

      protected void destroyTransportNegotiator()
      Destroy the transport negotiator.
    • isFullyEstablished

      public boolean isFullyEstablished()
      Return true if the transport and content negotiators have finished.
      Returns:
      true if fully established.
    • getJingleContent

      public JingleContent getJingleContent()
    • triggerContentEstablished

      public void triggerContentEstablished() throws org.jivesoftware.smack.SmackException.NotConnectedException, InterruptedException, org.jivesoftware.smack.SmackException.NoResponseException, org.jivesoftware.smack.XMPPException.XMPPErrorException
      Throws:
      org.jivesoftware.smack.SmackException.NotConnectedException
      InterruptedException
      org.jivesoftware.smack.SmackException.NoResponseException
      org.jivesoftware.smack.XMPPException.XMPPErrorException
    • stopJingleMediaSession

      public void stopJingleMediaSession()
      Stop a Jingle media session.
    • getNegotiatorState

      public JingleNegotiatorState getNegotiatorState()
      The negotiator state for the ContentNegotiators is a special case. It is a roll-up of the sub-negotiator states.
      Overrides:
      getNegotiatorState in class JingleNegotiator