Overview of Autoya framework
Autoyaは[Autoya.]でAppのどこからでもAutoyaの全機能へとアクセスできるようになっている。
Autoyaの各機能は内部でモジュール単位で分割、実装されているが、基本的に気にする必要はない。
Autoya.Feature_Function();
一応モジュール単位での使用も可能。(そういう設計にした方がテストとか楽だった。)
例:認証あり通信
例えば認証ありの通信は次のようなコードになる。
var connectionId = Autoya.Http_Get(Autoya.Http_Get(
"https://github.com",
(conId, data) =>
{
// succeeded. data is html string.
},
(conId, code, reason, autoyaStatus) =>
{
// failed.
}
);
Autoyaを介したすべての通信は、認証系の機構を経由してauthenticatedな変換が行われ、サーバへとHttpリクエストを行うようになっている。
レスポンスに関しても認証系の機構を経由してvalidationなどが行われ、tokenやレスポンスヘッダーチェックなどの処理をしつつ、必ずApp側へのレスポンスを提供している。
これらAutoyaを介した機能では、頻繁に OverridePoints コードへとアクセスし、挙動を調整している。
例:認証をかけずにGoogleにアクセスしてレスポンスを得るコード
Autoya経由の通信では認証がかかる。裏を返せば、認証をかけたくない通信は自前でモジュールを使用するなどして自作する必要がある。 次のコードではHTTPConnectionモジュールを直に使ってGETを行なっている。
var http = new AutoyaFramework.Connections.HTTP.HTTPConnection();
var coroutine = http.Get(
string.Empty,// connection id.
null, // request header Dictionary<string, string>.
"https://google.com", // target url.
(string conId, int code, Dictionary<string, string> responseHeader, string result) =>
{
// succeeded.
},
(conId, code, reason, responseHeader) =>
{
// failed to get. do something..
},
10.0 // timeout sec.
);
StartCoroutine(coroutine);
設定ファイルについて
Autoyaの設定ファイルは、Autoya/Settingsフォルダに纏められている。 主に各モジュールの機能をAutoya経由で使用するための設定が初期値としてセットされている。