/**
  * @param StaticSegment $staticSegment
  * @return null|StaticSegment
  */
 protected function addStaticListSegment(StaticSegment $staticSegment)
 {
     if (!$staticSegment->getOriginId()) {
         $response = $this->transport->addStaticListSegment(['id' => $staticSegment->getSubscribersList()->getOriginId(), 'name' => $staticSegment->getName()]);
         if (!empty($response['id'])) {
             $staticSegment->setOriginId($response['id']);
             $this->logger->debug(sprintf('StaticSegment with id "%s" added', $staticSegment->getOriginId()));
             return $staticSegment;
         }
     }
     return null;
 }
 /**
  * @param StaticSegment $value
  * @param UniqueStaticSegmentNameConstraint|Constraint $constraint
  */
 public function validate($value, Constraint $constraint)
 {
     if ($value instanceof StaticSegment && !$value->getOriginId()) {
         $this->transport->init($value->getChannel()->getTransport());
         $segments = $this->transport->getListStaticSegments($value->getSubscribersList());
         foreach ($segments as $segment) {
             if ($segment['name'] == $value->getName()) {
                 $this->context->addViolationAt('name', $constraint->message);
                 break;
             }
         }
     }
 }