annotate src/ie/oshiro/messagepack/enumpractice/PracticeEnum.java @ 5:6fbdb09fb0e6

add PracticeEnum
author one
date Sun, 09 Jun 2013 23:07:43 +0900
parents a7cd9a10033b
children b82cdd44b1c1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
1 package ie.oshiro.messagepack.enumpractice;
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
2
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
3 import java.io.IOException;
5
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
4 import java.nio.ByteBuffer;
4
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
5
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
6 import org.msgpack.MessagePack;
5
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
7 import org.msgpack.template.OrdinalEnumTemplate;
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
8 import org.msgpack.template.Template;
4
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
9 import org.msgpack.type.Value;
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
10
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
11 public class PracticeEnum {
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
12 public static void main(String[] args) throws IOException {
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
13 MessagePack msgpack = new MessagePack();
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
14 OperationA opA = new OperationA();
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
15 OperationB opB = new OperationB();
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
16 Value vA = msgpack.unconvert(opA);
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
17 Value vB = msgpack.unconvert(opB);
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
18
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
19 OperationA convertedOpA = msgpack.convert(vA, OperationA.class);
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
20 OperationB convertedOpB = msgpack.convert(vB, OperationB.class);
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
21 System.out.println("opA :"+convertedOpA.getCommand());
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
22 System.out.println("opB :"+convertedOpB.getCommand());
5
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
23
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
24 Command c = Command.COMMAND_A;
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
25 Template tmpl = new OrdinalEnumTemplate(c.getClass());
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
26 msgpack.register(c.getClass(), tmpl);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
27 Value cValue = msgpack.unconvert(c);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
28 Command convertedC = msgpack.convert(cValue, Command.class);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
29 System.out.println("convertedC = "+ convertedC);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
30
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
31 ByteBuffer bb = ByteBuffer.allocate(6);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
32 bb.putChar('a');
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
33 bb.putChar('b');
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
34 bb.putChar('c');
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
35 Value bbValue = msgpack.unconvert(bb.array());
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
36 byte[] convertedBB = msgpack.convert(bbValue, byte[].class);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
37 String str = new String(convertedBB);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
38 System.out.println("ByteBuffer : "+str);
6fbdb09fb0e6 add PracticeEnum
one
parents: 4
diff changeset
39
4
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
40 }
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
41
a7cd9a10033b add PracticeEnum
one
parents:
diff changeset
42 }