Передача Nullable-параметра в библиотеку конечных точек облака - PullRequest
0 голосов
/ 20 мая 2018

Я работаю с Google Cloud Endpoint для Java.И я создаю некоторые конечные точки.Вот один из них.

public User registerUser(@Named("lat") double lat, @Named("lng") double lng, @Nullable @Named("contactList") List<Long> contactList, User user){

Как видите, contactList помечается как @Nullable, иногда мне нужен этот параметр, а иногда нет.Все работает нормально, когда я тестирую его на API Explorer

После всего этого я создал клиентскую библиотеку для Android.И я использую это так.

MyApi.Builder builder = new MyApi.Builder(AndroidHttp.newCompatibleTransport(), new JacksonFactory(), null);
    MyApi service = builder.build();

 service.account().registerUser(31.024937, 73.847913, user);

registerUser предоставляет только три аргумента.Если я хочу передать contactList как я могу это сделать?Нет возможности передать его в registerUser.Если я пытаюсь пройти мимо, появляется ошибка.

1 Ответ

0 голосов
/ 20 мая 2018

Наконец-то я нашел ответ сам.Посмотрев некоторый код сгенерированной библиотеки, я обнаружил, что все @Nullable параметры не могут быть переданы в функцию, но с помощью этой функции проверьте приведенный ниже код для лучшего понимания.

 service.account().registerUser(31.024937, 73.847913, user)
 .setContactList(contactList).execute();

Сгенерированная библиотека автоматически создает функцию для установки @Nullable параметров, таких как setContactList().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...