dango_generator 0.4.3 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/dango_generator.rb +127 -83
- data/templates/as3/org/rubyforge/dango/DangoAS3Mode.as +163 -0
- data/templates/as3/org/rubyforge/dango/DangoAS3ModeReceiveEvent.as +23 -0
- data/templates/as3/org/rubyforge/dango/DangoClientFramework.as +29 -9
- data/templates/as3/org/rubyforge/dango/DangoUtil.as +14 -2
- data/templates/sample_as3mode/dango/client_swf/bin-debug/AC_OETags.js +278 -0
- data/templates/sample_as3mode/dango/client_swf/bin-debug/playerProductInstall.swf +0 -0
- data/templates/sample_as3mode/dango/client_swf/bin-debug/sample_as3mode.html +121 -0
- data/templates/sample_as3mode/dango/client_swf/bin-debug/sample_as3mode.swf +0 -0
- data/templates/sample_as3mode/dango/client_swf/src/sample_as3mode.mxml +48 -0
- data/templates/sample_as3mode/dango/server/99_dango_server.rb +42 -0
- data/templates/sample_servermode_chat/dango/client_swf/bin-debug/AC_OETags.js +278 -0
- data/templates/sample_servermode_chat/dango/client_swf/bin-debug/playerProductInstall.swf +0 -0
- data/templates/sample_servermode_chat/dango/client_swf/bin-debug/sample_servermode_chat.html +121 -0
- data/templates/sample_servermode_chat/dango/client_swf/bin-debug/sample_servermode_chat.swf +0 -0
- data/templates/sample_servermode_chat/dango/client_swf/src/sample_servermode_chat.mxml +35 -0
- data/templates/sample_servermode_chat/dango/server/99_dango_server.rb +35 -0
- metadata +16 -2
data/dango_generator.rb
CHANGED
@@ -7,6 +7,100 @@ class DangoGenerator < Rails::Generator::NamedBase
|
|
7
7
|
# super
|
8
8
|
# end
|
9
9
|
|
10
|
+
# 初期化の共通で使う部分
|
11
|
+
def common_init(m)
|
12
|
+
# 起動スクリプト
|
13
|
+
m.file "script/dango_server" , "script/dango_server", :collision => :force
|
14
|
+
|
15
|
+
# crossdomain.xml
|
16
|
+
m.file "public/crossdomain.xml" , "public/crossdomain.xml", :collision => :force
|
17
|
+
|
18
|
+
# vendorプラグイン
|
19
|
+
m.directory 'vendor/plugins/dango/lib'
|
20
|
+
m.file "lib/dango_monitor_client.rb" , "vendor/plugins/dango/lib/dango_monitor_client.rb", :collision => :force
|
21
|
+
m.file "lib/dango_controller_plugin.rb" , "vendor/plugins/dango/lib/dango_controller_plugin.rb", :collision => :force
|
22
|
+
m.directory 'vendor/plugins/dango/tasks'
|
23
|
+
m.file "tasks/dango.rake" , "vendor/plugins/dango/tasks/dango.rake", :collision => :force
|
24
|
+
|
25
|
+
# dangoフォルダ内
|
26
|
+
m.directory 'dango/server'
|
27
|
+
m.file "dango/server/99_dango_server.rb" , "dango/server/99_dango_server.rb", :collision => :skip
|
28
|
+
|
29
|
+
# dangoのclient_swf
|
30
|
+
m.directory 'dango/client_swf'
|
31
|
+
m.directory 'dango/client_swf/src'
|
32
|
+
m.file "dango/client_swf/src/DangoConfig.as" , "dango/client_swf/src/DangoConfig.as", :collision => :skip
|
33
|
+
|
34
|
+
# dangoコンフィグ
|
35
|
+
m.directory 'config/dango'
|
36
|
+
%w(
|
37
|
+
development.yml
|
38
|
+
test.yml
|
39
|
+
production.yml
|
40
|
+
system_message.yml
|
41
|
+
).each do |as3_file|
|
42
|
+
m.file "config/dango/#{as3_file}", "config/dango/#{as3_file}", :collision => :skip
|
43
|
+
end
|
44
|
+
|
45
|
+
# dangoのas3ライブラリ
|
46
|
+
m.directory 'dango/client_swf/src/org/rubyforge/dango'
|
47
|
+
%w(
|
48
|
+
DangoAS3Mode.as
|
49
|
+
DangoAS3ModeReceiveEvent.as
|
50
|
+
DangoClientFramework.as
|
51
|
+
DangoError.as
|
52
|
+
DangoErrorCode.as
|
53
|
+
DangoErrorEvent.as
|
54
|
+
DangoReceiveEvent.as
|
55
|
+
DangoURLLoader.as
|
56
|
+
DangoURLLoaderEvent.as
|
57
|
+
DangoUtil.as
|
58
|
+
).each do |as3_file|
|
59
|
+
m.file "as3/org/rubyforge/dango/#{as3_file}", "dango/client_swf/src/org/rubyforge/dango/#{as3_file}", :collision => :force
|
60
|
+
end
|
61
|
+
|
62
|
+
# http://code.google.com/p/as3corelib/のインポート
|
63
|
+
# as3corelib-readme.txt
|
64
|
+
# as3corelib-license.txt
|
65
|
+
%w(
|
66
|
+
com/adobe/crypto/MD5.as
|
67
|
+
com/adobe/crypto/SHA1.as
|
68
|
+
com/adobe/crypto/SHA224.as
|
69
|
+
com/adobe/crypto/SHA256.as
|
70
|
+
com/adobe/crypto/WSSEUsernameToken.as
|
71
|
+
com/adobe/errors/IllegalStateError.as
|
72
|
+
com/adobe/images/BitString.as
|
73
|
+
com/adobe/images/JPGEncoder.as
|
74
|
+
com/adobe/images/PNGEncoder.as
|
75
|
+
com/adobe/net/DynamicURLLoader.as
|
76
|
+
com/adobe/net/IURIResolver.as
|
77
|
+
com/adobe/net/URI.as
|
78
|
+
com/adobe/net/URIEncodingBitmap.as
|
79
|
+
com/adobe/net/proxies/RFC2817Socket.as
|
80
|
+
com/adobe/serialization/json/JSON.as
|
81
|
+
com/adobe/serialization/json/JSONDecoder.as
|
82
|
+
com/adobe/serialization/json/JSONEncoder.as
|
83
|
+
com/adobe/serialization/json/JSONParseError.as
|
84
|
+
com/adobe/serialization/json/JSONToken.as
|
85
|
+
com/adobe/serialization/json/JSONTokenizer.as
|
86
|
+
com/adobe/serialization/json/JSONTokenType.as
|
87
|
+
com/adobe/utils/ArrayUtil.as
|
88
|
+
com/adobe/utils/DateUtil.as
|
89
|
+
com/adobe/utils/DictionaryUtil.as
|
90
|
+
com/adobe/utils/IntUtil.as
|
91
|
+
com/adobe/utils/NumberFormatter.as
|
92
|
+
com/adobe/utils/StringUtil.as
|
93
|
+
com/adobe/utils/XMLUtil.as
|
94
|
+
com/adobe/webapis/ServiceBase.as
|
95
|
+
com/adobe/webapis/URLLoaderBase.as
|
96
|
+
com/adobe/webapis/events/ServiceEvent.as
|
97
|
+
).each do |as3corelib_file|
|
98
|
+
m.directory File.dirname("dango/client_swf/src/#{as3corelib_file}")
|
99
|
+
m.file "as3/#{as3corelib_file}", "dango/client_swf/src/#{as3corelib_file}", :collision => :force
|
100
|
+
end
|
101
|
+
end
|
102
|
+
|
103
|
+
|
10
104
|
def manifest
|
11
105
|
record do |m|
|
12
106
|
|
@@ -16,97 +110,47 @@ class DangoGenerator < Rails::Generator::NamedBase
|
|
16
110
|
# p class_name
|
17
111
|
|
18
112
|
# dangoの初期設定
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
m.template "public/crossdomain.xml" , "public/crossdomain.xml"
|
26
|
-
|
27
|
-
# vendorプラグイン
|
28
|
-
m.directory 'vendor/plugins/dango/lib'
|
29
|
-
m.template "lib/dango_monitor_client.rb" , "vendor/plugins/dango/lib/dango_monitor_client.rb"
|
30
|
-
m.template "lib/dango_controller_plugin.rb" , "vendor/plugins/dango/lib/dango_controller_plugin.rb"
|
31
|
-
m.directory 'vendor/plugins/dango/tasks'
|
32
|
-
m.template "tasks/dango.rake" , "vendor/plugins/dango/tasks/dango.rake"
|
33
|
-
|
34
|
-
# dangoフォルダ内
|
35
|
-
m.directory 'dango/server'
|
36
|
-
m.template "dango/server/99_dango_server.rb" , "dango/server/99_dango_server.rb"
|
37
|
-
|
38
|
-
# dangoのclient_swf
|
39
|
-
m.directory 'dango/client_swf'
|
40
|
-
m.directory 'dango/client_swf/src'
|
41
|
-
m.template "dango/client_swf/src/DangoConfig.as" , "dango/client_swf/src/DangoConfig.as"
|
113
|
+
common_init(m)
|
114
|
+
|
115
|
+
|
116
|
+
if name == "init_as3mode" # init_as3mode
|
117
|
+
m.file "sample_as3mode/dango/server/99_dango_server.rb" ,
|
118
|
+
"dango/server/99_dango_server.rb", :collision => :force
|
42
119
|
|
43
|
-
|
44
|
-
m.directory 'config/dango'
|
120
|
+
m.directory "dango/client_swf/bin-debug"
|
45
121
|
%w(
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
).each do |
|
51
|
-
m.
|
122
|
+
sample_as3mode.swf
|
123
|
+
sample_as3mode.html
|
124
|
+
AC_OETags.js
|
125
|
+
playerProductInstall.swf
|
126
|
+
).each do |file|
|
127
|
+
m.file "sample_as3mode/dango/client_swf/bin-debug/#{file}",
|
128
|
+
"dango/client_swf/bin-debug/#{file}", :collision => :force
|
52
129
|
end
|
53
130
|
|
54
|
-
|
55
|
-
|
56
|
-
%w(
|
57
|
-
DangoClientFramework.as
|
58
|
-
DangoError.as
|
59
|
-
DangoErrorCode.as
|
60
|
-
DangoErrorEvent.as
|
61
|
-
DangoReceiveEvent.as
|
62
|
-
DangoURLLoader.as
|
63
|
-
DangoURLLoaderEvent.as
|
64
|
-
DangoUtil.as
|
65
|
-
).each do |as3_file|
|
66
|
-
m.template "as3/org/rubyforge/dango/#{as3_file}", "dango/client_swf/src/org/rubyforge/dango/#{as3_file}"
|
67
|
-
end
|
131
|
+
m.file "sample_as3mode/dango/client_swf/src/sample_asmode.mxml" ,
|
132
|
+
"dango/client_swf/src/sample_as3mode.mxml", :collision => :force
|
68
133
|
|
69
|
-
|
70
|
-
|
71
|
-
# as3corelib-license.txt
|
134
|
+
elsif name == "sample_servermode_chat"
|
135
|
+
m.directory "dango/client_swf/bin-debug"
|
72
136
|
%w(
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
com/adobe/images/JPGEncoder.as
|
81
|
-
com/adobe/images/PNGEncoder.as
|
82
|
-
com/adobe/net/DynamicURLLoader.as
|
83
|
-
com/adobe/net/IURIResolver.as
|
84
|
-
com/adobe/net/URI.as
|
85
|
-
com/adobe/net/URIEncodingBitmap.as
|
86
|
-
com/adobe/net/proxies/RFC2817Socket.as
|
87
|
-
com/adobe/serialization/json/JSON.as
|
88
|
-
com/adobe/serialization/json/JSONDecoder.as
|
89
|
-
com/adobe/serialization/json/JSONEncoder.as
|
90
|
-
com/adobe/serialization/json/JSONParseError.as
|
91
|
-
com/adobe/serialization/json/JSONToken.as
|
92
|
-
com/adobe/serialization/json/JSONTokenizer.as
|
93
|
-
com/adobe/serialization/json/JSONTokenType.as
|
94
|
-
com/adobe/utils/ArrayUtil.as
|
95
|
-
com/adobe/utils/DateUtil.as
|
96
|
-
com/adobe/utils/DictionaryUtil.as
|
97
|
-
com/adobe/utils/IntUtil.as
|
98
|
-
com/adobe/utils/NumberFormatter.as
|
99
|
-
com/adobe/utils/StringUtil.as
|
100
|
-
com/adobe/utils/XMLUtil.as
|
101
|
-
com/adobe/webapis/ServiceBase.as
|
102
|
-
com/adobe/webapis/URLLoaderBase.as
|
103
|
-
com/adobe/webapis/events/ServiceEvent.as
|
104
|
-
).each do |as3corelib_file|
|
105
|
-
m.directory File.dirname("dango/client_swf/src/#{as3corelib_file}")
|
106
|
-
m.template "as3/#{as3corelib_file}", "dango/client_swf/src/#{as3corelib_file}"
|
137
|
+
sample_servermode_chat.swf
|
138
|
+
sample_servermode_chat.html
|
139
|
+
AC_OETags.js
|
140
|
+
playerProductInstall.swf
|
141
|
+
).each do |file|
|
142
|
+
m.file "sample_servermode_chat/dango/client_swf/bin-debug/#{file}",
|
143
|
+
"dango/client_swf/bin-debug/#{file}", :collision => :force
|
107
144
|
end
|
108
145
|
|
109
|
-
|
146
|
+
m.file "sample_servermode_chat/dango/client_swf/src/sample_servermode_chat.mxml" ,
|
147
|
+
"dango/client_swf/src/sample_servermode_chat.mxml", :collision => :force
|
148
|
+
|
149
|
+
m.file "sample_servermode_chat/dango/server/99_dango_server.rb" ,
|
150
|
+
"dango/server/99_dango_server.rb", :collision => :force
|
151
|
+
|
152
|
+
end
|
153
|
+
|
110
154
|
end
|
111
155
|
|
112
156
|
# puts "completed to dango_generator"
|
@@ -0,0 +1,163 @@
|
|
1
|
+
|
2
|
+
package org.rubyforge.dango {
|
3
|
+
/**
|
4
|
+
* DangoのAS3Mode用のクラス
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
|
8
|
+
import org.rubyforge.dango.*;
|
9
|
+
import flash.events.*;
|
10
|
+
|
11
|
+
public class DangoAS3Mode implements IEventDispatcher {
|
12
|
+
|
13
|
+
private var dispatcher:EventDispatcher; // Event送出用
|
14
|
+
|
15
|
+
private var dango_client:DangoClientFramework;
|
16
|
+
public var all_sid_list:Array = []; //接続しているクライアントのsidの一覧
|
17
|
+
|
18
|
+
/**
|
19
|
+
* DangoAS3Mode
|
20
|
+
* コンストラクタ
|
21
|
+
*
|
22
|
+
* @param config:*
|
23
|
+
* @return void
|
24
|
+
*/
|
25
|
+
public function DangoAS3Mode(config:*):void{
|
26
|
+
// Event送出用
|
27
|
+
dispatcher = new EventDispatcher(this);
|
28
|
+
|
29
|
+
// DangoClientFrameworkコネクション
|
30
|
+
try{
|
31
|
+
dango_client = new DangoClientFramework(config);
|
32
|
+
} catch(error:Error) {
|
33
|
+
trace(error.message);
|
34
|
+
}
|
35
|
+
|
36
|
+
// エラー時のイベントリスナー
|
37
|
+
dango_client.addEventListener("DangoError", connection_error);
|
38
|
+
|
39
|
+
// イベント
|
40
|
+
dango_client.addEventListener("dango__connect" , dango__connect);
|
41
|
+
dango_client.addEventListener("dango_notice_send_object" , dango_notice_send_object);
|
42
|
+
dango_client.addEventListener("dango_notice_current_sids", dango_notice_current_sids);
|
43
|
+
}
|
44
|
+
|
45
|
+
// 接続エラー
|
46
|
+
private function connection_error(evt:DangoErrorEvent):void {
|
47
|
+
this.dispatchEvent(new DangoErrorEvent("DangoError", evt.code, evt.message));
|
48
|
+
}
|
49
|
+
|
50
|
+
/**
|
51
|
+
* send_object
|
52
|
+
* クライアント同士のデータ送信
|
53
|
+
*
|
54
|
+
* @param object:Objcet
|
55
|
+
* @param sids:Array
|
56
|
+
* @return void
|
57
|
+
*/
|
58
|
+
public function send_object(object:Object, sids:Array):void {
|
59
|
+
dango_client.send_action("send_object", {"object":object, "sids":sids}, true);
|
60
|
+
// dango_client.send_action("send_object", object, true);
|
61
|
+
}
|
62
|
+
|
63
|
+
/**
|
64
|
+
* dango__connect
|
65
|
+
* 接続しているクライアントのsidの一覧の記録
|
66
|
+
*
|
67
|
+
* @return Array
|
68
|
+
*/
|
69
|
+
private function dango__connect(evt:DangoReceiveEvent):void {
|
70
|
+
this.dispatchEvent(new DangoAS3ModeReceiveEvent("dango__connect", {}));
|
71
|
+
}
|
72
|
+
|
73
|
+
/**
|
74
|
+
* dango_notice_send_object
|
75
|
+
* 接続しているクライアントのsidの一覧取得
|
76
|
+
*
|
77
|
+
* @return Array
|
78
|
+
*/
|
79
|
+
private function dango_notice_send_object(evt:DangoReceiveEvent):void {
|
80
|
+
var recv_data:Object = evt.receive_data;
|
81
|
+
|
82
|
+
this.dispatchEvent(new DangoAS3ModeReceiveEvent("dango_as3mode_receive", recv_data));
|
83
|
+
}
|
84
|
+
|
85
|
+
/**
|
86
|
+
* dango_notice_current_sids
|
87
|
+
* 接続しているクライアントのsidの一覧の記録
|
88
|
+
*
|
89
|
+
* @return Array
|
90
|
+
*/
|
91
|
+
private function dango_notice_current_sids(evt:DangoReceiveEvent):void {
|
92
|
+
var ret:Object = evt.receive_data;
|
93
|
+
all_sid_list = ret["sids"];
|
94
|
+
}
|
95
|
+
|
96
|
+
|
97
|
+
/**
|
98
|
+
* addEventListener
|
99
|
+
* Event送出用
|
100
|
+
*
|
101
|
+
* @param type:String
|
102
|
+
* @param listener:Function
|
103
|
+
* @param useCapture:Boolean = false
|
104
|
+
* @param priority:int = 0
|
105
|
+
* @param useWeakReference:Boolean = false
|
106
|
+
* @return void
|
107
|
+
*/
|
108
|
+
public function addEventListener(type:String, listener:Function,
|
109
|
+
useCapture:Boolean = false,
|
110
|
+
priority:int = 0,
|
111
|
+
useWeakReference:Boolean = false):void{
|
112
|
+
dispatcher.addEventListener(type, listener, useCapture, priority);
|
113
|
+
}
|
114
|
+
|
115
|
+
/**
|
116
|
+
* dispatchEvent
|
117
|
+
* Event送出用
|
118
|
+
*
|
119
|
+
* @param evt:Event
|
120
|
+
* @return Boolean
|
121
|
+
*/
|
122
|
+
public function dispatchEvent(evt:Event):Boolean{
|
123
|
+
return dispatcher.dispatchEvent(evt);
|
124
|
+
}
|
125
|
+
|
126
|
+
/**
|
127
|
+
* hasEventListener
|
128
|
+
* Event送出用
|
129
|
+
*
|
130
|
+
* @param type:String
|
131
|
+
* @return Boolean
|
132
|
+
*/
|
133
|
+
public function hasEventListener(type:String):Boolean{
|
134
|
+
return dispatcher.hasEventListener(type);
|
135
|
+
}
|
136
|
+
|
137
|
+
/**
|
138
|
+
* removeEventListener
|
139
|
+
* Event送出用
|
140
|
+
*
|
141
|
+
* @param type:String
|
142
|
+
* @param listener:Function
|
143
|
+
* @param useCapture:Boolean = false
|
144
|
+
* @return void
|
145
|
+
*/
|
146
|
+
public function removeEventListener(type:String, listener:Function,
|
147
|
+
useCapture:Boolean = false):void{
|
148
|
+
dispatcher.removeEventListener(type, listener, useCapture);
|
149
|
+
}
|
150
|
+
|
151
|
+
/**
|
152
|
+
* willTrigger
|
153
|
+
* Event送出用
|
154
|
+
*
|
155
|
+
* @param type:String
|
156
|
+
* @return Boolean
|
157
|
+
*/
|
158
|
+
public function willTrigger(type:String):Boolean {
|
159
|
+
return dispatcher.willTrigger(type);
|
160
|
+
}
|
161
|
+
|
162
|
+
}
|
163
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
|
2
|
+
package org.rubyforge.dango {
|
3
|
+
import flash.events.*;
|
4
|
+
|
5
|
+
public class DangoAS3ModeReceiveEvent extends Event {
|
6
|
+
private var dango_type:String;
|
7
|
+
public var receive_data:Object;
|
8
|
+
public var receive_count_no:uint;
|
9
|
+
|
10
|
+
public function DangoAS3ModeReceiveEvent(type:String,
|
11
|
+
receive_data_orig:Object,
|
12
|
+
bubbles:Boolean = false,
|
13
|
+
cancelable:Boolean = false) {
|
14
|
+
dango_type = type;
|
15
|
+
receive_data = receive_data_orig;
|
16
|
+
super(type, bubbles, cancelable);
|
17
|
+
}
|
18
|
+
|
19
|
+
public override function clone():Event {
|
20
|
+
return(new DangoAS3ModeReceiveEvent(dango_type, receive_data));
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
@@ -11,7 +11,6 @@ package org.rubyforge.dango {
|
|
11
11
|
import flash.utils.*;
|
12
12
|
import flash.system.*;
|
13
13
|
import flash.display.*;
|
14
|
-
import mx.utils.ObjectUtil;
|
15
14
|
|
16
15
|
import com.adobe.serialization.json.JSON;
|
17
16
|
|
@@ -76,7 +75,7 @@ package org.rubyforge.dango {
|
|
76
75
|
*/
|
77
76
|
public function DangoClientFramework(config:*){
|
78
77
|
trace("DangoClientFramework start...");
|
79
|
-
trace("config=" +
|
78
|
+
trace("config=" + config);
|
80
79
|
|
81
80
|
// 設定ファイルの読み込み
|
82
81
|
if(config.hasOwnProperty("server_host")){ server_host = config.server_host; }
|
@@ -365,7 +364,7 @@ package org.rubyforge.dango {
|
|
365
364
|
// this.dispatchEvent(new DangoErrorEvent("DangoError", DangoErrorCode.IOError, "failed in DangoClientFramework:socket_read_push_cache:receive_cache_do_phase == 0"));
|
366
365
|
|
367
366
|
// キャッシュに残っているデータを消して再度初めから受信できるようにする
|
368
|
-
trace("DangoClientFramework:socket_read_push_cache:receive_cache_do_phase==0:err=" +
|
367
|
+
trace("DangoClientFramework:socket_read_push_cache:receive_cache_do_phase==0:err=" + err);
|
369
368
|
receive_cache_do_phase = 0; // 長さから取得する
|
370
369
|
receive_cache_byta = new ByteArray; // キャッシュを空にする
|
371
370
|
break;
|
@@ -416,7 +415,7 @@ package org.rubyforge.dango {
|
|
416
415
|
// this.dispatchEvent(new DangoErrorEvent("DangoError", DangoErrorCode.IOError, "failed in DangoClientFramework:socket_read_push_cache:receive_cache_do_phase == 1"));
|
417
416
|
|
418
417
|
// キャッシュに残っているデータを消して再度初めから受信できるようにする
|
419
|
-
trace("DangoClientFramework:socket_read_push_cache:receive_cache_do_phase==1:err=" +
|
418
|
+
trace("DangoClientFramework:socket_read_push_cache:receive_cache_do_phase==1:err=" + err);
|
420
419
|
receive_cache_do_phase = 0; // 長さから取得する
|
421
420
|
receive_cache_byta = new ByteArray; // キャッシュを空にする
|
422
421
|
break;
|
@@ -451,6 +450,7 @@ package org.rubyforge.dango {
|
|
451
450
|
this.sid = recv_data["_sid"];
|
452
451
|
has_sid = true;
|
453
452
|
if(is_debug){ trace("DangoClientFramework:this.sid=" + this.sid + " server_time=" + server_time); }
|
453
|
+
this.dispatchEvent(new DangoReceiveEvent("dango__connect", {}, count_no));
|
454
454
|
|
455
455
|
} else { // 通常のデータならイベント発生
|
456
456
|
if(is_debug){ trace("DangoClientFramework:dispatchEvent:dango_" + notice_name + " server_time=" + server_time); }
|
@@ -532,7 +532,7 @@ package org.rubyforge.dango {
|
|
532
532
|
// if(!is_connect){ throw new DangoError("error:not connect"); } // 接続されていない場合はエラー
|
533
533
|
|
534
534
|
// 送信データの作成
|
535
|
-
var send_obj_dup:Object =
|
535
|
+
var send_obj_dup:Object = DangoUtil.deep_copy(send_obj);
|
536
536
|
send_obj_dup["_action_name"] = action_name;
|
537
537
|
send_obj_dup["_return_id"] = (new Date()).time;
|
538
538
|
|
@@ -557,8 +557,6 @@ package org.rubyforge.dango {
|
|
557
557
|
* @return void
|
558
558
|
*/
|
559
559
|
public function send_data_to_server( send_obj:Array ):void {
|
560
|
-
// if(is_debug){ trace("DangoClientFramework:send_data_to_server:send_obj=" + ObjectUtil.toString(send_obj)); }
|
561
|
-
|
562
560
|
var encode_type:uint = default_encode_type;
|
563
561
|
|
564
562
|
// データが空ならJSONencodeしない
|
@@ -590,14 +588,36 @@ package org.rubyforge.dango {
|
|
590
588
|
}
|
591
589
|
|
592
590
|
/**
|
593
|
-
*
|
591
|
+
* dango__connect の雛形
|
594
592
|
* すべてのdango通知の前処理用のメソッド
|
595
593
|
* オーバーライドして使うもの
|
596
594
|
*
|
597
595
|
* @param evt:DangoReceiveEvent
|
598
596
|
* @return void
|
597
|
+
protected function dango__connect(evt:Object):void {
|
598
|
+
}
|
599
599
|
*/
|
600
|
-
|
600
|
+
|
601
|
+
/**
|
602
|
+
* dango__after_filter の雛形
|
603
|
+
* すべてのdango通知の前処理用のメソッド
|
604
|
+
* オーバーライドして使うもの
|
605
|
+
*
|
606
|
+
* @param evt:DangoReceiveEvent
|
607
|
+
* @return void
|
608
|
+
protected function dango__after_filter(evt:Object):void {
|
601
609
|
}
|
610
|
+
*/
|
611
|
+
|
612
|
+
/**
|
613
|
+
* dango__after_filter の雛形
|
614
|
+
* すべてのdango通知の前処理用のメソッド
|
615
|
+
* オーバーライドして使うもの
|
616
|
+
*
|
617
|
+
* @param evt:DangoReceiveEvent
|
618
|
+
* @return void
|
619
|
+
protected function dango__after_filter(evt:Object):void {
|
620
|
+
}
|
621
|
+
*/
|
602
622
|
}
|
603
623
|
}
|