public function __construct($model, $attributeName) { parent::__construct($model); assert('is_string($attributeName)'); $this->attributeName = $attributeName; }
/** * @param $model * @param null $attributeName * @param null || ExplicitReadWriteModelPermissions $explicitReadWriteModelPermissions */ public function __construct($model, $attributeName, $explicitReadWriteModelPermissions = null) { parent::__construct($model, $explicitReadWriteModelPermissions); assert('is_string($attributeName)'); $this->attributeName = $attributeName; }
protected static function resolveModelForModelDerivedAttribute(RedBeanModel $model, $importRulesType, AttributeImportRules $attributeImportRules, $valueReadyToSanitize, $columnName, $columnMappingData, ImportSanitizeResultsUtil $importSanitizeResultsUtil) { assert('is_string($importRulesType)'); assert('$attributeImportRules instanceof ModelDerivedAttributeImportRules'); assert('is_string($columnName)'); assert('is_array($columnMappingData)'); $attributeValueData = $attributeImportRules->resolveValueForImport($valueReadyToSanitize, $columnName, $columnMappingData, $importSanitizeResultsUtil); assert('count($attributeValueData) == 1'); assert('$attributeImportRules::getDerivedAttributeName() != null'); $derivedAttributeName = $attributeImportRules::getDerivedAttributeName(); if ($attributeValueData[$derivedAttributeName] != null) { $importRulesClassName = ImportRulesUtil::getImportRulesClassNameByType($importRulesType); $actualAttributeName = $importRulesClassName::getActualModelAttributeNameForDerivedAttribute(); $actualModel = $attributeValueData[$derivedAttributeName]; if (!$model->{$actualAttributeName}->contains($actualModel)) { $model->{$actualAttributeName}->add($actualModel); } } }
protected static function resolveAttributeNameByRules(AttributeImportRules $attributeImportRules) { $attributeNames = $attributeImportRules->getRealModelAttributeNames(); if (count($attributeNames) > 1 || $attributeNames == null) { return null; } else { return $attributeNames[0]; } }