2 namespace TYPO3\CMS\Extbase\Property;
116 if (isset($this->propertiesNotToBeMapped[$propertyName])) {
120 if (isset($this->propertiesToBeMapped[$propertyName])) {
124 if (isset($this->subConfigurationForProperty[self::PROPERTY_PATH_PLACEHOLDER])) {
140 return isset($this->propertiesToSkip[$propertyName]);
151 $this->mapUnknownProperties =
true;
166 foreach (func_get_args() as $propertyName) {
167 $this->propertiesToBeMapped[$propertyName] = $propertyName;
183 foreach (func_get_args() as $propertyName) {
184 $this->propertiesToSkip[$propertyName] = $propertyName;
200 $this->mapUnknownProperties =
true;
202 foreach (func_get_args() as $propertyName) {
203 $this->propertiesNotToBeMapped[$propertyName] = $propertyName;
242 if (isset($this->subConfigurationForProperty[$propertyName])) {
243 return $this->subConfigurationForProperty[$propertyName];
244 }
elseif (isset($this->subConfigurationForProperty[self::PROPERTY_PATH_PLACEHOLDER])) {
245 return $this->subConfigurationForProperty[self::PROPERTY_PATH_PLACEHOLDER];
260 if (isset($this->mapping[$sourcePropertyName])) {
261 return $this->mapping[$sourcePropertyName];
263 return $sourcePropertyName;
274 if (!isset($this->configuration[$typeConverterClassName][$key])) {
278 return $this->configuration[$typeConverterClassName][$key];
289 public function setMapping($sourcePropertyName, $targetPropertyName)
291 $this->mapping[$sourcePropertyName] = $targetPropertyName;
346 $typeConverterClasses = $typeConverterClasses ===
false ? array() : $typeConverterClasses;
348 return $typeConverterClasses;
362 $splittedPropertyPath = explode(
'.', $propertyPath);
374 if (empty($splittedPropertyPath)) {
378 $currentProperty = array_shift($splittedPropertyPath);
379 if (!isset($this->subConfigurationForProperty[$currentProperty])) {
380 $type = get_class($this);
381 if (isset($this->subConfigurationForProperty[self::PROPERTY_PATH_PLACEHOLDER])) {
382 $this->subConfigurationForProperty[$currentProperty] = clone $this->subConfigurationForProperty[self::PROPERTY_PATH_PLACEHOLDER];
384 $this->subConfigurationForProperty[$currentProperty] =
new $type;
387 return $this->subConfigurationForProperty[$currentProperty]->traverseProperties($splittedPropertyPath);