Как устроены классы и объекты

На этой странице описаны отношения между классами и объектами, на основе которых работает Google Pay API for Passes. Кроме того, здесь вы можете узнать, как устанавливается связь объектов с пользователями.

Классы и объекты

В инструменте Google Pay API for Passes физические карты постоянного клиента, подарочные карты, специальные предложения, билеты на мероприятия, посадочные талоны и проездные представлены как цифровые объекты. Для управления данными, идентичными для всех пользователей, в API используются классы. В каждой категории карт имеются соответствующие объекты и классы для конкретных примеров использования.

Например, любая карта постоянного клиента, принадлежащая пользователю приложения Google Pay, представляет собой один объект LoyaltyObject, который относится к определенному классу LoyaltyClass. Аналогично и каждая подарочная карта пользователя приложения Google Pay представляет собой объект GiftCardObject, относящийся к классу GiftCardClass.

Каждый объект относится к определенному классу. Это позволяет проще вносить изменения во все карты постоянного клиента, подарочные карты, специальные предложения, билеты на мероприятия, посадочные талоны и проездные.

Класс содержит данные, общие для всех объектов. Например, в классе LoyaltyClass хранится элемент programName, а в объекте LoyaltyObject содержится accountId пользователя. Класс и объект могут быть связаны по типу "один к одному", но это не всегда так. В некоторых случаях класс может относится и к нескольким объектам.

Изменения, внесенные в класс или объект, начинают действовать незамедлительно. Пользователи увидят эти изменения в приложении Google Pay при синхронизации.

Объекты и связь

В инструменте Google Pay API for Passes физические карты постоянного клиента, подарочные карты, специальные предложения, билеты на мероприятия, посадочные талоны и проездные представлены как цифровые объекты Object. Например, каждая карта постоянного клиента в приложении Google Pay представляет собой один объект LoyaltyObject.

Когда пользователь сохраняет карты постоянного клиента, подарочные карты, специальные предложения, билеты на мероприятия, посадочные талоны и проездные, используя кнопку Сохранить в Google Pay, в API создается новый объект Object и устанавливается связь между объектом и пользователем. При повторном нажатии на эту кнопку не будет создан новый объект Object. Поскольку связь уже существует, нет необходимости устанавливать ее с объектом Object повторно.

Если пользователь удалит свою карту из приложения Google Pay, связанный с ней объект Object не будет удален. Вместо этого будет отключена связь. При повторном нажатии на кнопку Сохранить в Google Pay будет возобновлена прежняя связь без создания нового объекта Object.

При разработке карты следует использовать новый объект Object id между сохранениями, поскольку API повторно не подставляет объект Object, соответствующий существующему идентификатору id.

Помните, что объект Object не исчезает после удаления карты. В этом случае объект Object просто отключается от аккаунта.