getFeatures()メソッドの使用例を次に示します。
// ClientConfigオブジェクトを生成する
ClientConfig cc = new DefaultClientConfig();
// ClientConfigオブジェクトにJSON POJOマッピングを有効にするための
// フィーチャを追加する
cc.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING, true);
// 上記で生成したClientConfigオブジェクトを指定して
// Clientオブジェクトを生成する
Client client = Client.create(cc);
// 読み込みタイムアウト値を設定する
client.getProperties().put(ClientConfig.PROPERTY_READ_TIMEOUT, 10000);
// JSONフォーマットにマッピングするPOJOオブジェクトを生成する
Pojo pojo = new Pojo();
// HTTPリクエストを生成し,マッピングされたPOJOオブジェクトを送信する
ClientRequest cRequest = ClientRequest.create().entity(pojo).type("application/json").build(new URI("http://example.com/example"), "POST");
try{
// HTTPレスポンスをClientResponseオブジェクトとして受信する
ClientResponse cResponse = client.handle(cRequest);
} catch(ClientHandlerException e){
// 適切な処理を実行する
} |
この例では,まず,getFeaturesメソッドで変更可能なプロパティマップを取得し,JSON POJOマッピングを有効にするためのフィーチャを追加しています。次にClientRequestオブジェクトを作成し,Clientクラスのhandle()メソッドを利用してHTTP通信を行い,HTTPレスポンスをClientResponseオブジェクトとして受信しています。HTTPリクエストのエンティティとして送信したPOJOオブジェクトは,JSON POJOマッピングによってJSONフォーマットでマッピングされています。これはJSON POJOマッピングを有効にするためのフィーチャを追加したことで実現されています。