com.infoteria.asteria.flowbuilder2.plugin
クラス SQLTool

java.lang.Object
  |
  +--com.infoteria.asteria.flowbuilder2.plugin.SQLTool

public class SQLTool
extends Object

SQLBuilderなどのダイアログをPluginから使用するためのユーティリティクラスです。
SQLBuilderのクラスをASTERIA Designer用のクラスに変換するためのstaticメソッドと サーバーに接続してコネクション情報を取得するためのインスタンスメソッドがあります。


メソッドの概要
static SQLBuilderDialog createSQLBuilderDialog(String title, TableProvider provider, SQLBuilder builder)
          RDBGetコンポーネントで使用しているSQLBuilderを作成します。
static TableSelectDialog createTableSelectDialog(String title, TableProvider provider)
          RDBPutコンポーネントで使用しているテーブル選択ダイアログを作成します。
static SQLOption getDefaultSQLOption()
          デフォルトのSQLOptionを取得します。
 com.infoteria.asteria.util.rdb.ColumnInfo[] getTableFields(String connectionName, String tblname)
          コネクション名とテーブル名を指定してテーブルのフィールド一覧を返します。
 String[] getTableNames(String connectionName)
          コネクション名に対応するテーブル一覧を返します。
 TableProvider getTableProvider(String connectionName)
          コネクション名を指定してそれに対応するTableProviderを取得します。
static void setDefaultSQLOption(SQLOption option)
          デフォルトのSQLOptionを設定します。
static FieldDefinition sqlToFieldDefinition(SQLBuilder builder, String sql)
          SELECT文を分析してFieldDefinitionを作成します。
static UndoableEdit updateCategoryProperty(CategoryProperty prop, Table table)
          第一引数のCategoryPropertyに第2引数のTable情報を反映します。
static UndoableEdit updateFieldDefinition(FieldDefinition fd, String sql, ColumnList select)
          SQLBuilderから取得したSQL文とSELECTリストからの情報を第1引数のFieldDefinitionに反映します。
static UndoableEdit updateFieldDefinition(FieldDefinition fd, Table table)
          第一引数のFieldDefinitionに第2引数のTable情報を反映します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

getDefaultSQLOption

public static SQLOption getDefaultSQLOption()
デフォルトのSQLOptionを取得します。

setDefaultSQLOption

public static void setDefaultSQLOption(SQLOption option)
デフォルトのSQLOptionを設定します。

createSQLBuilderDialog

public static SQLBuilderDialog createSQLBuilderDialog(String title,
                                                      TableProvider provider,
                                                      SQLBuilder builder)
RDBGetコンポーネントで使用しているSQLBuilderを作成します。
パラメータ:
title - ダイアログのタイトル
provider - DB情報を取得するためのProvider
builder - SQLBuilderのモデル情報

createTableSelectDialog

public static TableSelectDialog createTableSelectDialog(String title,
                                                        TableProvider provider)
RDBPutコンポーネントで使用しているテーブル選択ダイアログを作成します。
パラメータ:
title - ダイアログのタイトル
provider - DB情報を取得するためのProvider

updateCategoryProperty

public static UndoableEdit updateCategoryProperty(CategoryProperty prop,
                                                  Table table)
第一引数のCategoryPropertyに第2引数のTable情報を反映します。
返り値はUndo情報ですのでイベントのaddUndoメソッドに渡してください。
(propとtableが同じ内容であった場合はnullが返ります。

updateFieldDefinition

public static UndoableEdit updateFieldDefinition(FieldDefinition fd,
                                                 String sql,
                                                 ColumnList select)
SQLBuilderから取得したSQL文とSELECTリストからの情報を第1引数のFieldDefinitionに反映します。
フィールド名とフィールド数はSQL文の解析から得られます。
解析によって得られたフィールド数がSELECTリストの数と同じであればSELECTリストのデータ型がフィールドに反映されます。 異なる場合は更新前に同名のフィールドがあればその型となりますが、それ以外はString型となります。

updateFieldDefinition

public static UndoableEdit updateFieldDefinition(FieldDefinition fd,
                                                 Table table)
第一引数のFieldDefinitionに第2引数のTable情報を反映します。
返り値はUndo情報ですのでイベントのaddUndoメソッドに渡してください。
(fdとtableが同じ内容であった場合はnullが返ります。

sqlToFieldDefinition

public static FieldDefinition sqlToFieldDefinition(SQLBuilder builder,
                                                   String sql)
SELECT文を分析してFieldDefinitionを作成します。

getTableProvider

public TableProvider getTableProvider(String connectionName)
                               throws IOException
コネクション名を指定してそれに対応するTableProviderを取得します。
パラメータ:
connectionName - RDBコネクション名

getTableNames

public String[] getTableNames(String connectionName)
                       throws IOException
コネクション名に対応するテーブル一覧を返します。
パラメータ:
connectionName - RDBコネクション名

getTableFields

public com.infoteria.asteria.util.rdb.ColumnInfo[] getTableFields(String connectionName,
                                                                  String tblname)
                                                           throws IOException
コネクション名とテーブル名を指定してテーブルのフィールド一覧を返します。
パラメータ:
connectionName - RDBコネクション名
tblName - テーブル名