com.alibaba.dubbo.common.io.UnsafeByteArrayOutputStream Java Examples

The following examples show how to use com.alibaba.dubbo.common.io.UnsafeByteArrayOutputStream. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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));
}
 
Example #2
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #3
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #4
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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));
}
 
Example #5
Source File: Builder.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public void writeTo(Serializable obj, GenericObjectOutput out) throws IOException
{
	if( obj == null )
	{
		out.write0(OBJECT_NULL);
	}
	else
	{
		out.write0(OBJECT_STREAM);
		UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream();
		CompactedObjectOutputStream oos = new CompactedObjectOutputStream(bos);
		oos.writeObject(obj);
		oos.flush();
		bos.close();
		byte[] b = bos.toByteArray();
		out.writeUInt(b.length);
		out.write0(b, 0, b.length);
	}
}
 
Example #6
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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());
}
 
Example #7
Source File: Builder.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@Override
public void writeTo(Serializable obj, GenericObjectOutput out) throws IOException
{
	if( obj == null )
	{
		out.write0(OBJECT_NULL);
	}
	else
	{
		out.write0(OBJECT_STREAM);
		UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream();
		CompactedObjectOutputStream oos = new CompactedObjectOutputStream(bos);
		oos.writeObject(obj);
		oos.flush();
		bos.close();
		byte[] b = bos.toByteArray();
		out.writeUInt(b.length);
		out.write0(b, 0, b.length);
	}
}
 
Example #8
Source File: BuilderTest.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@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());
}
 
Example #9
Source File: BuilderTest.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@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));
}
 
Example #10
Source File: BuilderTest.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #11
Source File: BuilderTest.java    From dubbox-hystrix with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #12
Source File: BuilderTest.java    From dubbo3 with Apache License 2.0 6 votes vote down vote up
@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());
}
 
Example #13
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #14
Source File: BuilderTest.java    From dubbo3 with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #15
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #16
Source File: Builder.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public void writeTo(Serializable obj, GenericObjectOutput out) throws IOException
{
	if( obj == null )
	{
		out.write0(OBJECT_NULL);
	}
	else
	{
		out.write0(OBJECT_STREAM);
		UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream();
		CompactedObjectOutputStream oos = new CompactedObjectOutputStream(bos);
		oos.writeObject(obj);
		oos.flush();
		bos.close();
		byte[] b = bos.toByteArray();
		out.writeUInt(b.length);
		out.write0(b, 0, b.length);
	}
}
 
Example #17
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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());
}
 
Example #18
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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));
}
 
Example #19
Source File: BuilderTest.java    From dubbo3 with Apache License 2.0 6 votes vote down vote up
@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));
}
 
Example #20
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #21
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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");
}
 
Example #22
Source File: Builder.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@Override
public void writeTo(Serializable obj, GenericObjectOutput out) throws IOException
{
	if( obj == null )
	{
		out.write0(OBJECT_NULL);
	}
	else
	{
		out.write0(OBJECT_STREAM);
		UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream();
		CompactedObjectOutputStream oos = new CompactedObjectOutputStream(bos);
		oos.writeObject(obj);
		oos.flush();
		bos.close();
		byte[] b = bos.toByteArray();
		out.writeUInt(b.length);
		out.write0(b, 0, b.length);
	}
}
 
Example #23
Source File: BuilderTest.java    From dubbox with Apache License 2.0 6 votes vote down vote up
@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());
}
 
Example #24
Source File: Builder.java    From dubbo3 with Apache License 2.0 6 votes vote down vote up
@Override
public void writeTo(Serializable obj, GenericObjectOutput out) throws IOException {
    if (obj == null) {
        out.write0(OBJECT_NULL);
    } else {
        out.write0(OBJECT_STREAM);
        UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream();
        CompactedObjectOutputStream oos = new CompactedObjectOutputStream(bos);
        oos.writeObject(obj);
        oos.flush();
        bos.close();
        byte[] b = bos.toByteArray();
        out.writeUInt(b.length);
        out.write0(b, 0, b.length);
    }
}
 
