30日間の無料評価版をお試しいただけます。

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Anchor
top
top

 


コネクターメタデータは、抽象Java class JDBCMetaDataの実装です。これは、サードパーティ製ソースへの接続を作成するために、ユーザーへどのような接続詳細を要求する必要があるのかを定義します。これには、ユーザー名、トークン、ホスト名、ポート番号、アカウント名、などのパラメーターが含まれます。

メタデータ関数一覧

...

ClasstopLink

...


JDBCMetaData classは、データソースの接続ウィザードを構築するために使用されます。基礎的な接続ウィザードを作成するためには、以下の関数を実装しなくてはいけません。

...

 



JDBCMetaDataでは、以下のヘルパー関数にアクセスすることもできます。

 



メタデータ関数の定義


Styleclass
ClasstopLink

ページトップ


public JDBCMetaData(); (Constructor) 

...

属性

説明

sourceName データソースのテキスト名です。例:Twitter Connector
sourceCode データソースに一意のテキストコードです。例:TWITTER_CONNECTOR
driverNameデータソースのテキストclass名です。例:com.code.TwitterConnector
sourceType こちらは常に、「DBType.THIRDPARTY」と記述します。

...


実装例

Code Block
languagejava
public SkiTeamMetaData() {
 
            super();
 
            sourceName = "Ski Team Source";
            sourceCode = "SKI_DATA_SOURCE";
            driverName = SkiTeamDataSource.class.getName();
            sourceType = DBType.THIRD_PARTY;
 
}

...


public void initialiseParameters(); 


Styleclass
ClasstopLink

ページトップ

この関数は、パラメーターを登録する場所です。登録されたパラメーターは、このデータソースへの接続を作成する時に、ユーザーへ表示されます。必要なパラメーターを追加する時には、「addParameter()」関数を使用します。

 



実装例

Code Block
languagejava
public void initialiseParameters() {
 
 
        super.initialiseParameters();
 
 
        addParameter(new Parameter("HELP", "Connection Details", "Text", TYPE_NUMERIC, DISPLAY_STATIC_TEXT, null, true));
 
 
        Parameter p = new Parameter("URL", "1. Request Access PIN", "Connect to twitter to receive a PIN for data access",TYPE_UNKNOWN, DISPLAY_URLBUTTON, null,      true);
        p.addOption("BUTTONTEXT", "Request URL");
        p.addOption("BUTTONURL", "http://google.com");
        addParameter(p);
 
 
        addParameter(new Parameter("PIN", "2. Enter PIN", "Enter the PIN recieved from Twitter", TYPE_NUMERIC, DISPLAY_TEXT_MED, null, true));
 
 
        p = new Parameter("POSTPIN", "3. Validate Pin", "Validate the PIN", TYPE_TEXT, DISPLAY_BUTTON, null, true);
        p.addOption("BUTTONTEXT", "Validate PIN");
        addParameter(p);
 
 
        addParameter(new Parameter("ACCESSTOKEN", "Access Token", "AccessToken that allows access to the Twitter API", TYPE_TEXT, DISPLAY_PASSWORD, null, true));
 
 
        addParameter(new Parameter("ACCESSTOKENSECRET", "Access Token Secret", "AccessToken Password that allows access to the Twitter API", TYPE_TEXT, DISPLAY_PASSWORD, null, true));
 
 
}

...

 



protected final void addParameter(Parameter p); 


Styleclass
ClasstopLink

ページトップ

パラメーターオブジェクトには、以下のメタデータの定義が必要です。

...

Code Block
languagejava
Parameter p = new Parameter("URL", " Access PIN", "Connect to twitter to receive a PIN for data access",TYPE_UNKNOWN, DISPLAY_URLBUTTON, null, true);
 
p.addOption("BUTTONTEXT", "Request URL");
p.addOption("BUTTONURL", "http://google.com");
addParameter(p);

...


public String buttonPressed(String buttonName) throws Exception; 

...


ページトップ

これは、ボタンUI要素のコールバックです。このbuttonNameという関数パラメーターは、コールバック関数と呼ばれるボタンのユニークキーを保持します。

...

ボタンコールバックは、プログラムに従い、他のパラメーターの値の変更に使用されます。パラメーターは、setParameterValue(String key, String value)とともに設定されます。 


public void setParameterValue(String key, Object value); 

...


ページトップ

パラメーターの値を設定します。関数パラメーターキーは、設定するパラメーターの一意のキーであり、値はそれに割り当てる値です。 



public final Object getParameterValue(String key); 

...


ページトップ

パラメーターの値を取得します。関数パラメーターキーは、フェッチするパラメーター値の一意のキーです。 



public boolean isParameterRequired(String key); 


Styleclass
ClasstopLink

ページトップ

依存フィルターを実装するためには、「isParameterRequired()」関数を上書きすることができます。他のパラメーターの値に基づき、ロジックは一意のキーを持つパラメーターを表示する必要があるかどうかを決定することができます。

...

Code Block
languagejava
public boolean isParameterRequired(String key) {
 
    if ("DOMAIN".equals(key)) {
 
        if ("SQL".equals(getParameterValue("WINDOWSAUTH"))) {
 
            return false;
 
        }
 
    }
 
    return true;
 
}

...


public boolean hasDependentParameters(String key); 

...

ClasstopLink

...


一意のキーを持つパラメーターが、依存パラメーターを持つ場合にtrueを返します。この関数は、このパラメーターの値の変更に基づき、他のパラメーターの可視性を更新する必要があるかどうかを決定するために使用します。

 

 

 





Section


Column
width40%
前項:コネクターの前提条件


Column
width30%

 



Column
width30%

後項:データソースの定義

...



horizontalrule

Styleclass
ClasstopLink

ページトップ