function __construct($connectionNumber = 0) { parent::__construct($connectionNumber); $this->setType('entity_labels_tbl'); $notNullAndText = new org_glizy_validators_CompositeValidator(); $notNullAndText->add(new org_glizy_validators_NotNull()); $notNullAndText->add(new org_glizy_validators_Text()); $this->addField(new org_glizy_dataAccessDoctrine_DbField('key', Doctrine\DBAL\Types\Type::STRING, 255, false, $notNullAndText, '', true, false, '', org_glizy_dataAccessDoctrine_DbField::NOT_INDEXED)); $this->addField(new org_glizy_dataAccessDoctrine_DbField('translation', Doctrine\DBAL\Types\Type::TARRAY, 255, false, new org_glizy_validators_NotNull(), '', true, false, '', org_glizy_dataAccessDoctrine_DbField::INDEXED)); }
/** * @param org_glizy_validators_AbstractValidator $validator */ public function addValidator($validator) { if (!$this->validator || !$this->validator instanceof org_glizy_validators_CompositeValidator) { $composite = new org_glizy_validators_CompositeValidator(); if ($this->validator) { $composite->add($this->validator); } $this->validator = $composite; } $this->validator->add($validator); }
public function getValidator($column) { $validators = array(); $type = $column->getType()->getName(); if ($type == Type::INTEGER || $type == Type::SMALLINT || $type == Type::BIGINT) { $validators[] = new org_glizy_validators_Numeric(); } else { if ($type == Type::STRING || $type == Type::TEXT) { $validators[] = new org_glizy_validators_Text(); } } if ($column->getNotnull()) { $validators[] = new org_glizy_validators_NotNull(); } if (empty($validators)) { return null; } else { if (count($validators) == 1) { return $validators[0]; } else { $composite = new org_glizy_validators_CompositeValidator(); $composite->addArray($validators); return $composite; } } }