DATABASE_URIとMONGOLAB_URIのみapplication.confで設定 それ以外の環境変数は各モジュールで直接sys.envで読んでいる
- messages
- messages.ja
- messages.origin
とあるが編集するのは「messages.origin」のみ
production用とsandbox用のWSDLが置いてある
sandboxを使用する場合は環境変数で切り替える
APIのバージョンは27だが特に変える必要はない
public以下のものを直接使用(未加工) 主なスクリプトは以下の2つ
- sqlsync.js - アプリ本体
- sqlgrid.js - 任意のSQL実行結果をjqGridで表示するライブラリ(SelectTool.scalaと連動)
そんなに多くないので全ファイルの役割を解説
メインのController。主要な処理は全部ここ
messages.jsを生成するController。国際化対応アプリ開発時の定番
SelectToolにAccessControlによるアクセス制限と環境変数による変数の置換を付け加えたもの
同期処理の実行。 実際の同期処理はflectSalesforceのAPIを実行しているだけ
スケジュール管理 次のスケジュール実行時間を計算してAkkaのschedulerに登録している
設定情報の保存 traitになっていて現在はMongoStorageManagerだけが実装されている
IP制限、ベーシック認証によるアクセス制限
JqGrid用のユーティリティ
Requestハンドリング用のユーティリティ
jqGridに任意のSQLを表示するためのController
messagesの自動生成とherokuに対するポーリング
終了時に
Can't get ClosableLazy value after it has been closed
というExceptionが発生しているが多分気にする必要はない