本文整理汇总了Java中com.alibaba.dubbo.common.serialize.support.dubbo.Builder类的典型用法代码示例。如果您正苦于以下问题:Java Builder类的具体用法?Java Builder怎么用?Java Builder使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Builder类属于com.alibaba.dubbo.common.serialize.support.dubbo包,在下文中一共展示了Builder类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testInterfaceBuilder
import com.alibaba.dubbo.common.serialize.support.dubbo.Builder; //导入依赖的package包/类
@Test
public void testInterfaceBuilder() throws Exception
{
UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
Builder<TestDO> builder = Builder.register(TestDO.class);
TestDO d = new TestDOImpl();
builder.writeTo(d, os);
byte[] b = os.toByteArray();
d = builder.parseFrom(b);
assertTrue(TestDO.class.isAssignableFrom(d.getClass()));
assertEquals("name", d.getName());
assertEquals(28, d.getArg());
assertEquals(Type.High, d.getType());
}
示例2: testObjectArrayBuilder
import com.alibaba.dubbo.common.serialize.support.dubbo.Builder; //导入依赖的package包/类
@Test
public void testObjectArrayBuilder() throws Exception
{
UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
Builder<Object[]> builder = Builder.register(Object[].class);
Object[] obj = new Object[5];
obj[0] = "1234";
obj[1] = new Double(109.23);
obj[2] = "3455";
obj[3] = null;
obj[4] = Boolean.TRUE;
builder.writeTo(obj, os);
byte[] b = os.toByteArray();
System.out.println("Object array:"+b.length+":"+Bytes.bytes2hex(b));
Assert.assertArrayEquals(obj, builder.parseFrom(b));
}
示例3: testBuilder_MyList
import com.alibaba.dubbo.common.serialize.support.dubbo.Builder; //导入依赖的package包/类
@Ignore
@Test
@SuppressWarnings({ "rawtypes", "unchecked" })
public void testBuilder_MyList() throws Exception
{
Builder<MyList> b1 = Builder.register(MyList.class);
MyList list = new MyList();
list.add(new boolean[]{ true,false });
list.add(new int[]{ 1,2,3,4,5 });
list.add("String");
list.add(4);
list.code = 4321;
UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
b1.writeTo(list, os);
byte[] b = os.toByteArray();
System.out.println(b.length+":"+Bytes.bytes2hex(b));
MyList result = b1.parseFrom(b);
assertEquals(4, result.size());
assertEquals(result.code, 4321);
assertEquals(result.id, "feedback");
}
示例4: testBuilder_MyMap
import com.alibaba.dubbo.common.serialize.support.dubbo.Builder; //导入依赖的package包/类
@Test
@SuppressWarnings({ "rawtypes", "unchecked" })
public void testBuilder_MyMap() throws Exception
{
UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
Builder<MyMap> b2 = Builder.register(MyMap.class);
MyMap map = new MyMap();
map.put("name", "qianlei");
map.put("displayName", "钱磊");
map.code = 4321;
b2.writeTo(map, os);
byte[] b = os.toByteArray();
System.out.println(b.length+":"+Bytes.bytes2hex(b));
map = b2.parseFrom(b);
assertEquals(map.size(), 2);
assertEquals(map.code, 4321);
assertEquals(map.id, "feedback");
}
示例5: testBuilderPerm
import com.alibaba.dubbo.common.serialize.support.dubbo.Builder; //导入依赖的package包/类
@Test
public void testBuilderPerm() throws Exception
{
Builder<Bean> bb = Builder.register(Bean.class);
Bean bean = new Bean();
int len = 0;
long now = System.currentTimeMillis();
for(int i=0;i<500;i++)
{
ByteArrayOutputStream os = new ByteArrayOutputStream();
bb.writeTo(bean, os);
os.close();
if( i == 0 )
len = os.toByteArray().length;
ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray());
Bean b = bb.parseFrom(is);
assertEquals(b.getClass(), Bean.class);
}
System.out.println("Builder write and parse 500 times in " + (System.currentTimeMillis()-now)+"ms, size " + len);
}