Mercurial > hg > Database > jungle-network
view src/main/java/alice/jungle/operations/NetworkAppendChildAtOperation.java @ 105:f9e29a52efd3
Move some files
author | one |
---|---|
date | Tue, 26 Nov 2013 06:43:10 +0900 |
parents | src/alice/jungle/operations/NetworkAppendChildAtOperation.java@0055d917c796 |
children | 6f104ab4eb81 |
line wrap: on
line source
package alice.jungle.operations; import java.nio.ByteBuffer; 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.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; import alice.jungle.datasegment.transformer.NetworkAppendChildAt; import org.msgpack.annotation.Message; @Message public class NetworkAppendChildAtOperation implements NodeOperation { /* MessagePack cannot handle final.*/ // private final int pos; private int pos; /* Position -1 represent root position. */ public NetworkAppendChildAtOperation() { pos = -2; } public NetworkAppendChildAtOperation(int _pos) { pos = _pos; } @Override public Command getCommand() { return Command.APPEND_CHILD; } @Override public <T extends EditableNode<T>> Either<Error, T> invoke(T _target) { NetworkAppendChildAt appendChildAt = new NetworkAppendChildAt(pos); return appendChildAt.edit(_target); } @Override public int getPosition() { return pos; } @Override public String getKey() { return null; } @Override public ByteBuffer getValue() { return null; } }