Mercurial > hg > Members > nobuyasu > jungle-network
view src/alice/jungle/operations/NetworkPutAttributeOperation.java @ 78:0055d917c796
Modified NetworkNodeOperation
author | one |
---|---|
date | Wed, 16 Oct 2013 17:24:15 +0900 |
parents | 9e3198bf9547 |
children |
line wrap: on
line source
package alice.jungle.operations; import java.nio.ByteBuffer; import org.msgpack.annotation.Message; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.Command; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.NodeOperation; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.PutAttribute; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; @Message public class NetworkPutAttributeOperation implements NodeOperation { /* MessagePack cannot handle final. * * private final String key; * private final ByteBuffer value; */ private String key; private ByteBuffer value; public NetworkPutAttributeOperation() { key = null; value = null; } public NetworkPutAttributeOperation(String _key,ByteBuffer _value) { key = _key; value = _value; } @Override public Command getCommand() { return Command.PUT_ATTRIBUTE; } @Override public <T extends EditableNode<T>> Either<Error, T> invoke(T _target) { PutAttribute putAttribute = new PutAttribute(key,value); return putAttribute.edit(_target); } @Override public int getPosition() { return -1; } @Override public String getKey() { return key; } @Override public ByteBuffer getValue() { return value; } }