Как получить значение @Path интерфейса Java из другого класса - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть следующий вид интерфейса.Есть ли способ получить значение @Path ("/ bucket-definitions") "/ bucket-Definitions" из другого класса?

@Path("/bucket-definitions")
@Api(
    value = "Bucket definition",
    authorizations = {@Authorization("token")}
)
public interface BucketDefinitionResource {
    @GET
    @Path("/{operator-id}")
    @Produces({"application/json"})
    @ApiOperation(
        value = "Get all bucket definitions.",
        notes = "Returns all bucket definitions.",
        response = BucketDefinitionList.class
    )
    BucketDefinitionList get(@ApiParam(value = "Bucket definitions of the operator to be fetched.",required = true) @PathParam("operator-id") String var1, @ApiParam(value = "Page number",required = false) @DefaultValue("1") @QueryParam("page") Integer var2, @ApiParam("Items per page") @DefaultValue("20") @QueryParam("per_page") Integer var3);
}

1 Ответ

0 голосов
/ 19 февраля 2019

Я обнаружил следующее решение после попытки несколькими способами.Мне было интересно только получить значение @Path ("/ bucket-definitions"), то есть "bucket-определений".Это не с любого сайта.Так что это полностью мой способ получить значение аннотации @Path.Другие эксперты могут предложить мне лучший способ.Надеюсь, это решение будет полезно для других.

Annotation annotation = BucketDefinitionResource.class.getAnnotations()[0];
    if (annotation.toString().contains("Path")) {
        String SERVICE_NAME = annotation.toString().substring(annotation.toString().indexOf("/"), annotation.toString().indexOf(")"));
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...