• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Serializer类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.red5.io.object.Serializer的典型用法代码示例。如果您正苦于以下问题:Java Serializer类的具体用法?Java Serializer怎么用?Java Serializer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Serializer类属于org.red5.io.object包,在下文中一共展示了Serializer类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: writeArray

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeArray(Collection<?> array) {
	writeAMF3();
	buf.put(AMF3.TYPE_ARRAY);
	if (hasReference(array)) {
		putInteger(getReferenceId(array) << 1);
		return;
	}
	storeReference(array);
	amf3_mode += 1;
	int count = array.size();
	putInteger(count << 1 | 1);
	putString("");
	for (Object item : array) {
		Serializer.serialize(this, item);
	}
	amf3_mode -= 1;
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:19,代码来源:Output.java


示例2: writeMap

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeMap(Collection<?> array) {
	writeAMF3();
	buf.put(AMF3.TYPE_ARRAY);
	if (hasReference(array)) {
		putInteger(getReferenceId(array) << 1);
		return;
	}
	storeReference(array);
	// TODO: we could optimize this by storing the first integer
	//       keys after the key-value pairs
	amf3_mode += 1;
	putInteger(1);
	int idx = 0;
	for (Object item : array) {
		if (item != null) {
			putString(String.valueOf(idx));
			Serializer.serialize(this, item);
		}
		idx++;
	}
	amf3_mode -= 1;
	putString("");
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:25,代码来源:Output.java


示例3: writeObject

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void writeObject(Map<Object, Object> map) {
	log.debug("writeObject: {}", map);
	writeAMF3();
	buf.put(AMF3.TYPE_OBJECT);
	if (hasReference(map)) {
		putInteger(getReferenceId(map) << 1);
		return;
	}
	storeReference(map);
	// we have an inline class that is not a reference, store the properties using key/value pairs
	int type = AMF3.TYPE_OBJECT_VALUE << 2 | 1 << 1 | 1;
	putInteger(type);
	// no classname
	putString("");
	// store key/value pairs
	amf3_mode += 1;
	for (Map.Entry<Object, Object> entry : map.entrySet()) {
		putString(entry.getKey().toString());
		Serializer.serialize(this, entry.getValue());
	}
	amf3_mode -= 1;
	// end of object marker
	putString("");
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:27,代码来源:Output.java


示例4: writeVectorObject

import org.red5.io.object.Serializer; //导入依赖的package包/类
/**
 * Write a Vector&lt;Object&gt;.
 * 
 * @param vector vector
 */
@Override
public void writeVectorObject(Vector<Object> vector) {
	log.debug("writeVectorObject: {}", vector);
	buf.put(AMF3.TYPE_VECTOR_OBJECT);
	if (hasReference(vector)) {
		putInteger(getReferenceId(vector) << 1);
		return;
	}
	storeReference(vector);
	putInteger(vector.size() << 1 | 1);
	putInteger(0);
	buf.put((byte) 0x01);
	for (Object v : vector) {
		Serializer.serialize(this, v);
	}
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:22,代码来源:Output.java


示例5: writeArray

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeArray(Object[] array) {
	log.debug("writeArray - array: {}", array);
	if (array != null) {
		if (checkWriteReference(array)) {
			return;
		}
		storeReference(array);
		buf.put(AMF.TYPE_ARRAY);
		buf.putInt(array.length);
		for (Object item : array) {
			Serializer.serialize(this, item);
		}
	} else {
		writeNull();
	}
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:18,代码来源:Output.java


示例6: writeMap

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeMap(Collection<?> array) {
	if (checkWriteReference(array)) {
		return;
	}
	storeReference(array);
	buf.put(AMF.TYPE_MIXED_ARRAY);
	buf.putInt(array.size() + 1);
	int idx = 0;
	for (Object item : array) {
		if (item != null) {
			putString(String.valueOf(idx++));
			Serializer.serialize(this, item);
		} else {
			idx++;
		}
	}
	putString("length");
	Serializer.serialize(this, array.size() + 1);
	buf.put((byte) 0x00);
	buf.put((byte) 0x00);
	buf.put(AMF.TYPE_END_OF_OBJECT);
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:24,代码来源:Output.java


示例7: writeRecordSet

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeRecordSet(RecordSet recordset) {
	if (checkWriteReference(recordset)) {
		return;
	}
	storeReference(recordset);
	// Write out start of object marker
	buf.put(AMF.TYPE_CLASS_OBJECT);
	putString("RecordSet");
	// Serialize
	Map<String, Object> info = recordset.serialize();
	// Write out serverInfo key
	putString("serverInfo");
	// Serialize
	Serializer.serialize(this, info);
	// Write out end of object marker
	buf.put((byte) 0x00);
	buf.put((byte) 0x00);
	buf.put(AMF.TYPE_END_OF_OBJECT);
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:21,代码来源:Output.java


示例8: serializeField

import org.red5.io.object.Serializer; //导入依赖的package包/类
@SuppressWarnings("unchecked")
protected boolean serializeField(Class<?> objectClass, String keyName, Field field, Method getter) {
	// to prevent, NullPointerExceptions, get the element first and check if it's null
	Element element = getSerializeCache().get(objectClass);
	Map<String, Boolean> serializeMap = (element == null ? null : (Map<String, Boolean>) element.getObjectValue());
	if (serializeMap == null) {
		serializeMap = new HashMap<String, Boolean>();
		getSerializeCache().put(new Element(objectClass, serializeMap));
	}
	boolean serialize;
	if (getSerializeCache().isKeyInCache(keyName)) {
		serialize = serializeMap.get(keyName);
	} else {
		serialize = Serializer.serializeField(keyName, field, getter);
		serializeMap.put(keyName, serialize);
	}
	return serialize;
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:19,代码来源:Output.java


示例9: writeObject

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
public void writeObject(Map<Object, Object> map) {
	if (checkWriteReference(map)) {
		return;
	}
	storeReference(map);
	buf.put(AMF.TYPE_OBJECT);
	boolean isBeanMap = (map instanceof BeanMap);
	for (Map.Entry<Object, Object> entry : map.entrySet()) {
		if (isBeanMap && "class".equals(entry.getKey())) {
			continue;
		}
		putString(entry.getKey().toString());
		Serializer.serialize(this, entry.getValue());
	}
	buf.put((byte) 0x00);
	buf.put((byte) 0x00);
	buf.put(AMF.TYPE_END_OF_OBJECT);
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:20,代码来源:Output.java


示例10: testByteArray

import org.red5.io.object.Serializer; //导入依赖的package包/类
@Test
public void testByteArray() {
	log.debug("Testing ByteArray");
	// just some ones and such
	ByteArray baIn = new ByteArray();
	baIn.writeBytes(new byte[] { (byte) 0, (byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42,
			(byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42, (byte) 0x1, (byte) 0x42, (byte) 0x99 });
	Serializer.serialize(out, baIn);
	dumpOutput();
	ByteArray baOut = Deserializer.deserialize(in, ByteArray.class);
	assertNotNull(baOut);
	assertEquals(baIn.length(), baOut.length());
	for (int i = 0; i < baOut.length(); i++) {
		System.err.println("Byte: " + baOut.readByte());
	}
	resetOutput();
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:18,代码来源:AMF3IOTest.java


示例11: testVectorRoundTrip

import org.red5.io.object.Serializer; //导入依赖的package包/类
@Test
public void testVectorRoundTrip() {
	log.debug("Testing Vector on a round trip");
	Vector<String> vIn = new Vector<String>();
	vIn.add("This is my vector and her name is Sally");
	Serializer.serialize(out, vIn);
	dumpOutput();
	// test fails without enforcing amf3 here
	((org.red5.io.amf3.Input) in).enforceAMF3();
	Vector<String> vOut = Deserializer.deserialize(in, Vector.class);
	assertNotNull(vOut);
	assertEquals(vIn.size(), vOut.size());
	for (int i = 0; i < vOut.size(); i++) {
		System.err.println("Element: " + vOut.elementAt(i));
	}
	resetOutput();
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:18,代码来源:AMF3IOTest.java


示例12: testList

import org.red5.io.object.Serializer; //导入依赖的package包/类
@Test
public void testList() {
	log.debug("Testing list");
	List<Comparable<?>> listIn = new LinkedList<Comparable<?>>();
	listIn.add(null);
	listIn.add(Boolean.FALSE);
	listIn.add(Boolean.TRUE);
	listIn.add(Integer.valueOf(1));
	listIn.add("This is a test string");
	listIn.add(new Date());
	Serializer.serialize(out, listIn);
	dumpOutput();
	List<?> listOut = Deserializer.deserialize(in, List.class);
	assertNotNull(listOut);
	assertEquals(listIn.size(), listOut.size());
	for (int i = 0; i < listIn.size(); i++) {
		assertEquals(listOut.get(i), listIn.get(i));
	}
	resetOutput();
}
 
开发者ID:Kyunghwa-Yoo,项目名称:StitchRTSP,代码行数:21,代码来源:AbstractIOTest.java


示例13: serialize

import org.red5.io.object.Serializer; //导入依赖的package包/类
public void serialize(Output output) {
    output.putString("level");
    output.writeString(getLevel());
    output.putString("code");
    output.writeString(getCode());
    output.putString("description");
    output.writeString(getDescription());
    if (application != null) {
        output.putString("application");
        Serializer.serialize(output, application);
    }
    if (additional != null) {
        // Add additional parameters
        for (Map.Entry<String, Object> entry : additional.entrySet()) {
            output.putString(entry.getKey());
            Serializer.serialize(output, entry.getValue());
        }
    }
}
 
开发者ID:Red5,项目名称:red5-server-common,代码行数:20,代码来源:StatusObject.java


示例14: writeArray

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void writeArray(Collection<?> array) {
    writeAMF3();
    buf.put(AMF3.TYPE_ARRAY);
    if (hasReference(array)) {
        putInteger(getReferenceId(array) << 1);
        return;
    }
    storeReference(array);
    amf3_mode += 1;
    int count = array.size();
    putInteger(count << 1 | 1);
    putString("");
    for (Object item : array) {
        Serializer.serialize(this, item);
    }
    amf3_mode -= 1;
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:20,代码来源:Output.java


示例15: writePrimitiveArrayFallback

import org.red5.io.object.Serializer; //导入依赖的package包/类
/**
 * Use the general ARRAY type, writing the primitive array as an array of objects (the boxed primitives) instead.
 */
private void writePrimitiveArrayFallback(Object array) {
    writeAMF3();
    buf.put(AMF3.TYPE_ARRAY);
    
    if (hasReference(array)) {
        putInteger(getReferenceId(array) << 1);
        return;
    }
    storeReference(array);
    
    amf3_mode += 1;
    int count = Array.getLength(array);
    putInteger(count << 1 | 1);
    putString("");
    for (int i = 0; i < count; i++) {
        Serializer.serialize(this, Array.get(array, i));
    }
    amf3_mode -= 1;
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:23,代码来源:Output.java


示例16: writeMap

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void writeMap(Collection<?> array) {
    writeAMF3();
    buf.put(AMF3.TYPE_ARRAY);
    if (hasReference(array)) {
        putInteger(getReferenceId(array) << 1);
        return;
    }
    storeReference(array);
    // TODO: we could optimize this by storing the first integer
    //       keys after the key-value pairs
    amf3_mode += 1;
    putInteger(1);
    int idx = 0;
    for (Object item : array) {
        if (item != null) {
            putString(String.valueOf(idx));
            Serializer.serialize(this, item);
        }
        idx++;
    }
    amf3_mode -= 1;
    putString("");
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:26,代码来源:Output.java


示例17: writeObject

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void writeObject(Map<Object, Object> map) {
    log.debug("writeObject: {}", map);
    writeAMF3();
    buf.put(AMF3.TYPE_OBJECT);
    if (hasReference(map)) {
        putInteger(getReferenceId(map) << 1);
        return;
    }
    storeReference(map);
    // we have an inline class that is not a reference, store the properties using key/value pairs
    int type = AMF3.TYPE_OBJECT_VALUE << 2 | 1 << 1 | 1;
    putInteger(type);
    // no classname
    putString("");
    // store key/value pairs
    amf3_mode += 1;
    for (Map.Entry<Object, Object> entry : map.entrySet()) {
        putString(entry.getKey().toString());
        Serializer.serialize(this, entry.getValue());
    }
    amf3_mode -= 1;
    // end of object marker
    putString("");
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:27,代码来源:Output.java


示例18: writeVectorObject

import org.red5.io.object.Serializer; //导入依赖的package包/类
/**
 * Write a Vector&lt;Object&gt;.
 * 
 * @param vector
 *            vector
 */
@Override
public void writeVectorObject(Vector<Object> vector) {
    log.debug("writeVectorObject: {}", vector);
    buf.put(AMF3.TYPE_VECTOR_OBJECT);
    if (hasReference(vector)) {
        putInteger(getReferenceId(vector) << 1);
        return;
    }
    storeReference(vector);
    putInteger(vector.size() << 1 | 1);
    putInteger(0);
    buf.put((byte) 0x01);
    for (Object v : vector) {
        Serializer.serialize(this, v);
    }
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:23,代码来源:Output.java


示例19: injectMetaData

import org.red5.io.object.Serializer; //导入依赖的package包/类
/**
 * Injects metadata (Cue Points) into a tag
 * @param cue
 * @param writer
 * @param tag
 * @return ITag tag
 */
private ITag injectMetaData(Object cue, ITag tag) {

	IMetaCue cp = (MetaCue<?, ?>) cue;
	Output out = new Output(IoBuffer.allocate(1000));
	Serializer ser = new Serializer();
	ser.serialize(out,"onCuePoint");
	ser.serialize(out,cp);

	IoBuffer tmpBody = out.buf().flip();
	int tmpBodySize = out.buf().limit();
	int tmpPreviousTagSize = tag.getPreviousTagSize();
	byte tmpDataType = IoConstants.TYPE_METADATA;
	int tmpTimestamp = getTimeInMilliseconds(cp);

	return new Tag(tmpDataType, tmpTimestamp, tmpBodySize, tmpBody, tmpPreviousTagSize);

}
 
开发者ID:cwpenhale,项目名称:red5-mobileconsole,代码行数:25,代码来源:MetaDataInjectionTest.java


示例20: writeArray

import org.red5.io.object.Serializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public void writeArray(Object[] array) {
    log.debug("writeArray - array: {}", array);
    if (array != null) {
        if (!checkWriteReference(array)) {
            storeReference(array);
            buf.put(AMF.TYPE_ARRAY);
            buf.putInt(array.length);
            for (Object item : array) {
                Serializer.serialize(this, item);
            }
        }
    } else {
        writeNull();
    }
}
 
开发者ID:Red5,项目名称:red5-io,代码行数:18,代码来源:Output.java



注:本文中的org.red5.io.object.Serializer类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java SocializeListeners类代码示例发布时间:2022-05-22
下一篇:
Java ClusterIdProtos类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap