Mercurial > hg > Members > tatsuki > bench > jungle-core
annotate src/main/java/jungle/impl/SimpleTreeNode.java @ 7:c3c65308a11b
removed some package and added Graph API
author | shoshi <shoshi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 29 Jun 2012 00:03:12 +0900 |
parents | 761d04aecfcb |
children |
rev | line source |
---|---|
0 | 1 package jungle.impl; |
2 | |
3 import jungle.core.Attributes; | |
4 import jungle.core.Children; | |
5 import jungle.core.Links; | |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
6 import jungle.core.TreeGroup; |
0 | 7 import jungle.core.TreeNode; |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
8 import jungle.core.graph.Graph; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
9 import jungle.core.graph.Vertex; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
10 import jungle.core.graph.Vertexes; |
0 | 11 |
12 public class SimpleTreeNode implements TreeNode | |
13 { | |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
14 private final Graph graph; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
15 private final SimpleTreeGroup group; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
16 private final Vertex vertex; |
0 | 17 |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
18 public SimpleTreeNode(SimpleTreeGroup _group,Vertex _vertex,Graph _graph) |
0 | 19 { |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
20 group = _group; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
21 vertex = _vertex; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
22 graph = _graph; |
0 | 23 |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
24 // initialize vertex |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
25 vertex.createVertexes(Simples.TREENODE_CHILDREN_KEY); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
26 vertex.createVertexes(Simples.TREENODE_LINKS_KEY); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
27 } |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
28 |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
29 public TreeGroup getGroup() |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
30 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
31 return group; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
32 } |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
33 |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
34 public Vertex getVertex() |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
35 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
36 return vertex; |
0 | 37 } |
38 | |
4
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
39 @Override |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
40 public String get(String _key) |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
41 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
42 return vertex.getProperty(_key); |
0 | 43 } |
44 | |
45 @Override | |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
46 public Children children() |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
47 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
48 Vertexes children = vertex.getVertexes(Simples.TREENODE_CHILDREN_KEY); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
49 return new SimpleChildren(group,children,graph); |
0 | 50 } |
51 | |
4
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
52 @Override |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
53 public Links links() |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
54 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
55 Vertexes links = vertex.getVertexes(Simples.TREENODE_LINKS_KEY); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
56 return new SimpleLinks(group,links,graph); |
4
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
57 } |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
58 |
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
59 @Override |
7
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
60 public int hashCode() |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
61 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
62 return vertex.hashCode(); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
63 } |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
64 |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
65 @Override |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
66 public boolean equals(Object _obj) |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
67 { |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
68 if(_obj instanceof SimpleTreeNode){ |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
69 SimpleTreeNode converted = (SimpleTreeNode)_obj; |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
70 if(converted.getGroup() == group){ |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
71 return converted.getVertex().equals(vertex); |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
72 } |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
73 } |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
74 |
c3c65308a11b
removed some package and added Graph API
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
4
diff
changeset
|
75 return false; |
4
761d04aecfcb
added Graph API and some implementation
shoshi <shoshi@cr.ie.u-ryukyu.ac.jp>
parents:
0
diff
changeset
|
76 } |
0 | 77 } |