public abstract class NbService extends java.lang.Object implements NbServiceOffline
NbServiceBuilder.build()でインスタンスを生成する。
マルチテナントモードに設定しない限り、アプリケーションは本インスタンスをシングルトンとして扱うべきである。
| コンストラクタと説明 |
|---|
NbService() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
abstract NbRestExecutor |
createRestExecutor()
REST Executor を生成する
|
static void |
disableClientCertificate()
クライアント証明書認証を無効にする
証明書未登録の状態でコールした場合、何も行わない。
|
static void |
enableMultiTenant(boolean enabled)
マルチテナントモードの有効設定を行う。
|
abstract NbFileBucketManager |
fileBucketManager()
NbFileBucketManagerを取得する。
|
abstract void |
finish()
NebulaServiceの終了。
|
abstract NbHttpRequestFactory |
getHttpRequestFactory()
HTTP リクエストファクトリを取得する
|
static NbService |
getInstance()
シングルトンインスタンスを取得する。
|
static boolean |
isClientCertSet()
クライアント証明書の設定状況を確認する。
|
abstract NbObjectBucketManager |
objectBucketManager()
NbObjectBucketManagerを取得する。
|
abstract void |
setAppId(java.lang.String appId)
アプリケーションIDを設定する(NbService生成後に変更する場合に使用する)。
|
abstract void |
setAppKey(java.lang.String appKey)
アプリケーションキーを設定する(NbService生成後に変更する場合に使用する)。
|
static void |
setClientCertificate(java.io.InputStream clientCert,
java.lang.String password,
java.io.InputStream trustedCaCert)
クライアント証明書認証に使用する証明書を登録する
本設定後、サーバが対応する場合にクライアント証明書による認証が可能となる。
|
abstract void |
setEndPointUri(java.lang.String endPointUri)
エンドポイントURIを設定する(NbService生成後に変更する場合に使用する)。
|
static void |
setProxy(java.lang.String host,
int port)
REST API 呼び出しにおける HTTP プロキシサーバを設定する。
|
abstract void |
setTenantId(java.lang.String tenantId)
テナントIDを設定する(NbService生成後に変更する場合に使用する)。
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitchangeDatabasePassword, getLoginCacheValidTime, registerNetworkEventListener, setLoginCacheValidTime, unregisterNetworkEventListenerpublic static NbService getInstance()
java.lang.IllegalStateException - インスタンスが作成されていないpublic static void enableMultiTenant(boolean enabled)
マルチテナント有効時は、シングルトンインスタンス取得時に IllegalStateException がスローされる。 マルチテナント非対応API発行時も同様。
マルチテナント無効に明示的に設定した場合、NbService のインスタンスは厳密に1つしか作成されない。 (Strict Singleton モード。複数作成すると例外がスローされる)。
なお、マルチテナントモードを使用することができるのは NbGenericServiceBuilder だけである。
NbAndroidServiceBuilder では使用不可。
enabled - 有効public static void setProxy(java.lang.String host,
int port)
本設定後、すべての REST API 呼び出しは指定したプロキシサーバを使用する。 なお、本設定は全 NbService で共通である。
host - プロキシホスト名。null に指定した場合はプロキシサーバを解除する。port - プロキシポート番号public static void setClientCertificate(java.io.InputStream clientCert,
java.lang.String password,
java.io.InputStream trustedCaCert)
throws java.io.IOException,
java.security.GeneralSecurityException
本設定後、サーバが対応する場合にクライアント証明書による認証が可能となる。
本設定は全 NbService で共通である。
NbHttpClient#setAllowSelfSignedCertificate(boolean)がtrueの場合、本設定は無効となる。
clientCert - クライアント証明書(.p12形式: 秘密鍵+クライアント証明書)password - クライアント証明書のインポート用パスワード
パスワード未設定の場合は""(空文字)を指定する。nullの場合は空文字とみなすtrustedCaCert - 信頼するCAの証明書(.pem形式)。通常PrivateCAの証明書を指定する。
"-----BEGIN CERTIFICATE-----","-----END CERTIFICATE-----" で囲まれた部分を証明書として使用する。
nullを設定した場合、システムデフォルトのTrustManagerを使用する。java.io.IOException - 証明書が存在しない、証明書データが取得できないjava.security.GeneralSecurityException - 証明書の検証に問題が発生したjava.lang.IllegalArgumentException - クライアント証明書、CA証明書がどちらも指定されなかったpublic static void disableClientCertificate()
証明書未登録の状態でコールした場合、何も行わない。 本設定は全 NbService で共通である。
public static boolean isClientCertSet()
public abstract NbObjectBucketManager objectBucketManager()
NbObjectBucketManagerImplpublic abstract NbFileBucketManager fileBucketManager()
NbFileBucketManagerpublic abstract void finish()
public abstract void setTenantId(java.lang.String tenantId)
tenantId - テナントIDpublic abstract void setAppId(java.lang.String appId)
appId - アプリケーションIDpublic abstract void setAppKey(java.lang.String appKey)
appKey - アプリケーションキーpublic abstract void setEndPointUri(java.lang.String endPointUri)
endPointUri - エンドポイントURIpublic abstract NbHttpRequestFactory getHttpRequestFactory()
public abstract NbRestExecutor createRestExecutor()