annotate tools/python-PE/CompactRouting/ant_mesh10.py @ 8:6c40056777be

Initial revision
author fuchita
date Sat, 16 Feb 2008 13:18:02 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
6c40056777be Initial revision
fuchita
parents:
diff changeset
1 import re
6c40056777be Initial revision
fuchita
parents:
diff changeset
2 import sys
6c40056777be Initial revision
fuchita
parents:
diff changeset
3 import string
6c40056777be Initial revision
fuchita
parents:
diff changeset
4 import time
6c40056777be Initial revision
fuchita
parents:
diff changeset
5
6c40056777be Initial revision
fuchita
parents:
diff changeset
6 sys.path.append('../modules')
6c40056777be Initial revision
fuchita
parents:
diff changeset
7
6c40056777be Initial revision
fuchita
parents:
diff changeset
8 import FederatedLinda
6c40056777be Initial revision
fuchita
parents:
diff changeset
9
6c40056777be Initial revision
fuchita
parents:
diff changeset
10 ROUTING_HEADER_FORMAT = "!I"
6c40056777be Initial revision
fuchita
parents:
diff changeset
11 TUPLE_ID_LINKCONFIG = 1
6c40056777be Initial revision
fuchita
parents:
diff changeset
12 TUPLE_ID_ROUTING = 2
6c40056777be Initial revision
fuchita
parents:
diff changeset
13
6c40056777be Initial revision
fuchita
parents:
diff changeset
14 ROUTING_COMMAND_CONNECT = 1
6c40056777be Initial revision
fuchita
parents:
diff changeset
15 ROUTING_COMMAND_DISCONNECT = 2
6c40056777be Initial revision
fuchita
parents:
diff changeset
16 ROUTING_COMMAND_TRANSFER = 3
6c40056777be Initial revision
fuchita
parents:
diff changeset
17 ROUTING_COMMAND_UPDATE_TABLE = 4
6c40056777be Initial revision
fuchita
parents:
diff changeset
18
6c40056777be Initial revision
fuchita
parents:
diff changeset
19 testxml = \
6c40056777be Initial revision
fuchita
parents:
diff changeset
20 """<graph name = "Graf">
6c40056777be Initial revision
fuchita
parents:
diff changeset
21 <node label = "Node000" tsid = "ant001.cs.ie.u-ryukyu.ac.jp:10000">
6c40056777be Initial revision
fuchita
parents:
diff changeset
22 <destination label = "Node002"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
23 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
24 <node label = "Node009" tsid = "ant015.cs.ie.u-ryukyu.ac.jp:10009">
6c40056777be Initial revision
fuchita
parents:
diff changeset
25 <destination label = "Node005"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
26 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
27 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
28 <node label = "Node008" tsid = "ant014.cs.ie.u-ryukyu.ac.jp:10008">
6c40056777be Initial revision
fuchita
parents:
diff changeset
29 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
30 <destination label = "Node009"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
31 <destination label = "Node004"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
32 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
33 <node label = "Node007" tsid = "ant013.cs.ie.u-ryukyu.ac.jp:10007">
6c40056777be Initial revision
fuchita
parents:
diff changeset
34 <destination label = "Node006"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
35 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
36 <destination label = "Node003"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
37 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
38 <node label = "Node006" tsid = "ant012.cs.ie.u-ryukyu.ac.jp:10006">
6c40056777be Initial revision
fuchita
parents:
diff changeset
39 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
40 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
41 <node label = "Node005" tsid = "ant011.cs.ie.u-ryukyu.ac.jp:10005">
6c40056777be Initial revision
fuchita
parents:
diff changeset
42 <destination label = "Node002"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
43 <destination label = "Node009"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
44 <destination label = "Node004"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
45 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
46 <node label = "Node004" tsid = "ant005.cs.ie.u-ryukyu.ac.jp:10004">
6c40056777be Initial revision
fuchita
parents:
diff changeset
47 <destination label = "Node001"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
48 <destination label = "Node003"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
49 <destination label = "Node005"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
50 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
51 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
52 <node label = "Node003" tsid = "ant004.cs.ie.u-ryukyu.ac.jp:10003">
6c40056777be Initial revision
fuchita
parents:
diff changeset
53 <destination label = "Node004"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
54 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
55 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
56 <node label = "Node002" tsid = "ant003.cs.ie.u-ryukyu.ac.jp:10002">
6c40056777be Initial revision
fuchita
parents:
diff changeset
57 <destination label = "Node005"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
58 <destination label = "Node000"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
59 <destination label = "Node001"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
60 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
61 <node label = "Node001" tsid = "ant002.cs.ie.u-ryukyu.ac.jp:10001">
6c40056777be Initial revision
fuchita
parents:
diff changeset
62 <destination label = "Node004"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
63 <destination label = "Node002"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
64 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
65 </graph>
6c40056777be Initial revision
fuchita
parents:
diff changeset
66 """
6c40056777be Initial revision
fuchita
parents:
diff changeset
67 def getFirstTsid(xmltext):
6c40056777be Initial revision
fuchita
parents:
diff changeset
68 p = re.compile('(?<=tsid = \").*(?=\")')
6c40056777be Initial revision
fuchita
parents:
diff changeset
69 m = p.findall(xmltext)
6c40056777be Initial revision
fuchita
parents:
diff changeset
70 return m[0]
6c40056777be Initial revision
fuchita
parents:
diff changeset
71
6c40056777be Initial revision
fuchita
parents:
diff changeset
72
6c40056777be Initial revision
fuchita
parents:
diff changeset
73
6c40056777be Initial revision
fuchita
parents:
diff changeset
74 if __name__ == "__main__":
6c40056777be Initial revision
fuchita
parents:
diff changeset
75
6c40056777be Initial revision
fuchita
parents:
diff changeset
76 if (len(sys.argv) == 2):
6c40056777be Initial revision
fuchita
parents:
diff changeset
77 print " : %s <xmlfilename>" % sys.argv[0]
6c40056777be Initial revision
fuchita
parents:
diff changeset
78 xmltext = open(sys.argv[1]).read()
6c40056777be Initial revision
fuchita
parents:
diff changeset
79 if xmltext is None:
6c40056777be Initial revision
fuchita
parents:
diff changeset
80 sys.exit(1)
6c40056777be Initial revision
fuchita
parents:
diff changeset
81 else:
6c40056777be Initial revision
fuchita
parents:
diff changeset
82 xmltext = testxml
6c40056777be Initial revision
fuchita
parents:
diff changeset
83
6c40056777be Initial revision
fuchita
parents:
diff changeset
84 start = time.time()
6c40056777be Initial revision
fuchita
parents:
diff changeset
85 print "start time ",start
6c40056777be Initial revision
fuchita
parents:
diff changeset
86
6c40056777be Initial revision
fuchita
parents:
diff changeset
87 firsttsid = getFirstTsid(xmltext)
6c40056777be Initial revision
fuchita
parents:
diff changeset
88
6c40056777be Initial revision
fuchita
parents:
diff changeset
89 flinda = FederatedLinda.FederatedLinda()
6c40056777be Initial revision
fuchita
parents:
diff changeset
90
6c40056777be Initial revision
fuchita
parents:
diff changeset
91 host, portnum = string.split(firsttsid,':')
6c40056777be Initial revision
fuchita
parents:
diff changeset
92
6c40056777be Initial revision
fuchita
parents:
diff changeset
93 linda1 = flinda.open(host, int(portnum))
6c40056777be Initial revision
fuchita
parents:
diff changeset
94 linda1.Out(TUPLE_ID_LINKCONFIG, testxml)
6c40056777be Initial revision
fuchita
parents:
diff changeset
95 flinda.sync()
6c40056777be Initial revision
fuchita
parents:
diff changeset
96
6c40056777be Initial revision
fuchita
parents:
diff changeset
97
6c40056777be Initial revision
fuchita
parents:
diff changeset
98