Mercurial > hg > Members > nobuyasu > jungle-network
view src/alice/jungle/operations/NetworkPutAttributeOperation.java @ 83:b3ccefdf2b43
Added PersistentExample
author | one |
---|---|
date | Fri, 25 Oct 2013 18:44:29 +0900 |
parents | 0055d917c796 |
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; } }