Neos\ContentRepository\Domain\Model\NodeDataLabelGeneratorAdaptor::setNodeDataLabelGenerator PHP Method

setNodeDataLabelGenerator() public method

public setNodeDataLabelGenerator ( Neos\ContentRepository\Domain\Model\NodeDataLabelGeneratorInterface $nodeDataLabelGenerator )
$nodeDataLabelGenerator Neos\ContentRepository\Domain\Model\NodeDataLabelGeneratorInterface
    public function setNodeDataLabelGenerator($nodeDataLabelGenerator)
    {
        $this->nodeDataLabelGenerator = $nodeDataLabelGenerator;
    }

Usage Example

 /**
  * Return the node label generator class for the given node
  *
  * @return NodeLabelGeneratorInterface
  */
 public function getNodeLabelGenerator()
 {
     $this->initialize();
     if ($this->nodeLabelGenerator === null) {
         if ($this->hasConfiguration('label.generatorClass')) {
             $nodeLabelGenerator = $this->objectManager->get($this->getConfiguration('label.generatorClass'));
         } elseif ($this->hasConfiguration('label') && is_string($this->getConfiguration('label'))) {
             $nodeLabelGenerator = $this->objectManager->get(\Neos\ContentRepository\Domain\Model\ExpressionBasedNodeLabelGenerator::class);
             $nodeLabelGenerator->setExpression($this->getConfiguration('label'));
         } else {
             $nodeLabelGenerator = $this->objectManager->get(\Neos\ContentRepository\Domain\Model\NodeLabelGeneratorInterface::class);
         }
         // TODO: Remove after deprecation phase of NodeDataLabelGeneratorInterface
         if ($nodeLabelGenerator instanceof NodeDataLabelGeneratorInterface) {
             $adaptor = new NodeDataLabelGeneratorAdaptor();
             $adaptor->setNodeDataLabelGenerator($nodeLabelGenerator);
             $nodeLabelGenerator = $adaptor;
         }
         $this->nodeLabelGenerator = $nodeLabelGenerator;
     }
     return $this->nodeLabelGenerator;
 }