public function importValue($value)
 {
     if ($value instanceof UnifiedContainer) {
         if ($value->isLazy()) {
             return $this->import([$this->name => $value->getList()]);
         } elseif ($value->getParentObject()->getId() && ($list = $value->getList())) {
             return $this->import([$this->name => ArrayUtils::getIdsArray($list)]);
         } else {
             return parent::importValue(null);
         }
     }
     if (is_array($value)) {
         try {
             if ($this->scalar) {
                 Assert::isScalar(current($value));
             } else {
                 Assert::isInteger(current($value));
             }
             return $this->import([$this->name => $value]);
         } catch (WrongArgumentException $e) {
             return $this->import([$this->name => ArrayUtils::getIdsArray($value)]);
         }
     }
     return parent::importValue($value);
 }
Example #2
0
 /**
  * @throws WrongArgumentException
  * @return Range
  **/
 public function setMax($max = null)
 {
     if ($max !== null) {
         Assert::isInteger($max);
     } else {
         return $this;
     }
     return parent::setMax($max);
 }
Example #3
0
 /**
  * @param integer $id
  * @throws WrongArgumentException
  * @return AMQPChannelInterface
  **/
 public function createChannel($id)
 {
     Assert::isInteger($id);
     if (isset($this->channels[$id])) {
         throw new WrongArgumentException("AMQP channel with id '{$id}' already registered");
     }
     if (!$this->isConnected()) {
         $this->connect();
     }
     $this->channels[$id] = $this->spawnChannel($id, $this)->open();
     return $this->channels[$id];
 }
Example #4
0
 public function importValue($value)
 {
     if (is_array($value)) {
         try {
             Assert::isInteger(current($value));
             return $this->import([$this->name => $value]);
         } catch (WrongArgumentException $e) {
             return $this->import([$this->name => ArrayUtils::getIdsArray($value)]);
         }
     }
     return parent::importValue($value);
 }
Example #5
0
 /**
  * @throws WrongArgumentException
  * @return SelectQuery
  **/
 public function limit($limit = null, $offset = null)
 {
     if ($limit !== null) {
         Assert::isPositiveInteger($limit, 'invalid limit specified');
     }
     if ($offset !== null) {
         Assert::isInteger($offset, 'invalid offset specified');
     }
     $this->limit = $limit;
     $this->offset = $offset;
     return $this;
 }
Example #6
0
 /**
  * @param integer $id
  * @throws WrongArgumentException
  * @return AMQPChannelInterface
  **/
 public function createChannel($id)
 {
     Assert::isInteger($id);
     if (isset($this->channels[$id])) {
         throw new WrongArgumentException("AMQP channel with id '{$id}' already registered");
     }
     if (!$this->current) {
         $this->setCurrent($this->getAlive());
     }
     if (!$this->isConnected()) {
         $this->connect();
     }
     $this->channels[$id] = new self::$proxy($this->getCurrentItem()->spawnChannel($id, $this));
     $this->channels[$id]->open();
     return $this->channels[$id];
 }
Example #7
0
 public static function sendContentLength($length)
 {
     Assert::isInteger($length);
     header("Content-Length: {$length}");
     self::$headerSent = true;
 }
Example #8
0
 protected function checkNumber($number)
 {
     Assert::isInteger($number);
 }
Example #9
0
 /**
  * Set's custom error mark for primitive.
  * @return Form
  **/
 public function markCustom($primitiveName, $customMark, $label = null)
 {
     Assert::isInteger($customMark);
     $this->errors[$this->get($primitiveName)->getName()] = $customMark;
     if ($label !== null) {
         $this->addCustomLabel($primitiveName, $customMark, $label);
     }
     return $this;
 }
Example #10
0
 /**
  * @throws WrongArgumentException
  * @return MetaClassProperty
  **/
 public function setSize($size)
 {
     if ($this->type instanceof NumericType) {
         if (strpos($size, ',') !== false) {
             list($size, $precision) = explode(',', $size, 2);
             $this->type->setPrecision($precision);
         }
     }
     Assert::isInteger($size, 'only integers allowed in size parameter');
     if ($this->type->isMeasurable()) {
         $this->size = $size;
     } else {
         throw new WrongArgumentException("size not allowed for '" . $this->getName() . '::' . get_class($this->type) . "' type");
     }
     return $this;
 }
Example #11
0
 /**
  * @throws WrongArgumentException
  * @return IntegerType
  **/
 public function setDefault($default)
 {
     Assert::isInteger($default, "strange default value given - '{$default}'");
     $this->default = $default;
     return $this;
 }
Example #12
0
 /**
  * @throws WrongArgumentException
  * @return DataType
  **/
 public function setScale($scale)
 {
     Assert::isInteger($scale);
     Assert::isTrue(($this->id & self::HAVE_SCALE) > 0);
     $this->scale = $scale;
     return $this;
 }
 protected function checkNumber($number)
 {
     if ($this->scalar) {
         Assert::isScalar($number);
     } else {
         Assert::isInteger($number);
     }
 }
Example #14
0
 /**
  * Message priority from 0 to 9.
  *
  * @return AMQPBaseMessage
  **/
 public function setPriority($int)
 {
     Assert::isInteger($int, __METHOD__);
     Assert::isTrue($int >= self::PRIORITY_MIN && $int <= self::PRIORITY_MAX, __METHOD__);
     $this->properties[self::PRIORITY] = $int;
     return $this;
 }
Example #15
0
 public function setMaxAge($expire)
 {
     Assert::isInteger($expire);
     $this->expire = $expire;
     return $this;
 }