|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Objectcom.wowza.wms.amf.AMFData
com.wowza.wms.amf.AMFDataObj
public class AMFDataObj
AMFDataObj: class for marshalling data between Wowza Pro server and Flash client. Object with attributes. Implementation is very similar to a java.util.Map. Each parameter is an item in the map.
AMFDataObj amfDataObj = new AMFDataObj();
amfDataObj.put("key1", "item1");
amfDataObj.put("key2", "item2");
amfDataObj.put("key3", "item3");
AMFDataObj amfDataObj;
List keys = amfDataObj.getKeys();
Iterator iter = keys.iterator();
while(iter.hasNext())
{
String key = (String)iter.next();
AMFData value = amfDataObj.get(key);
int itemType = value.getType();
WMSLoggerFactory.getLogger(null).debug(key+"="+value.toString()+" (type:"+itemType+")");
}
AMFDataObj amfDataObj;
// If you know the type you can access it directly
String dataString = amfDataObj.getString("stringData");
long dataLong = amfDataObj.getLong("longData");
double dataDouble = amfDataObj.getDouble("doubleData");
boolean dataBoolean = amfDataObj.getBoolean("booleanData");
// This illustrate how to decode the value if
// you don't know the type
AMFData myItemKey1 = amfDataObj.get("theData");
switch (myItemKey1.getType())
{
default:
case AMFDataItem.DATA_TYPE_UNDEFINED:
case AMFDataItem.DATA_TYPE_UNKNOWN:
case AMFDataItem.DATA_TYPE_NULL:
// the value is null or undefined
break;
case AMFDataItem.DATA_TYPE_NUMBER:
double amfDataDouble = ((AMFDataItem)myItemKey1).doubleValue();
break;
case AMFDataItem.DATA_TYPE_BOOLEAN:
boolean amfDataBoolean = ((AMFDataItem)myItemKey1).booleanValue();
break;
case AMFDataItem.DATA_TYPE_STRING:
String amfDataString = ((AMFDataItem)myItemKey1).toString();
break;
case AMFDataItem.DATA_TYPE_DATE:
Date amfDataDate = ((AMFDataItem)myItemKey1).dateValue();
break;
case AMFDataItem.DATA_TYPE_OBJECT:
AMFDataObj amfDataValObj = (AMFDataObj)myItemKey1;
break;
case AMFDataItem.DATA_TYPE_MIXED_ARRAY:
AMFDataMixedArray amfDataMixedArray = (AMFDataMixedArray)myItemKey1;
break;
case AMFDataItem.DATA_TYPE_ARRAY:
AMFDataArray amfDataArray = (AMFDataArray)myItemKey1;
break;
}
NOTE: A AMFDataObj is exactly the same as a AMFDataMixedArray except its type is DATA_TYPE_OBJECT.
| Field Summary | |
|---|---|
static int |
DECODE_OBJ_REF
|
static int |
DECODE_TRAITS
|
static int |
DECODE_TRAITS_EXT
|
static int |
DECODE_TRAITS_REF
|
static int |
DECODE_UNDEFINED
|
protected java.util.Map<String,AMFData> |
members
|
protected java.util.List<String> |
order
|
protected AMFDataTrait |
trait
|
| Constructor Summary | |
|---|---|
AMFDataObj()
Create empty AMFDataObj object |
|
AMFDataObj(byte[] data)
Deserialize entire data array and create AMFDataObj object |
|
AMFDataObj(byte[] data,
int offset,
int size)
Deserialize data array starting at offest for size bytes and create AMFDataObj object |
|
AMFDataObj(java.nio.ByteBuffer data)
Deserialize entire data array and create AMFDataObj object |
|
AMFDataObj(java.nio.ByteBuffer data,
AMFDataContextDeserialize context)
|
|
| Method Summary | |
|---|---|
boolean |
containsKey(String name)
Return true if the object/array contains key |
void |
deserialize(java.nio.ByteBuffer data)
Deserialize data in byte buffer |
void |
deserialize(java.nio.ByteBuffer data,
AMFDataContextDeserialize context)
Deserialize data in byte buffer |
AMFData |
get(int index)
Return the object at a particular index. |
AMFData |
get(String name)
Return the object at a particular key. |
boolean |
getBoolean(int index)
Get item at index return as boolean |
boolean |
getBoolean(String name)
Get item at key return as boolean |
byte |
getByte(int index)
Get item at index return as byte |
byte |
getByte(String name)
Get item at key return as byte |
String |
getClassName()
|
java.util.Date |
getDate(int index)
Get item at index return as Date |
java.util.Date |
getDate(String name)
Get item at key return as Date |
double |
getDouble(int index)
Get item at index return as double |
double |
getDouble(String name)
Get item at key return as double |
float |
getFloat(int index)
Get item at index return as float |
float |
getFloat(String name)
Get item at key return as float |
int |
getInt(int index)
Get item at index return as int |
int |
getInt(String name)
Get item at key return as int |
String |
getKey(int index)
Return the key at a particular index. |
java.util.List |
getKeys()
Return a list of all the keys (the list is a copy) |
long |
getLong(int index)
Get item at index return as long |
long |
getLong(String name)
Get item at key return as long |
AMFDataObj |
getObject(int index)
Get item at index return as AMFDataObj |
AMFDataObj |
getObject(String name)
Get item at key return as AMFDataObj |
short |
getShort(int index)
Get item at index return as short |
short |
getShort(String name)
Get item at key return as short |
String |
getString(int index)
Get item at index return as String |
String |
getString(String name)
Get item at key return as String |
AMFDataTrait |
getTrait()
|
Object |
getValue()
Convert object to Java native class |
void |
put(String name,
AMFData data)
Put or replace object at key |
void |
put(String name,
boolean data)
Put or replace boolean value at key (data will be wrapped in an AMFDataItem object) |
void |
put(String name,
java.util.Date data)
Put or replace date value at key (data will be wrapped in an AMFDataItem object) |
void |
put(String name,
double data)
Put or replace double value at key (data will be wrapped in an AMFDataItem object) |
void |
put(String name,
int data)
Put or replace int value at key (data will be wrapped in an AMFDataItem object) |
void |
put(String name,
long data)
Put or replace long value at key (data will be wrapped in an AMFDataItem object) |
void |
put(String name,
String data)
Put or replace string value at key (data will be wrapped in an AMFDataItem object) |
AMFData |
remove(int index)
Remove element by index |
AMFData |
remove(String name)
Remove element by key |
byte[] |
serialize()
Serial object to byte array |
byte[] |
serialize(AMFDataContextSerialize context)
Serial object to byte array |
void |
serialize(java.io.DataOutputStream out)
Serialize object to output stream |
void |
serialize(java.io.DataOutputStream out,
AMFDataContextSerialize context)
Serialize object to output stream |
void |
serialize(java.io.DataOutputStream out,
int objectEncoding)
Serialize object to output stream |
byte[] |
serialize(int objectEncoding)
Serial object to byte array |
void |
setClassName(String className)
|
int |
size()
Return the number of members of this object/array |
String |
toString()
Return object as formatted string |
| Methods inherited from class com.wowza.wms.amf.AMFData |
|---|
createContextDeserialize, createContextDeserialize, createContextSerialize, createContextSerialize, deserializeInnerObject, getReference, getType, isAMF3Start, isArrayStart, isByteArrayStart, isMixedArrayStart, isObjEnd, isObjStart, peekByte, setType, skipByte, testNextByte, triggerAMF3Switch |
| Methods inherited from class Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final int DECODE_OBJ_REF
public static final int DECODE_TRAITS
public static final int DECODE_TRAITS_EXT
public static final int DECODE_TRAITS_REF
public static final int DECODE_UNDEFINED
protected java.util.Map<String,AMFData> members
protected java.util.List<String> order
protected AMFDataTrait trait
| Constructor Detail |
|---|
public AMFDataObj()
public AMFDataObj(byte[] data)
data - binary data
public AMFDataObj(byte[] data,
int offset,
int size)
data - binary dataoffset - starting offset into datasize - size of data to deserializepublic AMFDataObj(java.nio.ByteBuffer data)
data - binary data
public AMFDataObj(java.nio.ByteBuffer data,
AMFDataContextDeserialize context)
| Method Detail |
|---|
public boolean containsKey(String name)
name - key
public void deserialize(java.nio.ByteBuffer data)
AMFData
deserialize in class AMFDatadata - binary data
public void deserialize(java.nio.ByteBuffer data,
AMFDataContextDeserialize context)
AMFData
deserialize in class AMFDatadata - binary datacontext - deserialization context used by AMF3public AMFData get(int index)
index - index
public AMFData get(String name)
name - key
public boolean getBoolean(int index)
index - index
public boolean getBoolean(String name)
name - key
public byte getByte(int index)
index - index
public byte getByte(String name)
name - key
public String getClassName()
public java.util.Date getDate(int index)
index - index
public java.util.Date getDate(String name)
name - key
public double getDouble(int index)
index - index
public double getDouble(String name)
name - key
public float getFloat(int index)
index - index
public float getFloat(String name)
name - key
public int getInt(int index)
index - index
public int getInt(String name)
name - key
public String getKey(int index)
index -
public java.util.List getKeys()
public long getLong(int index)
index - index
public long getLong(String name)
name - key
public AMFDataObj getObject(int index)
index - index
public AMFDataObj getObject(String name)
name - key
public short getShort(int index)
index - index
public short getShort(String name)
name - key
public String getString(int index)
index - index
public String getString(String name)
name - key
public AMFDataTrait getTrait()
public Object getValue()
AMFData
getValue in class AMFData
public void put(String name,
AMFData data)
name - keydata - object
public void put(String name,
boolean data)
name - keydata - boolean value
public void put(String name,
java.util.Date data)
name - keydata - date value
public void put(String name,
double data)
name - keydata - double value
public void put(String name,
int data)
name - keydata - int value
public void put(String name,
long data)
name - keydata - long value
public void put(String name,
String data)
name - keydata - string valuepublic AMFData remove(int index)
index - index
public AMFData remove(String name)
name - key
public byte[] serialize()
AMFData
serialize in class AMFDatapublic byte[] serialize(AMFDataContextSerialize context)
AMFData
serialize in class AMFDatacontext - serialization context used by AMF3
public void serialize(java.io.DataOutputStream out)
AMFData
serialize in class AMFDataout - Output stream
public void serialize(java.io.DataOutputStream out,
AMFDataContextSerialize context)
AMFData
serialize in class AMFDataout - Output streamcontext - serialization context used by AMF3
public void serialize(java.io.DataOutputStream out,
int objectEncoding)
AMFData
serialize in class AMFDataout - Output streamobjectEncoding - object encoding level (see AMF_LEVEL*)public byte[] serialize(int objectEncoding)
AMFData
serialize in class AMFDataobjectEncoding - object encoding level (see AMF_LEVEL*)
public void setClassName(String className)
public int size()
public String toString()
toString in class Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||