dango_generator 0.0.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/LICENSE +16 -0
  2. data/README.txt +41 -0
  3. data/dango_generator.rb +99 -0
  4. data/templates/as3/as3corelib-license.txt +33 -0
  5. data/templates/as3/as3corelib-readme.txt +5 -0
  6. data/templates/as3/com/adobe/crypto/MD5.as +256 -0
  7. data/templates/as3/com/adobe/crypto/SHA1.as +268 -0
  8. data/templates/as3/com/adobe/crypto/SHA224.as +255 -0
  9. data/templates/as3/com/adobe/crypto/SHA256.as +260 -0
  10. data/templates/as3/com/adobe/crypto/WSSEUsernameToken.as +117 -0
  11. data/templates/as3/com/adobe/errors/IllegalStateError.as +66 -0
  12. data/templates/as3/com/adobe/images/BitString.as +42 -0
  13. data/templates/as3/com/adobe/images/JPGEncoder.as +651 -0
  14. data/templates/as3/com/adobe/images/PNGEncoder.as +144 -0
  15. data/templates/as3/com/adobe/net/DynamicURLLoader.as +58 -0
  16. data/templates/as3/com/adobe/net/IURIResolver.as +79 -0
  17. data/templates/as3/com/adobe/net/URI.as +2469 -0
  18. data/templates/as3/com/adobe/net/URIEncodingBitmap.as +142 -0
  19. data/templates/as3/com/adobe/net/proxies/RFC2817Socket.as +204 -0
  20. data/templates/as3/com/adobe/serialization/json/JSON.as +88 -0
  21. data/templates/as3/com/adobe/serialization/json/JSONDecoder.as +218 -0
  22. data/templates/as3/com/adobe/serialization/json/JSONEncoder.as +302 -0
  23. data/templates/as3/com/adobe/serialization/json/JSONParseError.as +90 -0
  24. data/templates/as3/com/adobe/serialization/json/JSONToken.as +107 -0
  25. data/templates/as3/com/adobe/serialization/json/JSONTokenType.as +70 -0
  26. data/templates/as3/com/adobe/serialization/json/JSONTokenizer.as +550 -0
  27. data/templates/as3/com/adobe/utils/ArrayUtil.as +190 -0
  28. data/templates/as3/com/adobe/utils/DateUtil.as +666 -0
  29. data/templates/as3/com/adobe/utils/DictionaryUtil.as +90 -0
  30. data/templates/as3/com/adobe/utils/IntUtil.as +69 -0
  31. data/templates/as3/com/adobe/utils/NumberFormatter.as +77 -0
  32. data/templates/as3/com/adobe/utils/StringUtil.as +257 -0
  33. data/templates/as3/com/adobe/utils/XMLUtil.as +171 -0
  34. data/templates/as3/com/adobe/webapis/ServiceBase.as +51 -0
  35. data/templates/as3/com/adobe/webapis/URLLoaderBase.as +111 -0
  36. data/templates/as3/com/adobe/webapis/events/ServiceEvent.as +78 -0
  37. data/templates/as3/org/rubyforge/dango/DangoClientFramework.as +426 -0
  38. data/templates/as3/org/rubyforge/dango/DangoError.as +11 -0
  39. data/templates/as3/org/rubyforge/dango/DangoErrorCode.as +7 -0
  40. data/templates/as3/org/rubyforge/dango/DangoErrorEvent.as +23 -0
  41. data/templates/as3/org/rubyforge/dango/DangoReceiveEvent.as +21 -0
  42. data/templates/as3/org/rubyforge/dango/DangoURLLoader.as +127 -0
  43. data/templates/as3/org/rubyforge/dango/DangoURLLoaderEvent.as +29 -0
  44. data/templates/as3/org/rubyforge/dango/DangoUtil.as +84 -0
  45. data/templates/dango/config/development.yml +28 -0
  46. data/templates/dango/config/production.yml +3 -0
  47. data/templates/dango/config/system_message.yml +5 -0
  48. data/templates/dango/config/test.yml +3 -0
  49. data/templates/dango/server/99_dango_server.rb +22 -0
  50. data/templates/lib/dango_monitor_client.rb +1 -0
  51. data/templates/lib/dango_tester_client.rb +1 -0
  52. data/templates/script/dango_server +36 -0
  53. data/templates/tasks/dango.rake +2 -0
  54. metadata +108 -0
