You are here

TypedDataTrait.php in Zircon Profile 8.0

Same filename and directory in other branches
  1. 8 core/lib/Drupal/Core/TypedData/TypedDataTrait.php

File

core/lib/Drupal/Core/TypedData/TypedDataTrait.php
View source
<?php

/**
 * @file
 * Contains \Drupal\Core\TypedData\TypedDataTrait.
 */
namespace Drupal\Core\TypedData;


/**
 * Wrapper methods for classes that needs typed data manager object.
 */
trait TypedDataTrait {

  /**
   * The typed data manager used for creating the data types.
   *
   * @var \Drupal\Core\TypedData\TypedDataManagerInterface
   */
  protected $typedDataManager;

  /**
   * Sets the typed data manager.
   *
   * @param \Drupal\Core\TypedData\TypedDataManagerInterface $typed_data_manager
   *   The typed data manager.
   *
   * @return $this
   */
  public function setTypedDataManager(TypedDataManagerInterface $typed_data_manager) {
    $this->typedDataManager = $typed_data_manager;
    return $this;
  }

  /**
   * Gets the typed data manager.
   *
   * @return \Drupal\Core\TypedData\TypedDataManagerInterface
   *   The typed data manager.
   */
  public function getTypedDataManager() {
    if (empty($this->typedDataManager)) {
      $this->typedDataManager = \Drupal::typedDataManager();
    }
    return $this->typedDataManager;
  }

}

Traits

Namesort descending Description
TypedDataTrait Wrapper methods for classes that needs typed data manager object.