クラスとオブジェクトの関係

このページでは、Google Pay API for Passes の仕組みの基礎となるクラスとオブジェクトの関係について説明します。また、どのようにしてオブジェクトがユーザーにリンクされるかについても説明します。

クラスとオブジェクト

Google Pay API for Passes は、オブジェクトのコンセプトを使用して、1 人のユーザーの実際のポイントカード、ギフトカード、クーポン、イベント チケット、搭乗券、乗車券をデジタル化します。API は、クラスのコンセプトを使用して、すべてのユーザーに共通するデータの管理を可能にします。特定のユースケースに対応するため、それぞれのカテゴリに独自のオブジェクトとクラスがあります。

たとえば、ユーザーが Google Pay アプリに保存しているポイントカードは、LoyaltyClass を参照する LoyaltyObject で表されます。同様に、ユーザーの Google Pay アプリに保存されているギフトカードは、GiftCardClass を参照する GiftCardObject で表されます。

それぞれのオブジェクトがクラスを参照するので、すべてのポイントカード、ギフトカード、クーポン、イベント チケット、搭乗券、乗車券に変更を簡単に適用できます。

クラスには、オブジェクト全体の共通データが含まれます。たとえば、LoyaltyClassprogramName を格納しますが、LoyaltyObject は個々の accountId を格納します。クラスとオブジェクトの関係は 1 対 1 にできますが、必ずしもそうする必要はありません。1 つのクラスは複数のオブジェクトから参照可能です。

クラスまたはオブジェクトに対する変更はすぐに反映されます。これらの変更は、同期後に Google Pay アプリで確認できます。

オブジェクトとリンク

Google Pay API for Passes は Object というコンセプトを使用して、ポイントカード、ギフトカード、クーポン、イベント チケット、フライトの搭乗券、交通機関のパスを表します。たとえば、ユーザーが Google Pay アプリに保存しているポイントカードはそれぞれ、1 つの LoyaltyObject で表されます。

ユーザーが [Google Pay に保存] ボタンを使用してポイントカード、ギフトカード、クーポン、イベント チケット、フライトの搭乗券、乗車券を保存すると、API によって Object が挿入され、オブジェクトとユーザー間のリンクが設定されます。ユーザーがボタンを再度クリックしても、新しい Object は挿入されません。リンクがすでに存在するため、Object は再度リンクされません。

ユーザーが Google Pay アプリからパスを削除しても、リンクされた Object は削除されません。代わりに、リンクが解除されます。ユーザーが [Google Pay に保存] ボタンを再度クリックすると、リンクが再設定されます。新しい Object は作成されません。

API は既存の id と一致する Object を再挿入しないため、パスを開発するときには、保存処理の間で新しい Object id を使用する必要があります。

アカウントからパスを削除しても、Object は削除されません。Object とアカウントのリンクが解除されるだけです。