annotate tools/python-PE/CompactRouting/tree10.py @ 67:264123227f0d

large tuple case (suggestion)
author one
date Sat, 06 Jun 2009 14:33:59 +0900
parents 6c40056777be
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 """
6c40056777be Initial revision
fuchita
parents:
diff changeset
21 <graph name = "Graf">
6c40056777be Initial revision
fuchita
parents:
diff changeset
22 <node label = "Node008" tsid = "ant014.cs.ie.u-ryukyu.ac.jp:10008">
6c40056777be Initial revision
fuchita
parents:
diff changeset
23 <destination label = "Node005"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
24 <destination label = "Node006"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
25 <destination label = "Node009"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
26 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
27 <node label = "Node007" tsid = "ant013.cs.ie.u-ryukyu.ac.jp:10007">
6c40056777be Initial revision
fuchita
parents:
diff changeset
28 <destination label = "Node003"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
29 <destination label = "Node004"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
30 <destination label = "Node009"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
31 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
32 <node label = "Node006" tsid = "ant012.cs.ie.u-ryukyu.ac.jp:10006">
6c40056777be Initial revision
fuchita
parents:
diff changeset
33 <destination label = "Node001"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
34 <destination label = "Node002"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
35 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
36 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
37 <node label = "Node005" tsid = "ant011.cs.ie.u-ryukyu.ac.jp:10005">
6c40056777be Initial revision
fuchita
parents:
diff changeset
38 <destination label = "Node000"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
39 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
40 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
41 <node label = "Node004" tsid = "ant005.cs.ie.u-ryukyu.ac.jp:10004">
6c40056777be Initial revision
fuchita
parents:
diff changeset
42 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
43 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
44 <node label = "Node003" tsid = "ant004.cs.ie.u-ryukyu.ac.jp:10003">
6c40056777be Initial revision
fuchita
parents:
diff changeset
45 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
46 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
47 <node label = "Node002" tsid = "ant003.cs.ie.u-ryukyu.ac.jp:10002">
6c40056777be Initial revision
fuchita
parents:
diff changeset
48 <destination label = "Node006"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
49 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
50 <node label = "Node001" tsid = "ant002.cs.ie.u-ryukyu.ac.jp:10001">
6c40056777be Initial revision
fuchita
parents:
diff changeset
51 <destination label = "Node006"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
52 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
53 <node label = "Node000" tsid = "ant001.cs.ie.u-ryukyu.ac.jp:10000">
6c40056777be Initial revision
fuchita
parents:
diff changeset
54 <destination label = "Node005"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
55 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
56 <node label = "Node009" tsid = "ant015.cs.ie.u-ryukyu.ac.jp:10009">
6c40056777be Initial revision
fuchita
parents:
diff changeset
57 <destination label = "Node007"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
58 <destination label = "Node008"/>
6c40056777be Initial revision
fuchita
parents:
diff changeset
59 </node>
6c40056777be Initial revision
fuchita
parents:
diff changeset
60 </graph>
6c40056777be Initial revision
fuchita
parents:
diff changeset
61 """
6c40056777be Initial revision
fuchita
parents:
diff changeset
62 def getFirstTsid(xmltext):
6c40056777be Initial revision
fuchita
parents:
diff changeset
63 p = re.compile('(?<=tsid = \").*(?=\")')
6c40056777be Initial revision
fuchita
parents:
diff changeset
64 m = p.findall(xmltext)
6c40056777be Initial revision
fuchita
parents:
diff changeset
65 return m[0]
6c40056777be Initial revision
fuchita
parents:
diff changeset
66
6c40056777be Initial revision
fuchita
parents:
diff changeset
67
6c40056777be Initial revision
fuchita
parents:
diff changeset
68
6c40056777be Initial revision
fuchita
parents:
diff changeset
69 if __name__ == "__main__":
6c40056777be Initial revision
fuchita
parents:
diff changeset
70
6c40056777be Initial revision
fuchita
parents:
diff changeset
71 if (len(sys.argv) == 2):
6c40056777be Initial revision
fuchita
parents:
diff changeset
72 print " : %s <xmlfilename>" % sys.argv[0]
6c40056777be Initial revision
fuchita
parents:
diff changeset
73 xmltext = open(sys.argv[1]).read()
6c40056777be Initial revision
fuchita
parents:
diff changeset
74 if xmltext is None:
6c40056777be Initial revision
fuchita
parents:
diff changeset
75 sys.exit(1)
6c40056777be Initial revision
fuchita
parents:
diff changeset
76 else:
6c40056777be Initial revision
fuchita
parents:
diff changeset
77 xmltext = testxml
6c40056777be Initial revision
fuchita
parents:
diff changeset
78
6c40056777be Initial revision
fuchita
parents:
diff changeset
79 start = time.time()
6c40056777be Initial revision
fuchita
parents:
diff changeset
80 print "start time ",start
6c40056777be Initial revision
fuchita
parents:
diff changeset
81
6c40056777be Initial revision
fuchita
parents:
diff changeset
82 firsttsid = getFirstTsid(xmltext)
6c40056777be Initial revision
fuchita
parents:
diff changeset
83
6c40056777be Initial revision
fuchita
parents:
diff changeset
84 flinda = FederatedLinda.FederatedLinda()
6c40056777be Initial revision
fuchita
parents:
diff changeset
85
6c40056777be Initial revision
fuchita
parents:
diff changeset
86 host, portnum = string.split(firsttsid,':')
6c40056777be Initial revision
fuchita
parents:
diff changeset
87
6c40056777be Initial revision
fuchita
parents:
diff changeset
88 linda1 = flinda.open(host, int(portnum))
6c40056777be Initial revision
fuchita
parents:
diff changeset
89 linda1.Out(TUPLE_ID_LINKCONFIG, testxml)
6c40056777be Initial revision
fuchita
parents:
diff changeset
90 flinda.sync()
6c40056777be Initial revision
fuchita
parents:
diff changeset
91
6c40056777be Initial revision
fuchita
parents:
diff changeset
92
6c40056777be Initial revision
fuchita
parents:
diff changeset
93