Class StreamInitiation

    • Method Detail

      • setSessionID

        public void setSessionID​(String id)
        The "id" attribute is an opaque identifier. This attribute MUST be present on type='set', and MUST be a valid string. This SHOULD NOT be sent back on type='result', since the <iq/> "id" attribute provides the only context needed. This value is generated by the Sender, and the same value MUST be used throughout a session when talking to the Receiver.
        Parameters:
        id - The "id" attribute.
      • setMimeType

        public void setMimeType​(String mimeType)
        The "mime-type" attribute identifies the MIME-type for the data across the stream. This attribute MUST be a valid MIME-type as registered with the Internet Assigned Numbers Authority (IANA) [3] (specifically, as listed at <http://www.iana.org/assignments/media-types>). During negotiation, this attribute SHOULD be present, and is otherwise not required. If not included during negotiation, its value is assumed to be "binary/octet-stream".
        Parameters:
        mimeType - The valid mime-type.
      • setFile

        public void setFile​(StreamInitiation.File file)
        Sets the file which contains the information pertaining to the file to be transferred.
        Parameters:
        file - The file identified by the stream initiator to be sent.
      • getFile

        public StreamInitiation.File getFile()
        Returns the file containing the information about the request.
        Returns:
        Returns the file containing the information about the request.
      • setFeatureNegotiationForm

        public void setFeatureNegotiationForm​(DataForm form)
        Sets the data form which contains the valid methods of stream negotiation and transfer.
        Parameters:
        form - The dataform containing the methods.
      • getFeatureNegotiationForm

        public DataForm getFeatureNegotiationForm()
        Returns the data form which contains the valid methods of stream negotiation and transfer.
        Returns:
        Returns the data form which contains the valid methods of stream negotiation and transfer.
      • getIQChildElementBuilder

        protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder​(IQ.IQChildElementXmlStringBuilder buf)
        Description copied from class: IQ
        This method must be overwritten by IQ subclasses to create their child content. It is important you don't use the builder to add the final end tag. This will be done automatically by IQ.IQChildElementXmlStringBuilder after eventual existing ExtensionElements have been added.

        For example to create an IQ with a extra attribute and an additional child element

         
         <iq to='foo@example.org' id='123'>
           <bar xmlns='example:bar' extraAttribute='blaz'>
              <extraElement>elementText</extraElement>
           </bar>
         </iq>
         
         
        the body of the getIQChildElementBuilder looks like
         
         // The builder 'xml' will already have the child element and the 'xmlns' attribute added
         // So the current builder state is "<bar xmlns='example:bar'"
         xml.attribute("extraAttribute", "blaz");
         xml.rightAngleBracket();
         xml.element("extraElement", "elementText");
         // Do not close the 'bar' attribute by calling xml.closeElement('bar')
         
         
        If your IQ only contains attributes and no child elements, i.e. it can be represented as empty element, then you can mark it as such.
         xml.attribute("myAttribute", "myAttributeValue");
         xml.setEmptyElement();
         
        If your IQ does not contain any attributes or child elements (besides ExtensionElements), consider sub-classing SimpleIQ instead.
        Specified by:
        getIQChildElementBuilder in class IQ
        Parameters:
        buf - a pre-created builder which already has the child element and the 'xmlns' attribute set.
        Returns:
        the build to create the IQ child content.