Mercurial > hg > Members > nobuyasu > jungle-network
view src/main/java/alice/jungle/datasegment/transformer/NetworkAppendChildAt.java @ 191:5d0734fd859d
fix error
author | tatsuki |
---|---|
date | Thu, 15 Jan 2015 09:23:23 +0900 |
parents | 269bada9eedc |
children | 3202a2a427b1 |
line wrap: on
line source
package alice.jungle.datasegment.transformer; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.NodeEditor; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.DefaultEither; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; import org.msgpack.annotation.Message; import fj.data.List; import fj.data.TreeMap; /* * This code same AppendChildAt. */ @Message public class NetworkAppendChildAt implements NodeEditor { private final int pos; public NetworkAppendChildAt(int _pos) { pos = _pos; } public Either<Error, LoggingNode> _edit(LoggingNode _e) { Either<Error,LoggingNode> either = _e.getChildren().addNewChildAt(pos); if(either.isA()){ // error return either; } return DefaultEither.newB(either.b()); } @Override public Either<Error, LoggingNode> edit(TreeNode _e) { LoggingNode logNode = wrap(_e); return _edit(logNode); } public LoggingNode wrap(TreeNode node) { return new LoggingNode(node); } @Override public LoggingNode wrap(TreeNode node, OperationLog op) { return new LoggingNode(node, op); } }