Class AbstractProbeData

java.lang.Object
com.github.kokorin.jaffree.ffprobe.data.AbstractProbeData
All Implemented Interfaces:
ProbeData
Direct Known Subclasses:
FlatFormatParser.ProbeDataMap

public abstract class AbstractProbeData extends Object implements ProbeData
Abstract ProbeData implementation with all common methods implemented.

Data-specific methods are left for subclasses.

  • Constructor Details

    • AbstractProbeData

      public AbstractProbeData()
  • Method Details

    • getString

      public String getString(String key)
      Returns property value as String (using default converter).
      Specified by:
      getString in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as String
    • getBoolean

      public Boolean getBoolean(String key)
      Returns property value as Boolean (using default converter).
      Specified by:
      getBoolean in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Boolean
    • getLong

      public Long getLong(String key)
      Returns property value as Long (using default converter).
      Specified by:
      getLong in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Long
    • getInteger

      public Integer getInteger(String key)
      Returns property value as Integer (using default converter).
      Specified by:
      getInteger in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Integer
    • getFloat

      public Float getFloat(String key)
      Returns property value as Float (using default converter).
      Specified by:
      getFloat in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Float
    • getDouble

      public Double getDouble(String key)
      Returns property value as Double (using default converter).
      Specified by:
      getDouble in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Double
    • getStreamType

      public StreamType getStreamType(String key)
      Returns property value as StreamType (using default converter).
      Specified by:
      getStreamType in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as StreamType
    • getLogLevel

      public LogLevel getLogLevel(String key)
      Returns property value as StreamType (using default converter).
      Specified by:
      getLogLevel in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as StreamType
    • getLogCategory

      public LogCategory getLogCategory(String key)
      Returns property value as LogCategory (using default converter).
      Specified by:
      getLogCategory in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as LogCategory
    • getRational

      public Rational getRational(String key)
      Returns property value as Rational (using default converter).

      Note: this method parses rationals with numerator and denominator separated with / (slash) character

      Specified by:
      getRational in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Rational
      See Also:
    • getRatio

      public Rational getRatio(String key)
      Returns property value as Rational (using default converter).

      Note: this method parses rationals with numerator and denominator separated with : (colon) character

      Specified by:
      getRatio in interface ProbeData
      Parameters:
      key - property name
      Returns:
      property value as Rational
      See Also:
    • getValue

      public <T> T getValue(String name, ValueConverter<T> converter)
      Returns property value converted to T-type using passed in convertor.
      Specified by:
      getValue in interface ProbeData
      Type Parameters:
      T - result type
      Parameters:
      name - property name
      converter - converter to use
      Returns:
      property value converted to T
    • getSubData

      public final <T> T getSubData(String name, ProbeDataConverter<T> converter)
      Returns nested data converted to T type.
      Specified by:
      getSubData in interface ProbeData
      Type Parameters:
      T - result type
      Parameters:
      name - sub-data name
      converter - converter
      Returns:
      nested property converted to T type
    • getSubDataList

      public final <T> List<T> getSubDataList(String name, ProbeDataConverter<T> converter)
      Returns nested data list converted to List of T.
      Specified by:
      getSubDataList in interface ProbeData
      Type Parameters:
      T - result type
      Parameters:
      name - property name
      converter - converter
      Returns:
      list of converted values
    • getSubDataValue

      public Object getSubDataValue(String name, String property)
      Returns value of nested data property.
      Specified by:
      getSubDataValue in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      value of nested data property
    • getSubDataValue

      public <T> T getSubDataValue(String name, String property, ValueConverter<T> converter)
      Returns value of nested data property converted to T type.
      Specified by:
      getSubDataValue in interface ProbeData
      Type Parameters:
      T - result type
      Parameters:
      name - sub-data name
      property - property name
      converter - converter to use
      Returns:
      value of nested data property converted to T type
    • getSubDataString

      public String getSubDataString(String name, String property)
      Returns value of nested data property converted to String.
      Specified by:
      getSubDataString in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      sub-data property String value
    • getSubDataLong

      public Long getSubDataLong(String name, String property)
      Returns value of nested data property converted to Long.
      Specified by:
      getSubDataLong in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      sub-data property value
    • getSubDataInteger

      public Integer getSubDataInteger(String name, String property)
      Returns value of nested data property converted to Integer.
      Specified by:
      getSubDataInteger in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      sub-data property value
    • getSubDataDouble

      public Double getSubDataDouble(String name, String property)
      Returns value of nested data property converted to Double.
      Specified by:
      getSubDataDouble in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      sub-data property value
    • getSubDataFloat

      public Float getSubDataFloat(String name, String property)
      Returns value of nested data property converted to Float.
      Specified by:
      getSubDataFloat in interface ProbeData
      Parameters:
      name - sub-data name
      property - property name
      Returns:
      sub-data property value