@@ -0,0 +1,23 @@
1
+
2
+ package org.rubyforge.dango {
3
+ import flash.events.*;
4
+
5
+ public class DangoErrorEvent extends Event {
6
+ private var dango_type:String;
7
+ public var code:uint;
8
+ public var message:String;
9
+
10
+ public function DangoErrorEvent(type:String, code_orig:uint, message_orig:String,
11
+ bubbles:Boolean = false,
12
+ cancelable:Boolean = false) {
13
+ dango_type = type;
14
+ code = code_orig;
15
+ message = message_orig;
16
+ super(type, bubbles, cancelable);
17
+ }
18
+
19
+ public override function clone():Event {
20
+ return(new DangoErrorEvent(dango_type, code, message));
21
+ }
22
+ }
23
+ }
@@ -0,0 +1,21 @@
1
+
2
+ package org.rubyforge.dango {
3
+ import flash.events.*;
4
+
5
+ public class DangoReceiveEvent extends Event {
6
+ private var dango_type:String;
7
+ public var receive_data:Object;
8
+
9
+ public function DangoReceiveEvent(type:String, receive_data_orig:Object,
10
+ bubbles:Boolean = false,
11
+ cancelable:Boolean = false) {
12
+ dango_type = type;
13
+ receive_data = receive_data_orig;
14
+ super(type, bubbles, cancelable);
15
+ }
16
+
17
+ public override function clone():Event {
18
+ return(new DangoReceiveEvent(dango_type, receive_data));
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,127 @@
1
+ package org.rubyforge.dango {
2
+ /**
3
+ * Dangoで利便性を高めたURLLoader
4
+ *
5
+ */
6
+
7
+ import flash.net.*;
8
+ import flash.events.*;
9
+ import flash.text.*;
10
+ import flash.utils.*;
11
+ import flash.system.*;
12
+
13
+ import flash.events.IEventDispatcher;
14
+ import flash.events.EventDispatcher;
15
+ import flash.events.Event;
16
+
17
+ import org.rubyforge.dango.*;
18
+
19
+ public class DangoURLLoader implements IEventDispatcher {
20
+
21
+ private var url:String; // 取得URL
22
+ private var event_name:String; // 発生させるイベント名
23
+ private var is_debug:Boolean; // Debugモードかどうかのフラグ
24
+
25
+ private var dispatcher:EventDispatcher; // Event送出用
26
+
27
+ // URLから認証情報を取得開始
28
+ public function DangoURLLoader(u:String, e:String, d:Boolean = false){
29
+ if(is_debug){ trace("DangoURLLoader:start"); }
30
+
31
+ // 初期設定
32
+ url = u;
33
+ event_name = e;
34
+ is_debug = d;
35
+
36
+ // データ受信準備
37
+ var loader:URLLoader = new URLLoader();
38
+ loader.dataFormat = URLLoaderDataFormat.TEXT;
39
+
40
+ // 各種イベントの登録
41
+ configureListeners(loader);
42
+
43
+ // Event送出用
44
+ dispatcher = new EventDispatcher(this);
45
+
46
+ // データ受信
47
+ var request:URLRequest = new URLRequest(url);
48
+ try {
49
+ loader.load(request);
50
+ } catch (error:Error) {
51
+ var receive_object:Object = {"status":"failed", "data":"Unable to load requested document."};
52
+ this.dispatchEvent(new DangoURLLoaderEvent(event_name, receive_object));
53
+ }
54
+
55
+ }
56
+
57
+ private function configureListeners(loader:IEventDispatcher):void {
58
+ loader.addEventListener(Event.COMPLETE, completeHandler);
59
+ loader.addEventListener(Event.OPEN, openHandler);
60
+ loader.addEventListener(ProgressEvent.PROGRESS, progressHandler);
61
+ loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
62
+ loader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
63
+ loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
64
+ }
65
+
66
+ private function completeHandler(event:Event):void {
67
+ var loader:URLLoader = URLLoader(event.target);
68
+ if(is_debug){ trace("DangoURLLoader:completeHandler: " + loader.data); }
69
+
70
+ var receive_object:Object = {"status":"success", "data":loader.data};
71
+ this.dispatchEvent(new DangoURLLoaderEvent(event_name, receive_object));
72
+ }
73
+
74
+ private function openHandler(event:Event):void {
75
+ var msg:String = "DangoURLLoader:openHandler: " + event;
76
+ if(is_debug){ trace(msg); }
77
+ }
78
+
79
+ private function progressHandler(event:ProgressEvent):void {
80
+ var msg:String = "DangoURLLoader:progressHandler loaded:" + event.bytesLoaded + " total: " + event.bytesTotal;
81
+ if(is_debug){ trace(msg); }
82
+ }
83
+
84
+ private function securityErrorHandler(event:SecurityErrorEvent):void {
85
+ var msg:String = "DangoURLLoader:securityErrorHandler";
86
+ if(is_debug){ trace(msg); }
87
+
88
+ var receive_object:Object = {"status":"failed", "data":msg};
89
+ this.dispatchEvent(new DangoURLLoaderEvent(event_name, receive_object));
90
+ }
91
+
92
+ private function httpStatusHandler(event:HTTPStatusEvent):void {
93
+ var msg:String = "DangoURLLoader:httpStatusHandler: " + event;
94
+ if(is_debug){ trace(msg); }
95
+ }
96
+
97
+ private function ioErrorHandler(event:IOErrorEvent):void {
98
+ var msg:String = "DangoURLLoader:ioErrorHandler" + event;
99
+ if(is_debug){ trace(msg); }
100
+
101
+ var receive_object:Object = {"status":"failed", "data":msg};
102
+ this.dispatchEvent(new DangoURLLoaderEvent(event_name, receive_object));
103
+ }
104
+
105
+ // Event送出用
106
+ public function addEventListener(type:String, listener:Function,
107
+ useCapture:Boolean = false,
108
+ priority:int = 0,
109
+ useWeakReference:Boolean = false):void{
110
+ dispatcher.addEventListener(type, listener, useCapture, priority);
111
+ }
112
+ public function dispatchEvent(evt:Event):Boolean{
113
+ return dispatcher.dispatchEvent(evt);
114
+ }
115
+ public function hasEventListener(type:String):Boolean{
116
+ return dispatcher.hasEventListener(type);
117
+ }
118
+ public function removeEventListener(type:String, listener:Function,
119
+ useCapture:Boolean = false):void{
120
+ dispatcher.removeEventListener(type, listener, useCapture);
121
+ }
122
+ public function willTrigger(type:String):Boolean {
123
+ return dispatcher.willTrigger(type);
124
+ }
125
+ }
126
+ }
127
+
@@ -0,0 +1,29 @@
1
+
2
+ package org.rubyforge.dango {
3
+ /**
4
+ * Dangoで利便性を高めたURLLoaderのイベントクラス
5
+ *
6
+ */
7
+ import flash.net.*;
8
+ import flash.events.*;
9
+
10
+ import org.rubyforge.dango.*;
11
+
12
+ public class DangoURLLoaderEvent extends Event {
13
+ private var dango_type:String;
14
+ public var receive_object:Object;
15
+
16
+ public function DangoURLLoaderEvent(type:String, receive_object_orig:Object,
17
+ bubbles:Boolean = false,
18
+ cancelable:Boolean = false) {
19
+ dango_type = type;
20
+ receive_object = receive_object_orig;
21
+ super(type, bubbles, cancelable);
22
+ }
23
+
24
+ public override function clone():Event {
25
+ return(new DangoURLLoaderEvent(dango_type, receive_object));
26
+ }
27
+ }
28
+ }
29
+
@@ -0,0 +1,84 @@
1
+
2
+ package org.rubyforge.dango {
3
+ /**
4
+ * Dangoで使っているユーティリティクラス
5
+ *
6
+ */
7
+
8
+ import flash.utils.*;
9
+ // import mx.formatters.*;
10
+ import mx.utils.ObjectUtil;
11
+
12
+ public class DangoUtil {
13
+
14
+ // Arrayから特定アイテムを削除した結果を返す
15
+ public static function array_delete(arr:Array, delete_item:*):Array {
16
+ var filter_function:Function = function filter_function(item:*, idx:int, arr:Array):Boolean {
17
+ return(item != delete_item);
18
+ };
19
+ return(arr.filter(filter_function));
20
+ }
21
+
22
+ // Stringのバイト数を返す
23
+ public static function string_byte_length(str:String):int {
24
+ var str_size_ba:ByteArray = new ByteArray();
25
+ str_size_ba.writeUTFBytes(str);
26
+ var size:int = str_size_ba.length;
27
+ return(size);
28
+ }
29
+
30
+ // Date型から日時のStringにして返す
31
+ public static function date2str(date:Date):String {
32
+ // var df:DateFormatter = new DateFormatter();
33
+ // df.formatString = "YYYY-MM-DD HH:NN:SS";
34
+ // var str:String = df.format(date);
35
+
36
+ var str:String = "" +
37
+ date.getFullYear() + "-" +
38
+ (date.getMonth() + 1) + "-" +
39
+ date.getDate() + " " +
40
+ date.getHours() + ":" +
41
+ date.getMinutes() + ":" +
42
+ date.getSeconds() + "." +
43
+ date.getMilliseconds() + " TZ=" +
44
+ (date.getTimezoneOffset() / 60);
45
+ return(str);
46
+ }
47
+
48
+ // 現在時間を返す
49
+ public static function now2str():String {
50
+ return(date2str(new Date()));
51
+ }
52
+
53
+ // URLのQUERY_STRINGのparse
54
+ public static function parse_query(query:String, parse1:String = "&", parse2:String = "="):Object {
55
+ // 受信データの分解
56
+ var arr_split_equal:Array;
57
+ var ret_object:Object = {};
58
+
59
+ var regex1:RegExp = new RegExp(parse1);
60
+ var regex2:RegExp = new RegExp(parse2);
61
+
62
+ var arr_split_and:Array = query.split(regex1);
63
+
64
+ // trace("1");
65
+ // trace(ObjectUtil.toString(arr_split_and));
66
+
67
+ for (var i:uint = 0; i < arr_split_and.length; i++) {
68
+ // trace("2"+i);
69
+ arr_split_equal = arr_split_and[i].split(regex2);
70
+ // trace("3"+i);
71
+ // trace(ObjectUtil.toString(arr_split_equal));
72
+ // trace(arr_split_equal[0]);
73
+ // trace(arr_split_equal[1]);
74
+ // trace(String(arr_split_equal[0]));
75
+ // trace(String(arr_split_equal[1]));
76
+ ret_object[String(arr_split_equal[0])] = String(arr_split_equal[1]);
77
+ // trace("4"+i);
78
+ }
79
+
80
+ return(ret_object);
81
+ }
82
+
83
+ }
84
+ }
@@ -0,0 +1,28 @@
1
+ server:
2
+ # host: "localhost" # 接続制限ホスト "0.0.0.0"にすれば全接続オッケイ
3
+ host: "0.0.0.0" # 接続制限ホスト "0.0.0.0"にすれば全接続オッケイ
4
+ max_connections: 200
5
+ log_file: log/dango_development.log
6
+ log_level: DEBUG
7
+ shared_database_manager: MemoryStore
8
+ backdoor_host: "127.0.0.1"
9
+ thread_sync: true # trueにすると各スレッドが同時動作しなくなる。falseの場合は自分で排他処理を書く場合
10
+ debug: true # スレッド終了時に全体停止する
11
+ policy_file_request: true # <policy-file-request/>要求に答える(Flashでクロスドメイン処理を行う)
12
+
13
+ check_dango_process_cmd: 'cmd /c "D: && cd D:\svn\aiare_nexon_babanuki\trunk\rails && ruby script/dango_server"'
14
+
15
+ send_receive_sleep_interval_sec: 0.2 # データ送信時のタイムアウトチェック間隔秒
16
+ send_receive_timeout_default_sec: 5.0 # データ送受信時のデフォルトタイムアウト秒数
17
+ send_timeout_sec: 4.0 # データ送受信時の送信のタイムアウト秒数
18
+ heart_beat_interval_sec: 10.0 # S=>Cのheart beatの送信間隔秒数
19
+ heart_beat_response_wait_sec: 10.0 # S=>Cのheart beatの返信待ち秒数
20
+
21
+ network:
22
+ host: localhost
23
+ port: 15000
24
+ # port: 5140
25
+
26
+ client:
27
+ # host: 172.31.1.74
28
+
@@ -0,0 +1,3 @@
1
+ config:
2
+ cache_classes: true
3
+
@@ -0,0 +1,5 @@
1
+ down_1min: "あと1分でサーバーが停止します"
2
+ down_5min: "あと5分でサーバーが停止します"
3
+ down_10min: "あと10分でサーバーが停止します"
4
+ down_30min: "あと30分でサーバーが停止します"
5
+
@@ -0,0 +1,3 @@
1
+ config:
2
+ cache_classes: true
3
+
@@ -0,0 +1,22 @@
1
+ =begin
2
+ = dangoサーバー
3
+ =end
4
+
5
+ # メインクラス
6
+ class DangoServer < DangoServerFramework
7
+ # サーバー起動時のインスタンス変数などを定義するメソッド
8
+ # ここで定義されるインスタンス変数はサーバー全体で共有される
9
+ def dango_server_init()
10
+ end
11
+
12
+ # 接続時に呼び出されるメソッド
13
+ def dango_connect()
14
+ end
15
+
16
+ # 接続解除時に呼び出されるメソッド
17
+ def dango_close()
18
+ end
19
+ end
20
+
21
+
22
+
@@ -0,0 +1 @@
1
+ require 'dango/monitor/dango_monitor_client.rb'
@@ -0,0 +1 @@
1
+ require 'dango/tester/dango_tester_client.rb'
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ puts "Booting DangoServer..."
4
+ require File.dirname(__FILE__) + '/../config/boot'
5
+
6
+
7
+ # 環境によるコンフィグ読み込み
8
+ require "yaml"
9
+ env = ENV['RAILS_ENV'] || 'development'
10
+ config = YAML.load(open("dango/config/#{env}.yml", "rb"){|fh| fh.read})
11
+
12
+ # コマンドラインオプション取得とコンフィグの上書き
13
+ require 'getoptlong.rb'
14
+ opt_parser = GetoptLong.new
15
+
16
+ options_arr = ["dango"]
17
+ config["server"].each{|k, v| options_arr.push("server:#{k}") }
18
+ config["network"].each{|k, v| options_arr.push("network:#{k}") }
19
+ options_set_options = options_arr.uniq.collect{|o| ["--#{o}", GetoptLong::OPTIONAL_ARGUMENT]}
20
+ opt_parser.set_options(*options_set_options)
21
+
22
+ start_options = {}
23
+ opt_parser.each_option{|n,a| start_options[n] = a}
24
+
25
+ # rubygems
26
+ require 'rubygems'
27
+
28
+ # コマンドラインでdangoのバージョン指定があればそのバージョンを使う
29
+ if start_options['--dango'] && start_options['--dango'] != ""
30
+ puts "loading dango version = #{start_options['--dango']}"
31
+ gem 'dango', "= #{start_options['--dango']}"
32
+ end
33
+
34
+ require 'dango/script/dango_server'
35
+ ScriptDangoServer.new(config, start_options)
36
+
@@ -0,0 +1,2 @@
1
+ require "dango/tasks/dango_rake.rb"
2
+
metadata ADDED
@@ -0,0 +1,108 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dango_generator
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.38
5
+ platform: ""
6
+ authors:
7
+ - Keisuke Minami
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2007-12-01 00:00:00 +09:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: dango_generator
17
+ email: keisuke@rccn.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README.txt
24
+ - templates/as3/as3corelib-readme.txt
25
+ - templates/as3/as3corelib-license.txt
26
+ files:
27
+ - README.txt
28
+ - LICENSE
29
+ - dango_generator.rb
30
+ - templates/script/dango_server
31
+ - templates/lib/dango_monitor_client.rb
32
+ - templates/lib/dango_tester_client.rb
33
+ - templates/tasks/dango.rake
34
+ - templates/dango/server/99_dango_server.rb
35
+ - templates/dango/config/development.yml
36
+ - templates/dango/config/test.yml
37
+ - templates/dango/config/production.yml
38
+ - templates/dango/config/system_message.yml
39
+ - templates/as3/org/rubyforge/dango/DangoClientFramework.as
40
+ - templates/as3/org/rubyforge/dango/DangoError.as
41
+ - templates/as3/org/rubyforge/dango/DangoErrorCode.as
42
+ - templates/as3/org/rubyforge/dango/DangoErrorEvent.as
43
+ - templates/as3/org/rubyforge/dango/DangoReceiveEvent.as
44
+ - templates/as3/org/rubyforge/dango/DangoURLLoader.as
45
+ - templates/as3/org/rubyforge/dango/DangoURLLoaderEvent.as
46
+ - templates/as3/org/rubyforge/dango/DangoUtil.as
47
+ - templates/as3/as3corelib-readme.txt
48
+ - templates/as3/as3corelib-license.txt
49
+ - templates/as3/com/adobe/crypto/MD5.as
50
+ - templates/as3/com/adobe/crypto/SHA1.as
51
+ - templates/as3/com/adobe/crypto/SHA224.as
52
+ - templates/as3/com/adobe/crypto/SHA256.as
53
+ - templates/as3/com/adobe/crypto/WSSEUsernameToken.as
54
+ - templates/as3/com/adobe/errors/IllegalStateError.as
55
+ - templates/as3/com/adobe/images/BitString.as
56
+ - templates/as3/com/adobe/images/JPGEncoder.as
57
+ - templates/as3/com/adobe/images/PNGEncoder.as
58
+ - templates/as3/com/adobe/net/DynamicURLLoader.as
59
+ - templates/as3/com/adobe/net/IURIResolver.as
60
+ - templates/as3/com/adobe/net/URI.as
61
+ - templates/as3/com/adobe/net/URIEncodingBitmap.as
62
+ - templates/as3/com/adobe/net/proxies/RFC2817Socket.as
63
+ - templates/as3/com/adobe/serialization/json/JSON.as
64
+ - templates/as3/com/adobe/serialization/json/JSONDecoder.as
65
+ - templates/as3/com/adobe/serialization/json/JSONEncoder.as
66
+ - templates/as3/com/adobe/serialization/json/JSONParseError.as
67
+ - templates/as3/com/adobe/serialization/json/JSONToken.as
68
+ - templates/as3/com/adobe/serialization/json/JSONTokenizer.as
69
+ - templates/as3/com/adobe/serialization/json/JSONTokenType.as
70
+ - templates/as3/com/adobe/utils/ArrayUtil.as
71
+ - templates/as3/com/adobe/utils/DateUtil.as
72
+ - templates/as3/com/adobe/utils/DictionaryUtil.as
73
+ - templates/as3/com/adobe/utils/IntUtil.as
74
+ - templates/as3/com/adobe/utils/NumberFormatter.as
75
+ - templates/as3/com/adobe/utils/StringUtil.as
76
+ - templates/as3/com/adobe/utils/XMLUtil.as
77
+ - templates/as3/com/adobe/webapis/ServiceBase.as
78
+ - templates/as3/com/adobe/webapis/URLLoaderBase.as
79
+ - templates/as3/com/adobe/webapis/events/ServiceEvent.as
80
+ has_rdoc: false
81
+ homepage: http://dango.rubyforge.org
82
+ post_install_message:
83
+ rdoc_options:
84
+ - --main
85
+ - README.txt
86
+ require_paths:
87
+ - lib
88
+ required_ruby_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: "0"
93
+ version:
94
+ required_rubygems_version: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: "0"
99
+ version:
100
+ requirements: []
101
+
102
+ rubyforge_project: dango
103
+ rubygems_version: 0.9.5
104
+ signing_key:
105
+ specification_version: 2
106
+ summary: dango_generator
107
+ test_files: []
108
+