# HG changeset patch # User one # Date 1372533492 -32400 # Node ID 1abbfc8f11f27047d99e81bb38d106bed0c70964 # Parent 506388c02b4bca82925a8c5d73e92480c445544b add ShowAttribute diff -r 506388c02b4b -r 1abbfc8f11f2 pom.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pom.xml Sun Jun 30 04:18:12 2013 +0900 @@ -0,0 +1,36 @@ + + 4.0.0 + + jungle.test.codesegment.practice + StartJungleCodeSegment + 0.0.1-SNAPSHOT + jar + + jungleAlice + http://maven.apache.org + + + UTF-8 + + + + + com.google.guava + guava + 12.0 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.6 + 1.6 + + + + + diff -r 506388c02b4b -r 1abbfc8f11f2 src/jungle/test/codesegment/practice/ShowAttribute.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/jungle/test/codesegment/practice/ShowAttribute.java Sun Jun 30 04:18:12 2013 +0900 @@ -0,0 +1,58 @@ +package jungle.test.codesegment.practice; + +import java.nio.ByteBuffer; + +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Children; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Node; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; +import alice.codesegment.CodeSegment; +import alice.datasegment.CommandType; +import alice.datasegment.Receiver; + +public class ShowAttribute extends CodeSegment { + + Receiver arg1 = ids.create(CommandType.TAKE); + + public ShowAttribute() { + arg1.setKey("show"); + } + + public void run() { + System.out.println("--ShowAttribute--"); + + Jungle jungle = new JungleManager().getJungle(); + JungleTree tree = jungle.getTreeByName("tree"); + JungleTreeEditor editor = tree.getTreeEditor(); + DefaultNodePath root = new DefaultNodePath(); + Either either = editor.addNewChildAt(root, 0); + if(either.isA()) { + throw new IllegalStateException(); + } + editor = either.b(); + either = editor.putAttribute(root.add(0), "key1", ByteBuffer.wrap("message".getBytes())); + if(either.isA()) { + throw new IllegalStateException(); + } + editor = either.b(); + Either result = editor.success(); + if(result.isA()) { + throw new IllegalStateException(); + } + + Node node = tree.getRootNode(); + Children chs = node.getChildren(); + for(Node n : chs) { + System.out.println(n.getAttributes().get("key1")); + } + + System.exit(0); + + + } + +}