Mercurial > hg > Members > kazuma > jungle-ormapper
diff src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/operations/PutAttributeOperation.java @ 0:44465893e8b8
first Commit
author | Kazuma |
---|---|
date | Wed, 30 Nov 2016 01:47:55 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/store/operations/PutAttributeOperation.java Wed Nov 30 01:47:55 2016 +0900 @@ -0,0 +1,50 @@ +package jp.ac.u_ryukyu.ie.cr.jungle.store.operations; + +import java.nio.ByteBuffer; + +import jp.ac.u_ryukyu.ie.cr.jungle.util.Either; +import jp.ac.u_ryukyu.ie.cr.jungle.store.Command; +import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.TreeNode; +import jp.ac.u_ryukyu.ie.cr.jungle.util.Error; + + +public class PutAttributeOperation implements NodeOperation +{ + private final String key; + private final ByteBuffer value; + + public PutAttributeOperation(String _key,ByteBuffer _value) + { + key = _key; + value = _value; + } + + @Override + public Command getCommand() + { + return Command.PUT_ATTRIBUTE; + } + + @Override + public Either<Error,TreeNode> invoke(TreeNode _target) + { + return _target.getAttributes().put(key,value); + } + @Override + public int getPosition() + { + return -1; + } + + @Override + public String getKey() + { + return key; + } + + @Override + public ByteBuffer getValue() + { + return value; + } +} \ No newline at end of file