Example #25
Source File: BuilderTest.java    From dubbo3 with Apache License 2.0 5 votes vote down vote up
@Test
@SuppressWarnings("unchecked")
public void testSerializableBean() throws Exception
{
	System.out.println("testSerializableBean");
	UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();

	SerializableBean sb = new SerializableBean();
	Builder<SerializableBean> sbb = Builder.register(SerializableBean.class);
	sbb.writeTo(sb, os);

	byte[] b = os.toByteArray();
	System.out.println(b.length+":"+Bytes.bytes2hex(b));
	assertEquals(sbb.parseFrom(os.toByteArray()), sb);
}
 
Example #26
Source File: BuilderTest.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Test
public void testEnumBuilder() throws Exception
{
	Builder<Type> builder = Builder.register(Type.class);
	UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
	Type v = Type.High;
	builder.writeTo(v, os);
	byte[] b = os.toByteArray();
	System.out.println(b.length+":"+Bytes.bytes2hex(b));
	v = builder.parseFrom(b);
}
 
Example #27
Source File: BuilderTest.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Test
public void testThrowableBuilder() throws Exception
{
	Builder<Throwable> builder = Builder.register(Throwable.class);
	Throwable th = new Throwable();
	UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
	builder.writeTo(th, os);
	byte[] b = os.toByteArray();
	System.out.println(b.length+":"+Bytes.bytes2hex(b));

	th = builder.parseFrom(b);
}
 
Example #28
Source File: BuilderTest.java    From dubbox with Apache License 2.0 5 votes vote down vote up
@Test
public void testObjectBuilder() throws Exception
{
	UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
	Builder<Bean> BeanBuilder = Builder.register(Bean.class);

	Bean bean = new Bean();
	bean.name = "ql";
	bean.type = Type.High;
	bean.types = new Type[]{ Type.High, Type.High };
	BeanBuilder.writeTo(bean, os);

	byte[] b = os.toByteArray();
	System.out.println(b.length+":"+Bytes.bytes2hex(b));

	bean = BeanBuilder.parseFrom(b);
	assertNull(bean.time);
	assertEquals(bean.i, 123123);
	assertEquals(bean.ni, -12344);
	assertEquals(bean.d, 12.345);
	assertEquals(bean.nd, -12.345);
	assertEquals(bean.l, 1281447759383l);
	assertEquals(bean.nl, -13445l);
	assertEquals(bean.vl, 100l);
	assertEquals(bean.type, Type.High);
	assertEquals(bean.types.length, 2);
	assertEquals(bean.types[0], Type.High);
	assertEquals(bean.types[1], Type.High);
	assertEquals(bean.list.size(), 3);
	assertEquals(bean.list.get(0), 1);
	assertEquals(bean.list.get(1), 2);
	assertEquals(bean.list.get(2), 1308147);
}
 
Example #29
Source File: ExchangeCodecTest.java    From dubbox with Apache License 2.0 5 votes vote down vote up
private byte[] getRequestBytes(Object obj, byte[] header) throws IOException{
    // encode request data.
    UnsafeByteArrayOutputStream bos = new UnsafeByteArrayOutputStream(1024);
    ObjectOutput out = serialization.serialize(url, bos);
    out.writeObject(obj);
    
    out.flushBuffer();
    bos.flush();
    bos.close();
    byte[] data = bos.toByteArray();
    byte[] len = Bytes.int2bytes(data.length);
    System.arraycopy(len, 0, header, 12, 4);
    byte[] request = join(header, data);
    return request;
}
 
Example #30
Source File: DataInputOutputTest.java    From dubbox with Apache License 2.0 5 votes vote down vote up
public void testMain() throws Exception
{
	// write.
	UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream();
	DataOutput cos = new GenericDataOutput(os);
	writeTest(cos);

	// read.
	byte[] b = os.toByteArray();
	DataInput cis = new GenericDataInput(new UnsafeByteArrayInputStream(b));
	readTest(cis);
}