Mercurial > hg > Members > kazuma > jungle-ormapper
view src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/trasnformer/DeleteAttribute.java @ 0:44465893e8b8
first Commit
author | Kazuma |
---|---|
date | Wed, 30 Nov 2016 01:47:55 +0900 |
parents | |
children |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.jungle.store.trasnformer; import jp.ac.u_ryukyu.ie.cr.jungle.util.Error; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.logger.LoggingNode; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.logger.OperationLog; import jp.ac.u_ryukyu.ie.cr.jungle.util.DefaultEither; import jp.ac.u_ryukyu.ie.cr.jungle.util.Either; public class DeleteAttribute implements NodeEditor { private final String key; public DeleteAttribute(String _key) { key = _key; } public Either<Error,LoggingNode> _edit(LoggingNode logNode) { Either<jp.ac.u_ryukyu.ie.cr.jungle.util.Error,LoggingNode> either = logNode.getAttributes().delete(key); 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); } }