Como as classes e os objetos funcionam

Nesta página, descreveremos a relação entre classes e objetos, que é fundamental para o funcionamento da API Google Pay for Passes. Abordaremos também como os objetos são vinculados aos usuários.

Classes e objetos

A API Google Pay for Passes usa o conceito de objeto (object) para representar digitalmente versões físicas de cartões de fidelidade, vales-presente, ofertas, ingressos de eventos, cartões de embarque para voos e bilhetes de transporte de um usuário. A API usa o conceito de classe (class) para permitir o gerenciamento de dados comuns entre todos os usuários. Para abordar casos de uso específicos, cada indústria tem um objeto e uma classe próprios.

Por exemplo, todos os cartões de fidelidade de um usuário no app Google Pay são representados por um LoyaltyObject, que referencia LoyaltyClass. Da mesma maneira, todos os vales-presente em um app Google Pay de um usuário são representados por um GiftCardObject, que referencia GiftCardClass.

Cada objeto referencia uma classe. Assim, fica mais fácil fazer alterações que precisam ser aplicadas a todos os cartões de fidelidade, vales-presente, ofertas, ingressos de eventos, cartões de embarque de voos e bilhetes de transporte.

Uma classe contém dados comuns entre objetos. Por exemplo, LoyaltyClass armazena o programName, enquanto LoyaltyObject armazena o accountId de uma pessoa. A relação de classe e objeto pode ser de um para um, mas não necessariamente. Uma classe pode ser referenciada por muitos objetos.

As alterações feitas na classe ou no objeto são propagadas imediatamente. Os usuários podem ver essas alterações no app Google Pay quando fazem a sincronização.

Objetos e vinculação

A API Google Pay for Passes usa o conceito de Object para representar cartões de fidelidade, vales-presente, ofertas, ingressos para eventos, cartões de embarque para voos e bilhetes de transporte. Por exemplo, cada cartão de fidelidade de um usuário no app Google Pay é representado por um LoyaltyObject.

Quando um usuário salva cartões de fidelidade, vales-presente, ofertas, ingressos para eventos, cartões de embarque para voos e bilhetes de transporte usando o botão Salvar no Google Pay, a API insere um Object e estabelece um vínculo entre o objeto e o usuário. Isso significa que, se o usuário clicar no botão novamente, um novo Object não será inserido. Como um link já existe, o Object não é vinculado novamente.

Se um usuário remover o cartão do app Google Pay, o evento Object ao qual ele foi vinculado não será removido. Em vez disso, o link é removido. Se o usuário clicar novamente no botão Salvar no Google Pay, ele restabelecerá o vínculo em vez de criar um novo Object.

Ao desenvolver seu cartão, um novo Object id deve ser usado entre os salvamentos, já que a API não reinsere um Object que corresponda a um id existente.

Lembre-se de que remover um cartão da conta não remove o Object. O Object só é desvinculado da sua conta.