public abstract class TerminalFactorySpi extends Object
新しい実装を作成するサービスプロバイダは、Object をパラメータとするコンストラクタを使って TerminalFactorySpi の具象サブクラスを定義します。そのクラスは Provider に登録する必要があります。エンジン type は TerminalFactory です。サービスプロバイダは、abstract クラス CardTerminals、CardTerminal、Card、および CardChannel のサブクラスも実装する必要があります。
たとえば、
file MyProvider.java:
package com.somedomain.card;
import java.security.Provider;
public class MyProvider extends Provider {
public MyProvider() {
super("MyProvider", 1.0d, "Smart Card Example");
put("TerminalFactory.MyType", "com.somedomain.card.MySpi");
}
}
file MySpi.java
package com.somedomain.card;
import javax.smartcardio.*;
public class MySpi extends TerminalFactoySpi {
public MySpi(Object parameter) {
// initialize as appropriate
}
protected CardTerminals engineTerminals() {
// add implementation code here
}
}
TerminalFactory, Provider| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
TerminalFactorySpi()
新しい TerminalFactorySpi オブジェクトを構築します。
|
protected TerminalFactorySpi()
このクラスは、サービスプロバイダインタフェースの一部であり、アプリケーションからは直接アクセスされません。アプリケーションは TerminalFactory オブジェクトを使用します。これは、TerminalFactory.getInstance() メソッドのいずれかを呼び出すことで取得できます。
具象サブクラスは、パラメータとして Object をとるコンストラクタを定義します。これは、アプリケーションで TerminalFactory.getInstance() メソッドのいずれかを呼び出し、アプリケーションで指定された params オブジェクトを受信するときに呼び出されます。
protected abstract CardTerminals engineTerminals()
Copyright © 2005, 2013, Oracle and/or its affiliates. All rights reserved.