Mercurial > hg > Members > nobuyasu > jungle-network
view src/alice/jungle/operations/NetworkDeleteChildAtOperation.java @ 77:2dba7e1cf9fa
Added NetworknodeOperation and Test
author | one |
---|---|
date | Tue, 15 Oct 2013 16:01:11 +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.DeleteChildAt; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode; 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 NetworkDeleteChildAtOperation implements NodeOperation { /* MessagePack cannot handle final.*/ //private final int pos; private int pos; /* Position -1 represent root position. */ public NetworkDeleteChildAtOperation(int _pos) { pos = _pos; } @Override public Command getCommand() { return Command.DELETE_CHILD; } @Override public <T extends EditableNode<T>> Either<Error, T> invoke(T _target) { DeleteChildAt deleteChildAt = new DeleteChildAt(pos); return deleteChildAt.edit(_target); } @Override public int getPosition() { return pos; } @Override public String getKey() { return null; } @Override public ByteBuffer getValue() { return null; } }