CustomerLinkManagementInterface.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /**
  3. * Copyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License").
  6. * You may not use this file except in compliance with the License.
  7. * A copy of the License is located at
  8. *
  9. * http://aws.amazon.com/apache2.0
  10. *
  11. * or in the "license" file accompanying this file. This file is distributed
  12. * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  13. * express or implied. See the License for the specific language governing
  14. * permissions and limitations under the License.
  15. */
  16. namespace Amazon\Login\Api;
  17. use Amazon\Login\Api\Data\CustomerLinkInterface;
  18. use Magento\Customer\Api\Data\CustomerInterface;
  19. /**
  20. * CustomerLink (Amazon Customer <=> Magento Customer) Management interface.
  21. *
  22. * @api
  23. */
  24. interface CustomerLinkManagementInterface
  25. {
  26. /**
  27. * Load CustomerLink by Customer ID.
  28. *
  29. * @param int $customerId
  30. * @return CustomerLinkInterface Customer link interface.
  31. */
  32. public function getByCustomerId($customerId);
  33. /**
  34. * Create magento customer using amazon customer details
  35. *
  36. * @param AmazonCustomerInterface $amazonCustomer
  37. * @return CustomerInterface|null
  38. */
  39. public function create(\Amazon\Core\Api\Data\AmazonCustomerInterface $amazonCustomer);
  40. /**
  41. * Create or update magento/amazon customer link entity
  42. *
  43. * @param integer $customerId
  44. * @param string $amazonId
  45. * @return void
  46. */
  47. public function updateLink($customerId, $amazonId);
  48. }