Я хочу развернуть v2 моего API конечной точки google. в этой версии 2, я добавил ApiMethod с параметромGoogle clould endpoint Метод Api, сгенерированный без обязательного параметра
/**
* An endpoint class we are exposing
*/
@Api(
name = "myApi",
version = "v2",
namespace = @ApiNamespace(
ownerDomain = "awesome.me.com",
ownerName = "awesome.me.com",
packagePath = "api/v2"
)
)
public class MyEndpointV2 extends MyEndpoint{
@ApiMethod(name = "getContact")
public Charges getContact(ContactRequest request){
return ContactHandler.getContact(request);
}
}
Как вы можете видеть, мой V2 расширяет мой V1 Апи, так что я могу получить доступ ко всем моим методам V1. проблема в том, что мой новый метод генерируется без параметраContactRequest
. то есть, когда я пытаюсь вызвать метод в своем модуле приложения, он выглядит следующим образом:
myapi.getContact()
В чем может быть проблема? Я пытался очистить построить мой проект, но ничего не происходит
EDIT Вот MyEndPoint класс
@Api(
name = "myApi",
version = "v1",
namespace = @ApiNamespace(
ownerDomain = "awesome.me.com",
ownerName = "awesome.me.com",
packagePath = ""
)
)
public class MyEndpoint{
@ApiMethod(name = "getPeriod")
public Period getPeriod(@Named("days")long days) {
return Handler.getPeriod(days);
}
//other api methods
}
Вы также можете отправить класс MyEndpoint? –
@MichaelMeyer Я сделал так –
@MichaelMeyer, когда я меняю имя метода api из 'getContact()' на нечто вроде 'contact()' i могу передать параметр 'ContactRequest'. Почему так? –