Overview

Namespaces

  • SellerLabs
    • Snagshout
      • Model
      • Normalizer
      • Resource
      • Utils

Classes

  • SellerLabs\Snagshout\Client
  • SellerLabs\Snagshout\Model\AmazonData
  • SellerLabs\Snagshout\Model\Attribute
  • SellerLabs\Snagshout\Model\BookmarkMetadata
  • SellerLabs\Snagshout\Model\Campaign
  • SellerLabs\Snagshout\Model\Category
  • SellerLabs\Snagshout\Model\Image
  • SellerLabs\Snagshout\Model\ImageMetadata
  • SellerLabs\Snagshout\Model\Links
  • SellerLabs\Snagshout\Model\Product
  • SellerLabs\Snagshout\Model\PromoCode
  • SellerLabs\Snagshout\Model\Promotion
  • SellerLabs\Snagshout\Model\Shipping
  • SellerLabs\Snagshout\Model\V1GetCampaignsResponse
  • SellerLabs\Snagshout\Model\V1GetCategoriesResponse
  • SellerLabs\Snagshout\Model\V1GetStatus
  • SellerLabs\Snagshout\Model\V1GetStatusResponse
  • SellerLabs\Snagshout\Normalizer\AmazonDataNormalizer
  • SellerLabs\Snagshout\Normalizer\AttributeNormalizer
  • SellerLabs\Snagshout\Normalizer\BookmarkMetadataNormalizer
  • SellerLabs\Snagshout\Normalizer\CampaignNormalizer
  • SellerLabs\Snagshout\Normalizer\CategoryNormalizer
  • SellerLabs\Snagshout\Normalizer\ImageMetadataNormalizer
  • SellerLabs\Snagshout\Normalizer\ImageNormalizer
  • SellerLabs\Snagshout\Normalizer\LinksNormalizer
  • SellerLabs\Snagshout\Normalizer\NormalizerFactory
  • SellerLabs\Snagshout\Normalizer\ProductNormalizer
  • SellerLabs\Snagshout\Normalizer\PromoCodeNormalizer
  • SellerLabs\Snagshout\Normalizer\PromotionNormalizer
  • SellerLabs\Snagshout\Normalizer\ShippingNormalizer
  • SellerLabs\Snagshout\Normalizer\V1GetCampaignsResponseNormalizer
  • SellerLabs\Snagshout\Normalizer\V1GetCategoriesResponseNormalizer
  • SellerLabs\Snagshout\Normalizer\V1GetStatusNormalizer
  • SellerLabs\Snagshout\Normalizer\V1GetStatusResponseNormalizer
  • SellerLabs\Snagshout\Resource\CampaignResource
  • SellerLabs\Snagshout\Resource\CategoryResource
  • SellerLabs\Snagshout\Resource\FrontResource
  • SellerLabs\Snagshout\SyndicationClient
  • SellerLabs\Snagshout\Utils\NormalizerFactory
  • SellerLabs\Snagshout\Utils\NullNormalizer
  • Overview
  • Namespace
  • Class
  1: <?php
  2: 
  3: namespace SellerLabs\Snagshout\Normalizer;
  4: 
  5: use Joli\Jane\Runtime\Reference;
  6: use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
  7: use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
  8: use Symfony\Component\Serializer\Normalizer\SerializerAwareNormalizer;
  9: class PromotionNormalizer extends SerializerAwareNormalizer implements DenormalizerInterface, NormalizerInterface
 10: {
 11:     public function supportsDenormalization($data, $type, $format = null)
 12:     {
 13:         if ($type !== 'SellerLabs\\Snagshout\\Model\\Promotion') {
 14:             return false;
 15:         }
 16:         return true;
 17:     }
 18:     public function supportsNormalization($data, $format = null)
 19:     {
 20:         if ($data instanceof \SellerLabs\Snagshout\Model\Promotion) {
 21:             return true;
 22:         }
 23:         return false;
 24:     }
 25:     public function denormalize($data, $class, $format = null, array $context = array())
 26:     {
 27:         $object = new \SellerLabs\Snagshout\Model\Promotion();
 28:         if (property_exists($data, 'restriction')) {
 29:             $object->setRestriction($data->{'restriction'});
 30:         }
 31:         if (property_exists($data, 'note')) {
 32:             $object->setNote($data->{'note'});
 33:         }
 34:         if (property_exists($data, 'price')) {
 35:             $object->setPrice($data->{'price'});
 36:         }
 37:         if (property_exists($data, 'dailyLimit')) {
 38:             $object->setDailyLimit($data->{'dailyLimit'});
 39:         }
 40:         if (property_exists($data, 'id')) {
 41:             $object->setId($data->{'id'});
 42:         }
 43:         if (property_exists($data, 'snaggedToday')) {
 44:             $object->setSnaggedToday($data->{'snaggedToday'});
 45:         }
 46:         if (property_exists($data, 'snaggableQuantity')) {
 47:             $object->setSnaggableQuantity($data->{'snaggableQuantity'});
 48:         }
 49:         if (property_exists($data, 'badges')) {
 50:             $values = array();
 51:             foreach ($data->{'badges'} as $value) {
 52:                 $values[] = $value;
 53:             }
 54:             $object->setBadges($values);
 55:         }
 56:         if (property_exists($data, 'elegible')) {
 57:             $object->setElegible($data->{'elegible'});
 58:         }
 59:         if (property_exists($data, 'promoCode')) {
 60:             $object->setPromoCode($this->serializer->deserialize($data->{'promoCode'}, 'SellerLabs\\Snagshout\\Model\\PromoCode', 'raw', $context));
 61:         }
 62:         return $object;
 63:     }
 64:     public function normalize($object, $format = null, array $context = array())
 65:     {
 66:         $data = new \stdClass();
 67:         if (null !== $object->getRestriction()) {
 68:             $data->{'restriction'} = $object->getRestriction();
 69:         }
 70:         if (null !== $object->getNote()) {
 71:             $data->{'note'} = $object->getNote();
 72:         }
 73:         if (null !== $object->getPrice()) {
 74:             $data->{'price'} = $object->getPrice();
 75:         }
 76:         if (null !== $object->getDailyLimit()) {
 77:             $data->{'dailyLimit'} = $object->getDailyLimit();
 78:         }
 79:         if (null !== $object->getId()) {
 80:             $data->{'id'} = $object->getId();
 81:         }
 82:         if (null !== $object->getSnaggedToday()) {
 83:             $data->{'snaggedToday'} = $object->getSnaggedToday();
 84:         }
 85:         if (null !== $object->getSnaggableQuantity()) {
 86:             $data->{'snaggableQuantity'} = $object->getSnaggableQuantity();
 87:         }
 88:         if (null !== $object->getBadges()) {
 89:             $values = array();
 90:             foreach ($object->getBadges() as $value) {
 91:                 $values[] = $value;
 92:             }
 93:             $data->{'badges'} = $values;
 94:         }
 95:         if (null !== $object->getElegible()) {
 96:             $data->{'elegible'} = $object->getElegible();
 97:         }
 98:         if (null !== $object->getPromoCode()) {
 99:             $data->{'promoCode'} = $this->serializer->serialize($object->getPromoCode(), 'raw', $context);
100:         }
101:         return $data;
102:     }
103: }
API documentation generated by ApiGen