コードウィジェットのバックエンド実装
AbstractCodeTemplateの実装
AbstractCodeTemplate実装は、バックエンドでコードウィジェットを制御します。これは、コードウィジェットプラグインを強化するJava クラスです。Yellowfinはこのクラスの実装を使用して、Yellowfin インスタンスでコードウィジェットを利用可能にする方法を決定します。このウィジェット内で実行できるイベントおよびバックエンドリクエストが多数あります。
必要なメソッド
次のメソッドは、AbstractCodeTemplate実装内で上書きされなくてはいけません。
メソッド名 | 説明 | 例 |
String getTemplateTitle() | ウィジェットの名前です。これは、ウィジェットがキャンバスウィジェットパネルで利用可能になったときにユーザーに表示される名前になります。 | public String getTemplateTitle() { return “My Code Widget”; } |
void setupResources() | ウィジェットが必要とする可能性のある任意のフロントエンドリソースを定義するメソッドです。これは、クラスが初期化されたときに呼び出されます。ここで追加されたリソースは、フロントエンドがロードできるファイルをYellowfinに通知します。こちらで定義されていないファイルをフロントエンドからロードしようとすると、却下されます。 addResource(Resource); 関数を使用して、リソースに追加します。リソースオブジェクトについては、こちらを参照してください。 こちらで追加するすべてのリソースは、AbstractCodeTemplate実装に関連づけられます。 | こちらの関数で定義されたすべてのリソースは、AbstractCodeTemplateの場所からの相対的なものです。 そのため、例えばJava パッケージが、my.code.widgetの場合、my_widget.jsはmy.code.widget.resourceパッケージに配置できます。 my.code.widget 次を使用してmy_widget.jsを定義できます。 void setupResources() { addResource(new Resource(“resource/my_widget.js”, “text/javascript”)); } |
String getMainJavascriptPath() | コードウィジェットのエントリーポイントを定義します。これは、Yellowfinがロードする最初のファイルになり、その後呼び出されます。選択するファイルは、コンストラクタを返す必要があります。詳細はJavaScript項目を参照してください。 | String getMainJavascriptPath() { return “my_widget.js”; } |
CanvasWidgetPanel getPanel(CanvasWidgetPanelInfo panelInfo) | ウィジェットプロパティパネルを定義するために使用され、ウィジェットのカスタムオプションを定義することができます。こちらのメソッドからnullが返される場合は、デフォルトのウィジェットプロパティパネルが使用されます。 | CanvasWidgetPanel getPanel(CanvasWidgetPanelInfo panelInfo) { return new MyCodeWidgetPanel(panelInfo); } //To use the default canvas panel CanvasWidgetPanel getPanel(CanvasWidgetPanelInfo panelInfo) { return null; } 詳細は、ウィジェットプロパティパネル項目を参照してください。 |
次のステップ
バックエンドコードの記述が完了したら、次はフロントエンドコードに着手します。
コードウィジェット開発をさらにサポートする、サンプルコードやAPIリンク、より詳細な説明は、こちらからご確認いただけます。