我正在使用Swagger生成Restful服务的文档。但是,我想在文档中显示响应类可能是子类之一。例如:Rule Class是超类,C1和C2是Rule的子类。
我有一个基于输入返回C1实例或C2实例的restful服务。我写道:
@GET
@Path("/getRule/{id}/{ruleType}")
@Produces({ MediaType.APPLICATION_JSON })
@ApiOperation(value = "returns Rule based on id and type .", notes = "", response = Rule.class)
public Rule getRule(@PathParam("id") Integer id, @PathParam("ruleType") RuleType ruleType) {
Rule result = getRuleBasedOnIdType(id, ruleType);
return result;
}
我需要的是在Swagger文档中显示该服务可能返回C1类模型或C2类模型。我知道我可以为两个响应类(C1或C2)编写2个服务,但我更喜欢为这两个响应提供一个服务。
我想提供一个api而不是很多。输入(例如:id和type)应确定输出类型,并且消费者应该知道将根据类型参数“X”的输入值返回类型X的响应
有人有建议吗?