Changeset 101
- Timestamp:
- 08/03/06 03:42:43 (2 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
streamservice/trunk/scripts/json-provides.py
r100 r101 14 14 outf=sys.stdout 15 15 all={} 16 for d in load(file(sys.argv[1])): 17 all.update(d) 16 ordered=0 17 for inf in sys.argv[1:]: 18 for d in load(file(inf)): 19 for k in d.keys(): 20 v=d[k] 21 del d[k] 22 d[(ordered,k)]=v 23 all.update(d) 24 ordered+=1 25 18 26 print >> outf, "/* BEGIN: provides" 19 27 print >> outf, " * GENERATED BY: %s" % GENERATORID 20 28 print >> outf, " */" 21 for namespace,meta in all.items(): 29 haveprovided,haverequired={},{} 30 ifdojo,ifjsan=[],[] 31 for (ordered,namespace),meta in sorted(all.items()): 22 32 provide,require=meta.get('provide',[]),meta.get('require',[]) 33 provide[:] = [p for p in provide if p not in haveprovided] 34 require[:] = [r for r in require 35 if not (r in haverequired or r in haveprovided)] 36 if not (provide or require): 37 continue 38 for p in provide: 39 ifdojo.append(' ' * 4 + "dojo.provide('%s');" % p) 40 for r in require: 41 ifdojo.append(' ' * 4 + "dojo.require('%s');" % r) 42 ifjsan.append(' ' * 4 + "JSAN.use('%s');" % r) 43 for p in provide: 44 haveprovided[p] = True 45 for r in require: 46 haverequired[r] = True 47 if ifdojo: 23 48 print >> outf, "if (typeof(dojo) != 'undefined') {" 24 for p in provide: 25 print >> outf, ' ' * 4 + "dojo.provide('%s');" % p 26 for r in require: 27 print >> outf, ' ' * 4 + "dojo.require('%s');" % r 28 print >> outf, '}' 49 for line in ifdojo: 50 print >> outf, line 51 print >> outf, "}" 52 if ifjsan: 29 53 print >> outf, "if (typeof(JSAN) != 'undefined') {" 30 for r in require: 31 print >> outf, ' ' * 4 + "JSAN.use('%s');" % r 32 print >> outf, '}' 33 for namespace in all.keys(): 54 for line in ifjsan: 55 print >> outf, line 56 print >> outf, "}" 57 havedefined={} 58 for (ordered,namespace) in sorted(all.keys()): 34 59 parts=namespace.split('.') 35 60 for i, part in enumerate(parts): 36 61 space='.'.join(parts[:i+1]) 62 if space in havedefined: 63 continue 37 64 print >> outf, "if (typeof(%s) == 'undefined') {" % space 38 65 print >> outf, ''.join([ 39 66 ' ' * 4, space, ' = {};']) 40 67 print >> outf, '}' 68 havedefined[space]=True 41 69 42 70 print >> outf, "/* GENERATED BY: %s " % GENERATORID streamservice/trunk/tests/test-Dispatch.html
r100 r101 8 8 src="../lib/SimpleTest/SimpleTest.js"></script> 9 9 <script type="text/javascript" 10 src="../lib/streamservice/ Dispatch.include.js"></script>10 src="../lib/streamservice/streamservice.include.js"></script> 11 11 <script type="text/javascript" 12 12 src="../lib/streamservice/Dispatch.js"></script> 13 <script type="text/javascript"14 src="../lib/streamservice/Loopback.include.js"></script>15 13 <script type="text/javascript" 16 14 src="../lib/streamservice/Loopback.js"></script>