annotate src/alice/test/topology/fishmodel/beta/CheckMyName.java @ 111:ba64a9d76e70 working

Add AutoIncrement
author sugi
date Tue, 17 Jul 2012 17:23:55 +0900
parents aa9fc077c286
children 912aed91d05b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
1 package alice.test.topology.fishmodel.beta;
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
2
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
3 import java.util.regex.Matcher;
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
4 import java.util.regex.Pattern;
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
5
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
6 import alice.codesegment.CodeSegment;
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
7 import alice.datasegment.CommandType;
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
8 import alice.datasegment.Receiver;
111
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
9 import alice.test.topology.fishmodel.alpha.AutoIncrement;
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
10 import alice.test.topology.fishmodel.alpha.SetLocation;
109
96674c803853 set background
sugi
parents: 107
diff changeset
11 import alice.test.topology.fishmodel.alpha.FishPoint;
96674c803853 set background
sugi
parents: 107
diff changeset
12 import alice.test.topology.fishmodel.alpha.MakeFrame;
96674c803853 set background
sugi
parents: 107
diff changeset
13 import alice.test.topology.fishmodel.alpha.MakeObject;
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
14
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
15
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
16 public class CheckMyName extends CodeSegment {
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
17 Receiver host = ids.create(CommandType.PEEK);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
18 Pattern pattern = Pattern.compile("^(node|cli)([0-9]+)$");
109
96674c803853 set background
sugi
parents: 107
diff changeset
19 String key = "fish";
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
20
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
21 @Override
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
22 public void run(){
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
23
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
24 String name = host.asString();
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
25 Matcher matcher = pattern.matcher(name);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
26
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
27 matcher.find();
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
28 String type = matcher.group(1);
110
aa9fc077c286 remove host from checkFishLocation
sugi
parents: 109
diff changeset
29 int num = new Integer(matcher.group(2));
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
30
111
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
31 MakeFrame frame = new MakeFrame(name);
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
32 RoutingTable routing = new RoutingTable();
111
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
33
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
34
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
35
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
36 if (type.equals("cli")){
110
aa9fc077c286 remove host from checkFishLocation
sugi
parents: 109
diff changeset
37 System.out.println("cli"+num);
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
38 routing.table.add(new Routing("parent"));
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
39 ods.put("local", "list", routing);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
40
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
41 new AddRoutingTable(routing,0);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
42 ods.put("parent", "member", name);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
43
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
44 }else if (type.equals("node")){
110
aa9fc077c286 remove host from checkFishLocation
sugi
parents: 109
diff changeset
45 System.out.println("node"+num);
aa9fc077c286 remove host from checkFishLocation
sugi
parents: 109
diff changeset
46 if (num != 0){
109
96674c803853 set background
sugi
parents: 107
diff changeset
47 routing.table.add(new Routing("parent"));
96674c803853 set background
sugi
parents: 107
diff changeset
48 ods.put("parent", "member", name);
96674c803853 set background
sugi
parents: 107
diff changeset
49
96674c803853 set background
sugi
parents: 107
diff changeset
50 }
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
51 ods.put("local", "list", routing);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
52 new AddRoutingTable(routing,0);
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
53
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
54 }
109
96674c803853 set background
sugi
parents: 107
diff changeset
55
111
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
56 ods.update("local", key, new FishPoint(0.0f,0.0f));
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
57 new SetLocation(new MakeObject(frame),key,0,num);
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
58 new CheckLocalIndex(key,1);
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
59 key = "fish1";
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
60 if (num == 0) new AutoIncrement(key,0);
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
61 ods.update("local", key, new FishPoint(0.0f,0.0f));
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
62 new SetLocation(new MakeObject(frame),key,0,num);
ba64a9d76e70 Add AutoIncrement
sugi
parents: 110
diff changeset
63 new CheckLocalIndex(key,1);
109
96674c803853 set background
sugi
parents: 107
diff changeset
64
107
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
65 }
a8f77957a477 create new model to share fish point
sugi
parents:
diff changeset
66 }