RPC タイプの API アプリを実装しています。Java on play フレームワークを使用しています。私はすでにswaggerモジュールを使用して、各「URL」がコントローラーの異なる静的関数にマップされている単純なrest APIのswaggerドキュメントを生成しました。ただし、ここでは、1 つの URL と 1 つの静的関数を API ドキュメントの複数のアクションにマップする必要があります。
基本的な構造はかなり古典的です
abstract class RPCActionRequest implements Serializable{
public int actionCode; //this might be an enum too
public RPCActionParam param;
}
interface RPCActionParam implements Serializable{
}
abstract class RPCAction {
public int actionCode;
public abstract RPCActionResult execute(RPCActionParam param);
}
interface RPCActionResult implements Serializable{
public int responseCode; //sUCCESS, ERROR, FAIL, ... whatever errors my system needs to
//communicate to the client.
}
すべてのアクションは、play フレームワークのルート ファイルなどで、RPCController マッパーの同じ静的関数にマップされます。
/rpc/ routes.RPCController.rpc()
swagger および swagger-core doc 生成を使用して、すべてのアクション、param クラス、および結果クラスを文書化するにはどうすればよいですか? swagger-play2 モジュールの @Api* アノテーションだけを使用することは可能ですか?
参照:
-Swagger : https://developers.helloreverb.com/swagger/
-Swagger-core : https://github.com/wordnik/swagger-core