既にデータアクセスAPIを用いて処理カスタマイズAPIの登録が完了している前提です。
以下、ebisumartからリクエストを受信した後の処理でライブラリを利用できる部分を説明します。
HttpServletRequestからCustomizeApiRequest(処理カスタマイズAPI用リクエストオブジェクト)を作成します。
CustomizeApiRequestを作成する際、内部的にHMACのチェックが行われます。チェックに失敗した場合、RuntimeExceptionであるEbisuAppRequestExceptionがthrowされます。
CustomizeApiRequestのメソッドで処理カスタマイズAPIの説明にある各パラメータを取得できます。
// アプリケーションのパスワード
String appPass = DataAccessClientHolder.getAppPass();
// requestはHttpServletRequestオブジェクトです。
CustomizeApiRequest apiReq = new CustomizeApiRequest(request, appPass);
// ebisumart No取得
String shopId = apiReq.getShopId();
処理カスタマイズAPI用レスポンスオブジェクトの扱い方を説明します。
// 処理カスタマイズAPI用レスポンスオブジェクトを作成
CustomizeApiResponse apiRes = new CustomizeApiResponse();
Map map = new HashMap<>();
map.put("FREE_ITEM1", "test");
// 結果としてMapをセットします。
// 処理カスタマイズAPIに合わせて各種オブジェクトをセットしてください。
res.setResult(map);
// 画面上部に表示するメッセージをセットします。
res.addMessage("画面上部に表示するメッセージです。", 3);
// responseはHttpServletResponseオブジェクトです。
PrintWriter writer = response.getWriter();
// 結果をJSON化します。
JSON.encode(apiRes, writer);