diff src/main/java/alice/datasegment/ReceiveRemoteData.java @ 345:8f71c3e6f11d

Change directory structure Maven standard
author sugi
date Wed, 16 Apr 2014 18:26:07 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/alice/datasegment/ReceiveRemoteData.java	Wed Apr 16 18:26:07 2014 +0900
@@ -0,0 +1,69 @@
+package alice.datasegment;
+
+import java.io.IOException;
+
+import org.msgpack.type.ArrayValue;
+import org.msgpack.type.Value;
+import org.msgpack.type.ValueType;
+
+import alice.codesegment.SingletonMessage;
+
+public class ReceiveRemoteData implements ReceiverData {
+	public Value val;
+
+	public ReceiveRemoteData() {
+	}
+
+	public ReceiveRemoteData(Value val2) {
+		this.val = val2;
+	}
+
+	public String asString() {
+		if (val.getType() == ValueType.RAW) {
+			return val.asRawValue().getString();
+		}
+		return null;
+	}
+
+	public int asInteger() {
+		if (val.getType() == ValueType.INTEGER) {
+			return val.asIntegerValue().getInt();
+		}
+		return 0;
+	}
+
+	public Float asFloat() {
+		if (val.getType() == ValueType.FLOAT) {
+			return val.asFloatValue().getFloat();
+		}
+		return 0.0f;
+	}
+
+	public ArrayValue asArray(){
+		if (val.getType() == ValueType.ARRAY){
+			return val.asArrayValue();
+		}
+		return null;
+	}
+	
+	public <T> T asClass(Class<T> clazz) {
+		try {
+			return SingletonMessage.getInstance().convert(val, clazz);
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+		return null;
+
+	}
+
+	@Override
+	public Value getVal() {
+		return val;
+	}
+
+	@Override
+	public Object getObj() {
+		return val;
+	}
+	
+}
\ No newline at end of file