org.gudy.azureus2.core3.util
Class BDecoder
java.lang.Object
org.gudy.azureus2.core3.util.BDecoder
public class BDecoder
- extends java.lang.Object
A set of utility methods to decode a bencoded array of byte into a Map.
integer are represented as Long, String as byte[], dictionnaries as Map, and list as List.
- Author:
- TdC_VgA
Method Summary |
static java.util.Map<java.lang.String,java.lang.Object> |
decode(java.io.BufferedInputStream is)
|
static java.util.Map<java.lang.String,java.lang.Object> |
decode(byte[] data)
|
static java.util.Map<java.lang.String,java.lang.Object> |
decode(byte[] data,
int offset,
int length)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeByteArray(byte[] data)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeByteArray(byte[] data,
int offset,
int length)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeByteArray(byte[] data,
int offset,
int length,
boolean internKeys)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeByteBuffer(java.nio.ByteBuffer buffer,
boolean internKeys)
|
static java.util.Map |
decodeFromJSON(java.lang.String json)
|
static java.util.List |
decodeFromJSONArray(java.util.List j_list)
|
static java.util.Map |
decodeFromJSONObject(java.util.Map<java.lang.Object,java.lang.Object> j_map)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeStream(java.io.BufferedInputStream data)
|
java.util.Map<java.lang.String,java.lang.Object> |
decodeStream(java.io.BufferedInputStream data,
boolean internKeys)
|
static java.util.List |
decodeStrings(java.util.List list)
Decodes byte arrays into strings. |
static java.util.Map |
decodeStrings(java.util.Map map)
Converts any byte[] entries into UTF-8 strings. |
static void |
main(java.lang.String[] args)
|
static long |
parseLong(char[] chars,
int start,
int length)
|
static void |
print(java.lang.Object obj)
|
static void |
print(java.io.PrintWriter writer,
java.lang.Object obj)
|
void |
setRecoveryMode(boolean r)
|
void |
setVerifyMapOrder(boolean b)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAX_BYTE_ARRAY_SIZE
public static final int MAX_BYTE_ARRAY_SIZE
- See Also:
- Constant Field Values
BDecoder
public BDecoder()
decode
public static java.util.Map<java.lang.String,java.lang.Object> decode(byte[] data)
throws java.io.IOException
- Throws:
java.io.IOException
decode
public static java.util.Map<java.lang.String,java.lang.Object> decode(byte[] data,
int offset,
int length)
throws java.io.IOException
- Throws:
java.io.IOException
decode
public static java.util.Map<java.lang.String,java.lang.Object> decode(java.io.BufferedInputStream is)
throws java.io.IOException
- Throws:
java.io.IOException
decodeByteArray
public java.util.Map<java.lang.String,java.lang.Object> decodeByteArray(byte[] data)
throws java.io.IOException
- Throws:
java.io.IOException
decodeByteArray
public java.util.Map<java.lang.String,java.lang.Object> decodeByteArray(byte[] data,
int offset,
int length)
throws java.io.IOException
- Throws:
java.io.IOException
decodeByteArray
public java.util.Map<java.lang.String,java.lang.Object> decodeByteArray(byte[] data,
int offset,
int length,
boolean internKeys)
throws java.io.IOException
- Throws:
java.io.IOException
decodeByteBuffer
public java.util.Map<java.lang.String,java.lang.Object> decodeByteBuffer(java.nio.ByteBuffer buffer,
boolean internKeys)
throws java.io.IOException
- Throws:
java.io.IOException
decodeStream
public java.util.Map<java.lang.String,java.lang.Object> decodeStream(java.io.BufferedInputStream data)
throws java.io.IOException
- Throws:
java.io.IOException
decodeStream
public java.util.Map<java.lang.String,java.lang.Object> decodeStream(java.io.BufferedInputStream data,
boolean internKeys)
throws java.io.IOException
- Throws:
java.io.IOException
parseLong
public static long parseLong(char[] chars,
int start,
int length)
setVerifyMapOrder
public void setVerifyMapOrder(boolean b)
setRecoveryMode
public void setRecoveryMode(boolean r)
print
public static void print(java.lang.Object obj)
print
public static void print(java.io.PrintWriter writer,
java.lang.Object obj)
decodeStrings
public static java.util.Map decodeStrings(java.util.Map map)
- Converts any byte[] entries into UTF-8 strings.
REPLACES EXISTING MAP VALUES
- Parameters:
map
-
- Returns:
decodeStrings
public static java.util.List decodeStrings(java.util.List list)
- Decodes byte arrays into strings.
REPLACES EXISTING LIST VALUES
- Parameters:
list
-
- Returns:
- the same list passed in
decodeFromJSONArray
public static java.util.List decodeFromJSONArray(java.util.List j_list)
decodeFromJSONObject
public static java.util.Map decodeFromJSONObject(java.util.Map<java.lang.Object,java.lang.Object> j_map)
decodeFromJSON
public static java.util.Map decodeFromJSON(java.lang.String json)
main
public static void main(java.lang.String[] args)