Interface CompoundBinaryTag

All Superinterfaces:
BinaryTag, BinaryTagLike, CompoundTagSetter<CompoundBinaryTag>, net.kyori.examination.Examinable, Iterable<Map.Entry<String,​? extends BinaryTag>>

public interface CompoundBinaryTag
extends BinaryTag, CompoundTagSetter<CompoundBinaryTag>, Iterable<Map.Entry<String,​? extends BinaryTag>>
Binary tag holding a mapping of string keys to BinaryTag values.
Since:
4.0.0
  • Method Details

    • empty

      @NotNull static @NotNull CompoundBinaryTag empty()
      Gets an empty compound tag.
      Returns:
      an empty tag
      Since:
      4.0.0
    • from

      @NotNull static @NotNull CompoundBinaryTag from​(@NotNull @NotNull Map<String,​? extends BinaryTag> tags)
      Creates a compound tag populated with tags.

      If tags is empty, empty() will be returned.

      Returns:
      a compound tag
      Since:
      4.4.0
    • builder

      @NotNull static @NotNull CompoundBinaryTag.Builder builder()
      Creates a builder.
      Returns:
      a new builder
      Since:
      4.0.0
    • type

      @NotNull default @NotNull BinaryTagType<CompoundBinaryTag> type()
      Description copied from interface: BinaryTag
      Gets the tag type.
      Specified by:
      type in interface BinaryTag
      Returns:
      the tag type
    • keySet

      @NotNull @NotNull Set<String> keySet()
      Gets a set of all keys.
      Returns:
      the keys
      Since:
      4.0.0
    • get

      @Nullable @Nullable BinaryTag get​(String key)
      Gets a tag.
      Parameters:
      key - the key
      Returns:
      a tag
      Since:
      4.0.0
    • getBoolean

      default boolean getBoolean​(@NotNull @NotNull String key)
      Gets a boolean.

      Booleans are stored as a ByteBinaryTag with a value of 0 for false and 1 for true.

      Parameters:
      key - the key
      Returns:
      the boolean value, or false if this compound does not contain a boolean tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getBoolean

      default boolean getBoolean​(@NotNull @NotNull String key, boolean defaultValue)
      Gets a boolean.

      Booleans are stored as a ByteBinaryTag with a value of 0 for false and 1 for true.

      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the boolean value, or defaultValue if this compound does not contain a boolean tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getByte

      default byte getByte​(@NotNull @NotNull String key)
      Gets a byte.
      Parameters:
      key - the key
      Returns:
      the byte value, or 0 if this compound does not contain a byte tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getByte

      byte getByte​(@NotNull @NotNull String key, byte defaultValue)
      Gets a byte.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the byte value, or defaultValue if this compound does not contain a byte tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getShort

      default short getShort​(@NotNull @NotNull String key)
      Gets a short.
      Parameters:
      key - the key
      Returns:
      the short value, or 0 if this compound does not contain a short tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getShort

      short getShort​(@NotNull @NotNull String key, short defaultValue)
      Gets a short.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the short value, or defaultValue if this compound does not contain a short tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getInt

      default int getInt​(@NotNull @NotNull String key)
      Gets an int.
      Parameters:
      key - the key
      Returns:
      the int value, or 0 if this compound does not contain an int tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getInt

      int getInt​(@NotNull @NotNull String key, int defaultValue)
      Gets an int.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the int value, or defaultValue if this compound does not contain an int tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getLong

      default long getLong​(@NotNull @NotNull String key)
      Gets a long.
      Parameters:
      key - the key
      Returns:
      the long value, or 0 if this compound does not contain a long tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getLong

      long getLong​(@NotNull @NotNull String key, long defaultValue)
      Gets a long.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the long value, or defaultValue if this compound does not contain a long tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getFloat

      default float getFloat​(@NotNull @NotNull String key)
      Gets a float.
      Parameters:
      key - the key
      Returns:
      the float value, or 0 if this compound does not contain a float tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getFloat

      float getFloat​(@NotNull @NotNull String key, float defaultValue)
      Gets a float.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the float value, or defaultValue if this compound does not contain a float tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getDouble

      default double getDouble​(@NotNull @NotNull String key)
      Gets a double.
      Parameters:
      key - the key
      Returns:
      the double value, or 0 if this compound does not contain a double tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getDouble

      double getDouble​(@NotNull @NotNull String key, double defaultValue)
      Gets a double.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the double value, or defaultValue if this compound does not contain a double tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getByteArray

      byte @NotNull [] getByteArray​(@NotNull @NotNull String key)
      Gets an array of bytes.
      Parameters:
      key - the key
      Returns:
      the array of bytes, or a zero-length array if this compound does not contain a byte array tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getByteArray

      byte @NotNull [] getByteArray​(@NotNull @NotNull String key, byte @NotNull [] defaultValue)
      Gets an array of bytes.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the array of bytes, or defaultValue
      Since:
      4.0.0
    • getString

      @NotNull default @NotNull String getString​(@NotNull @NotNull String key)
      Gets a string.
      Parameters:
      key - the key
      Returns:
      the string value, or "" if this compound does not contain a string tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getString

      @NotNull @NotNull String getString​(@NotNull @NotNull String key, @NotNull @NotNull String defaultValue)
      Gets a string.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the string value, or defaultValue if this compound does not contain a string tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getList

      @NotNull default @NotNull ListBinaryTag getList​(@NotNull @NotNull String key)
      Gets a list.
      Parameters:
      key - the key
      Returns:
      the list, or a new list if this compound does not contain a list tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getList

      @NotNull @NotNull ListBinaryTag getList​(@NotNull @NotNull String key, @NotNull @NotNull ListBinaryTag defaultValue)
      Gets a list.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the list, or defaultValue if this compound does not contain a list tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getList

      @NotNull default @NotNull ListBinaryTag getList​(@NotNull @NotNull String key, @NotNull @NotNull BinaryTagType<? extends BinaryTag> expectedType)
      Gets a list, ensuring that the type is the same as type.
      Parameters:
      key - the key
      expectedType - the expected list type
      Returns:
      the list, or a new list if this compound does not contain a list tag with the specified key, has a tag with a different type, or the list type does not match expectedType
      Since:
      4.0.0
    • getList

      @NotNull @NotNull ListBinaryTag getList​(@NotNull @NotNull String key, @NotNull @NotNull BinaryTagType<? extends BinaryTag> expectedType, @NotNull @NotNull ListBinaryTag defaultValue)
      Gets a list, ensuring that the type is the same as type.
      Parameters:
      key - the key
      expectedType - the expected list type
      defaultValue - the default value
      Returns:
      the list, or defaultValue if this compound does not contain a list tag with the specified key, has a tag with a different type, or the list type does not match expectedType
      Since:
      4.0.0
    • getCompound

      @NotNull default @NotNull CompoundBinaryTag getCompound​(@NotNull @NotNull String key)
      Gets a compound.
      Parameters:
      key - the key
      Returns:
      the compound, or a new compound if this compound does not contain a compound tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getCompound

      @NotNull @NotNull CompoundBinaryTag getCompound​(@NotNull @NotNull String key, @NotNull @NotNull CompoundBinaryTag defaultValue)
      Gets a compound.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the compound, or defaultValue if this compound does not contain a compound tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getIntArray

      int @NotNull [] getIntArray​(@NotNull @NotNull String key)
      Gets an array of ints.
      Parameters:
      key - the key
      Returns:
      the array of ints, or a zero-length array if this compound does not contain a int array tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getIntArray

      int @NotNull [] getIntArray​(@NotNull @NotNull String key, int @NotNull [] defaultValue)
      Gets an array of ints.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the array of ints, or defaultValue
      Since:
      4.0.0
    • getLongArray

      long @NotNull [] getLongArray​(@NotNull @NotNull String key)
      Gets an array of longs.
      Parameters:
      key - the key
      Returns:
      the array of longs, or a zero-length array if this compound does not contain a long array tag with the specified key, or has a tag with a different type
      Since:
      4.0.0
    • getLongArray

      long @NotNull [] getLongArray​(@NotNull @NotNull String key, long @NotNull [] defaultValue)
      Gets an array of longs.
      Parameters:
      key - the key
      defaultValue - the default value
      Returns:
      the array of longs, or defaultValue
      Since:
      4.0.0