Class Output

All Implemented Interfaces:
Output
Direct Known Subclasses:
Output

public class Output extends BaseOutput implements Output
Author:
The Red5 Project, Luke Hubbard, Codegent Ltd (luke@codegent.com), Paul Gregoire (mondain@gmail.com), Harald Radi (harald.radi@nme.at)
  • Field Details

    • log

      protected static org.slf4j.Logger log
    • buf

      protected org.apache.mina.core.buffer.IoBuffer buf
      Output buffer
  • Constructor Details

    • Output

      public Output(org.apache.mina.core.buffer.IoBuffer buf)
      Creates output with given byte buffer
      Parameters:
      buf - Byte buffer
  • Method Details

    • isCustom

      public boolean isCustom(Object custom)
      Whether object is custom
      Specified by:
      isCustom in interface Output
      Parameters:
      custom - Object
      Returns:
      true if object is of user type, false otherwise
    • checkWriteReference

      protected boolean checkWriteReference(Object obj)
    • writeArray

      public void writeArray(Collection<?> array)
      Write array.
      Specified by:
      writeArray in interface Output
      Parameters:
      array - Array to write
    • writeArray

      public void writeArray(Object[] array)
      Write array.
      Specified by:
      writeArray in interface Output
      Parameters:
      array - Array to write
    • writeArray

      public void writeArray(Object array)
      Write primitive array.
      Specified by:
      writeArray in interface Output
      Parameters:
      array - Array to write
    • writeMap

      public void writeMap(Map<Object,Object> map)
      Write map.
      Specified by:
      writeMap in interface Output
      Parameters:
      map - Map to write
    • writeMap

      public void writeMap(Collection<?> array)
      Write array as map.
      Specified by:
      writeMap in interface Output
      Parameters:
      array - Array to write
    • writeRecordSet

      public void writeRecordSet(RecordSet recordset)
      Write recordset.
      Specified by:
      writeRecordSet in interface Output
      Parameters:
      recordset - Recordset to write
    • writeBoolean

      public void writeBoolean(Boolean bol)
      Write boolean
      Specified by:
      writeBoolean in interface Output
      Parameters:
      bol - Boolean
    • writeCustom

      public void writeCustom(Object custom)
      Write custom (user) object
      Specified by:
      writeCustom in interface Output
      Parameters:
      custom - Custom data type object
    • writeDate

      public void writeDate(Date date)
      Write date
      Specified by:
      writeDate in interface Output
      Parameters:
      date - Date
    • writeNull

      public void writeNull()
      Specified by:
      writeNull in interface Output
    • writeNumber

      public void writeNumber(Number num)
      Write number
      Specified by:
      writeNumber in interface Output
      Parameters:
      num - Number
    • writeReference

      public void writeReference(Object obj)
      Write reference to complex data type
      Specified by:
      writeReference in interface Output
      Parameters:
      obj - Referenced object
    • writeObject

      public void writeObject(Object object)
      Write object.
      Specified by:
      writeObject in interface Output
      Parameters:
      object - Object to write
    • getField

      protected Field getField(Class<?> objectClass, String keyName)
    • getGetter

      protected Method getGetter(Class<?> objectClass, org.apache.commons.beanutils.BeanMap beanMap, String keyName)
    • writeObject

      public void writeObject(Map<Object,Object> map)
      Write map as object.
      Specified by:
      writeObject in interface Output
      Parameters:
      map - Map to write
    • writeArbitraryObject

      protected void writeArbitraryObject(Object object)
      Writes an arbitrary object to the output.
      Parameters:
      object - Object to write
    • writeString

      public void writeString(String string)
      Write string
      Specified by:
      writeString in interface Output
      Parameters:
      string - String
    • writeByteArray

      public void writeByteArray(ByteArray array)
      Write ByteArray object (AMF3 only).
      Specified by:
      writeByteArray in interface Output
      Parameters:
      array - object to write
    • writeVectorInt

      public void writeVectorInt(Vector<Integer> vector)
      Write a Vector<int>.
      Specified by:
      writeVectorInt in interface Output
      Parameters:
      vector - vector
    • writeVectorUInt

      public void writeVectorUInt(Vector<Long> vector)
      Write a Vector<uint>.
      Specified by:
      writeVectorUInt in interface Output
      Parameters:
      vector - vector
    • writeVectorNumber

      public void writeVectorNumber(Vector<Double> vector)
      Write a Vector<Number>.
      Specified by:
      writeVectorNumber in interface Output
      Parameters:
      vector - vector
    • writeVectorObject

      public void writeVectorObject(Vector<Object> vector)
      Write a Vector<Object>.
      Specified by:
      writeVectorObject in interface Output
      Parameters:
      vector - vector
    • encodeString

      protected static byte[] encodeString(String string)
      Encode string.
      Parameters:
      string - string to encode
      Returns:
      encoded string
    • putString

      public static void putString(org.apache.mina.core.buffer.IoBuffer buf, String string)
      Write out string
      Parameters:
      buf - Byte buffer to write to
      string - String to write
    • putString

      public void putString(String string)
      Specified by:
      putString in interface Output
    • writeXML

      public void writeXML(Document xml)
      Write XML object
      Specified by:
      writeXML in interface Output
      Parameters:
      xml - XML document
    • writeXML

      public void writeXML(String xml)
      Convenience method to allow XML text to be used, instead of requiring an XML Document.
      Parameters:
      xml - xml to write
    • buf

      public org.apache.mina.core.buffer.IoBuffer buf()
      Return buffer of this Output object
      Returns:
      Byte buffer of this Output object
    • reset

      public void reset()