view src/main/java/alice/jungle/datasegment/transformer/NetworkAppendChildAt.java @ 105:f9e29a52efd3

Move some files
author one
date Tue, 26 Nov 2013 06:43:10 +0900
parents src/alice/jungle/datasegment/store/transformer/NetworkAppendChildAt.java@f1aef52c0611
children 6f104ab4eb81
line wrap: on
line source

package alice.jungle.datasegment.transformer;

import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode;
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 org.msgpack.annotation.Message;


/*
 * This code same AppendChildAt. 
 */

@Message
public class NetworkAppendChildAt implements NodeEditor {

	private final int pos;
	
	public NetworkAppendChildAt(int _pos) {
		pos = _pos;
	}

	@Override
	public <T extends EditableNode<T>> Either<Error, T> edit(T _e) {
		Either<Error,T> either = _e.getChildren().addNewChildAt(pos);
		if(either.isA()){
			// error
			return either;
		}
		return DefaultEither.newB(either.b());
	}

}