Class ExTermDecoder
- java.lang.Object
-
- net.dv8tion.jda.api.utils.data.etf.ExTermDecoder
-
public class ExTermDecoder extends java.lang.Object
Decodes an ETF encoded payload to a java object representation.- Since:
- 4.2.1
- See Also:
unpack(ByteBuffer)
,unpackMap(ByteBuffer)
,unpackList(ByteBuffer)
-
-
Constructor Summary
Constructors Constructor Description ExTermDecoder()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Object
unpack(java.nio.ByteBuffer buffer)
Unpacks the provided term into a java object.static java.util.List<java.lang.Object>
unpackList(java.nio.ByteBuffer buffer)
Unpacks the provided term into a javaList
.static java.util.Map<java.lang.String,java.lang.Object>
unpackMap(java.nio.ByteBuffer buffer)
Unpacks the provided term into a javaMap
.
-
-
-
Method Detail
-
unpack
public static java.lang.Object unpack(java.nio.ByteBuffer buffer)
Unpacks the provided term into a java object.The mapping is as follows:
Small Int | Int -> Integer
Small BigInt -> Long
Float | New Float -> Double
Small Atom | Atom -> Boolean | null | String
Binary | String -> String
List | NIL -> List
Map -> Map
- Parameters:
buffer
- TheByteBuffer
containing the encoded term- Returns:
- The java object
- Throws:
java.lang.IllegalArgumentException
- If the buffer does not start with the version byte131
or contains an unsupported tag
-
unpackMap
public static java.util.Map<java.lang.String,java.lang.Object> unpackMap(java.nio.ByteBuffer buffer)
Unpacks the provided term into a javaMap
.The mapping is as follows:
Small Int | Int -> Integer
Small BigInt -> Long
Float | New Float -> Double
Small Atom | Atom -> Boolean | null | String
Binary | String -> String
List | NIL -> List
Map -> Map
- Parameters:
buffer
- TheByteBuffer
containing the encoded term- Returns:
- The parsed
Map
instance - Throws:
java.lang.IllegalArgumentException
- If the buffer does not start with a Map term, does not have the right version byte, or the format includes an unsupported tag
-
unpackList
public static java.util.List<java.lang.Object> unpackList(java.nio.ByteBuffer buffer)
Unpacks the provided term into a javaList
.The mapping is as follows:
Small Int | Int -> Integer
Small BigInt -> Long
Float | New Float -> Double
Small Atom | Atom -> Boolean | null | String
Binary | String -> String
List | NIL -> List
Map -> Map
- Parameters:
buffer
- TheByteBuffer
containing the encoded term- Returns:
- The parsed
List
instance - Throws:
java.lang.IllegalArgumentException
- If the buffer does not start with a List or NIL term, does not have the right version byte, or the format includes an unsupported tag
-
-