class ShortcutSet in Zircon Profile 8
Same name in this branch
- 8 core/modules/shortcut/src/Entity/ShortcutSet.php \Drupal\shortcut\Entity\ShortcutSet
 - 8 core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSet.php \Drupal\shortcut\Plugin\migrate\source\d7\ShortcutSet
 
Same name and namespace in other branches
- 8.0 core/modules/shortcut/src/Entity/ShortcutSet.php \Drupal\shortcut\Entity\ShortcutSet
 
Defines the Shortcut set configuration entity.
Plugin annotation
@ConfigEntityType(
  id = "shortcut_set",
  label = @Translation("Shortcut set"),
  handlers = {
    "storage" = "Drupal\shortcut\ShortcutSetStorage",
    "access" = "Drupal\shortcut\ShortcutSetAccessControlHandler",
    "list_builder" = "Drupal\shortcut\ShortcutSetListBuilder",
    "form" = {
      "default" = "Drupal\shortcut\ShortcutSetForm",
      "add" = "Drupal\shortcut\ShortcutSetForm",
      "edit" = "Drupal\shortcut\ShortcutSetForm",
      "customize" = "Drupal\shortcut\Form\SetCustomize",
      "delete" = "Drupal\shortcut\Form\ShortcutSetDeleteForm"
    }
  },
  config_prefix = "set",
  bundle_of = "shortcut",
  entity_keys = {
    "id" = "id",
    "label" = "label"
  },
  links = {
    "customize-form" = "/admin/config/user-interface/shortcut/manage/{shortcut_set}/customize",
    "delete-form" = "/admin/config/user-interface/shortcut/manage/{shortcut_set}/delete",
    "edit-form" = "/admin/config/user-interface/shortcut/manage/{shortcut_set}",
    "collection" = "/admin/config/user-interface/shortcut",
  },
  config_export = {
    "id",
    "label",
  }
)
  Hierarchy
- class \Drupal\Core\Entity\Entity implements EntityInterface uses RefinableCacheableDependencyTrait, DependencySerializationTrait
- class \Drupal\Core\Config\Entity\ConfigEntityBase implements ConfigEntityInterface uses PluginDependencyTrait
- class \Drupal\Core\Config\Entity\ConfigEntityBundleBase
- class \Drupal\shortcut\Entity\ShortcutSet implements ShortcutSetInterface
 
 
 - class \Drupal\Core\Config\Entity\ConfigEntityBundleBase
 
 - class \Drupal\Core\Config\Entity\ConfigEntityBase implements ConfigEntityInterface uses PluginDependencyTrait
 
Expanded class hierarchy of ShortcutSet
6 files declare their use of ShortcutSet
- MigrateShortcutSetTest.php in core/
modules/ shortcut/ src/ Tests/ Migrate/ d7/ MigrateShortcutSetTest.php  - Contains \Drupal\shortcut\Tests\Migrate\d7\MigrateShortcutSetTest.
 - shortcut.module in core/
modules/ shortcut/ shortcut.module  - Allows users to manage customizable lists of shortcut links.
 - ShortcutLinksTest.php in core/
modules/ shortcut/ src/ Tests/ ShortcutLinksTest.php  - Contains \Drupal\shortcut\Tests\ShortcutLinksTest.
 - ShortcutSetsTest.php in core/
modules/ shortcut/ src/ Tests/ ShortcutSetsTest.php  - Contains \Drupal\shortcut\Tests\ShortcutSetsTest.
 - ShortcutTestBase.php in core/
modules/ shortcut/ src/ Tests/ ShortcutTestBase.php  - Contains \Drupal\shortcut\Tests\ShortcutTestBase.
 
File
- core/
modules/ shortcut/ src/ Entity/ ShortcutSet.php, line 50  - Contains \Drupal\shortcut\Entity\ShortcutSet.
 
Namespace
Drupal\shortcut\EntityView source
class ShortcutSet extends ConfigEntityBundleBase implements ShortcutSetInterface {
  /**
   * The machine name for the configuration entity.
   *
   * @var string
   */
  protected $id;
  /**
   * The human-readable name of the configuration entity.
   *
   * @var string
   */
  protected $label;
  /**
   * {@inheritdoc}
   */
  public function postSave(EntityStorageInterface $storage, $update = TRUE) {
    parent::postSave($storage, $update);
    if (!$update && !$this
      ->isSyncing()) {
      // Save a new shortcut set with links copied from the user's default set.
      $default_set = shortcut_default_set();
      // This is the default set, do not copy shortcuts.
      if ($default_set
        ->id() != $this
        ->id()) {
        foreach ($default_set
          ->getShortcuts() as $shortcut) {
          $shortcut = $shortcut
            ->createDuplicate();
          $shortcut
            ->enforceIsNew();
          $shortcut->shortcut_set->target_id = $this
            ->id();
          $shortcut
            ->save();
        }
      }
    }
  }
  /**
   * {@inheritdoc}
   */
  public static function preDelete(EntityStorageInterface $storage, array $entities) {
    parent::preDelete($storage, $entities);
    foreach ($entities as $entity) {
      $storage
        ->deleteAssignedShortcutSets($entity);
      // Next, delete the shortcuts for this set.
      $shortcut_ids = \Drupal::entityQuery('shortcut')
        ->condition('shortcut_set', $entity
        ->id(), '=')
        ->execute();
      $controller = \Drupal::entityManager()
        ->getStorage('shortcut');
      $entities = $controller
        ->loadMultiple($shortcut_ids);
      $controller
        ->delete($entities);
    }
  }
  /**
   * {@inheritdoc}
   */
  public function resetLinkWeights() {
    $weight = -50;
    foreach ($this
      ->getShortcuts() as $shortcut) {
      $shortcut
        ->setWeight(++$weight);
      $shortcut
        ->save();
    }
    return $this;
  }
  /**
   * {@inheritdoc}
   */
  public function getShortcuts() {
    $shortcuts = \Drupal::entityManager()
      ->getStorage('shortcut')
      ->loadByProperties(array(
      'shortcut_set' => $this
        ->id(),
    ));
    uasort($shortcuts, array(
      '\\Drupal\\shortcut\\Entity\\Shortcut',
      'sort',
    ));
    return $shortcuts;
  }
}Members
| 
            Name | 
                  Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| 
            ConfigEntityBase:: | 
                  private | property | Whether the config is being created, updated or deleted through the import process. | |
| 
            ConfigEntityBase:: | 
                  private | property | Whether the config is being deleted by the uninstall process. | |
| 
            ConfigEntityBase:: | 
                  protected | property | The language code of the entity's default language. | |
| 
            ConfigEntityBase:: | 
                  protected | property | The original ID of the configuration entity. | |
| 
            ConfigEntityBase:: | 
                  protected | property | The name of the property that is used to store plugin configuration. | |
| 
            ConfigEntityBase:: | 
                  protected | property | The enabled/disabled status of the configuration entity. | 2 | 
| 
            ConfigEntityBase:: | 
                  protected | property | Third party entity settings. | |
| 
            ConfigEntityBase:: | 
                  protected | property | Trust supplied data and not use configuration schema on save. | |
| 
            ConfigEntityBase:: | 
                  protected | property | The UUID for this entity. | |
| 
            ConfigEntityBase:: | 
                  protected | function | Overrides \Drupal\Core\Entity\DependencyTrait:addDependency(). | |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Calculates dependencies and stores them in the dependency property. Overrides ConfigEntityInterface:: | 
                  12 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Creates a duplicate of the entity. Overrides Entity:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Disables the configuration entity. Overrides ConfigEntityInterface:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Enables the configuration entity. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Returns the value of a property. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Returns the cache tags that should be used to invalidate caches. Overrides Entity:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the configuration dependency name. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  protected static | function | Gets the configuration manager. | |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the configuration target identifier for the entity. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the configuration dependencies. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the original ID. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the list of third parties that store information. Overrides ThirdPartySettingsInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the value of a third-party setting. Overrides ThirdPartySettingsInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets all third-party settings of a given module. Overrides ThirdPartySettingsInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  protected | function | Gets the typed config manager. | |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets whether on not the data is trusted. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  protected static | function | 
            Override to never invalidate the individual entities' cache tags; the
config system already invalidates them. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  protected | function | 
            Override to never invalidate the entity's cache tag; the config system
already invalidates it. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Checks whether this entity is installable. Overrides ConfigEntityInterface:: | 
                  2 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Overrides Entity::isNew(). Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Returns whether this entity is being changed as part of an import process. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Returns whether this entity is being changed during the uninstall process. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Deprecated way of generating a link to the entity. See toLink(). Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Informs the entity that entities it depends on will be deleted. Overrides ConfigEntityInterface:: | 
                  4 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Saves an entity permanently. Overrides Entity:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets the value of a property. Overrides ConfigEntityInterface:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets the original ID. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets the status of the configuration entity. Overrides ConfigEntityInterface:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets the status of the isSyncing flag. Overrides ConfigEntityInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets the value of a third-party setting. Overrides ThirdPartySettingsInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | ||
| 
            ConfigEntityBase:: | 
                  public static | function | Helper callback for uasort() to sort configuration entities by weight and label. | 6 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Returns whether the configuration entity is enabled. Overrides ConfigEntityInterface:: | 
                  2 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets an array of all property values. Overrides Entity:: | 
                  2 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the URL object for the entity. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Sets that the data should be trusted. Overrides ConfigEntityInterface:: | 
                  1 | 
| 
            ConfigEntityBase:: | 
                  public | function | 
            Unsets a third-party setting. Overrides ThirdPartySettingsInterface:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the public URL for this entity. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Gets the URL object for the entity. Overrides Entity:: | 
                  |
| 
            ConfigEntityBase:: | 
                  public | function | 
            Constructs an Entity object. Overrides Entity:: | 
                  10 | 
| 
            ConfigEntityBundleBase:: | 
                  protected | function | Deletes display if a bundle is deleted. | |
| 
            ConfigEntityBundleBase:: | 
                  protected | function | Returns view or form displays for this bundle. | |
| 
            ConfigEntityBundleBase:: | 
                  public static | function | 
            Acts on deleted entities before the delete hook is invoked. Overrides Entity:: | 
                  2 | 
| 
            ConfigEntityBundleBase:: | 
                  public | function | 
            Acts on an entity before the presave hook is invoked. Overrides ConfigEntityBase:: | 
                  |
| 
            DependencySerializationTrait:: | 
                  protected | property | An array of service IDs keyed by property name used for serialization. | |
| 
            DependencySerializationTrait:: | 
                  public | function | Aliased as: traitSleep | 1 | 
| 
            DependencySerializationTrait:: | 
                  public | function | 2 | |
| 
            DependencyTrait:: | 
                  protected | property | The object's dependencies. | 1 | 
| 
            DependencyTrait:: | 
                  protected | function | Adds multiple dependencies. | |
| 
            DependencyTrait:: | 
                  protected | function | Adds a dependency. Aliased as: addDependencyTrait | |
| 
            Entity:: | 
                  protected | property | Boolean indicating whether the entity should be forced to be new. | |
| 
            Entity:: | 
                  protected | property | The entity type. | |
| 
            Entity:: | 
                  protected | property | A typed data object wrapping this entity. | |
| 
            Entity:: | 
                  public | function | 
            Checks data value access. Overrides AccessibleInterface:: | 
                  1 | 
| 
            Entity:: | 
                  public | function | 
            Gets the bundle of the entity. Overrides EntityInterface:: | 
                  1 | 
| 
            Entity:: | 
                  public static | function | 
            Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Deletes an entity permanently. Overrides EntityInterface:: | 
                  2 | 
| 
            Entity:: | 
                  public | function | 
            Enforces an entity to be new. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  protected | function | Gets the entity manager. | |
| 
            Entity:: | 
                  protected | function | Gets the entity type manager. | |
| 
            Entity:: | 
                  public | function | 
            The cache contexts associated with this object. Overrides RefinableCacheableDependencyTrait:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            The maximum age for which this object may be cached. Overrides RefinableCacheableDependencyTrait:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            The cache tags associated with this object. Overrides RefinableCacheableDependencyTrait:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Gets the key that is used to store configuration dependencies. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Gets the entity type definition. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Gets the ID of the type of the entity. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Gets a typed data object for this entity object. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Indicates if a link template exists for a given key. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Gets the identifier. Overrides EntityInterface:: | 
                  11 | 
| 
            Entity:: | 
                  public | function | 
            Gets the label of the entity. Overrides EntityInterface:: | 
                  5 | 
| 
            Entity:: | 
                  public | function | 
            Gets the language of the entity. Overrides EntityInterface:: | 
                  1 | 
| 
            Entity:: | 
                  protected | function | Gets the language manager. | |
| 
            Entity:: | 
                  protected | function | Gets an array link templates. | 1 | 
| 
            Entity:: | 
                  public static | function | 
            Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public static | function | 
            Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Acts on an entity after it is created but before hooks are invoked. Overrides EntityInterface:: | 
                  4 | 
| 
            Entity:: | 
                  public static | function | 
            Acts on loaded entities. Overrides EntityInterface:: | 
                  2 | 
| 
            Entity:: | 
                  public static | function | 
            Changes the values of an entity before it is created. Overrides EntityInterface:: | 
                  6 | 
| 
            Entity:: | 
                  public | function | 
            Gets a list of entities referenced by this entity. Overrides EntityInterface:: | 
                  1 | 
| 
            Entity:: | 
                  public | function | 
            Generates the HTML for a link to this entity. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  public | function | 
            Returns a list of URI relationships supported by this entity. Overrides EntityInterface:: | 
                  |
| 
            Entity:: | 
                  protected | function | Gets an array of placeholders for this entity. | 1 | 
| 
            Entity:: | 
                  public | function | 
            Gets the entity UUID (Universally Unique Identifier). Overrides EntityInterface:: | 
                  1 | 
| 
            Entity:: | 
                  protected | function | Gets the UUID generator. | |
| 
            Entity:: | 
                  public | function | 5 | |
| 
            PluginDependencyTrait:: | 
                  protected | function | Calculates and adds dependencies of a specific plugin instance. | 1 | 
| 
            RefinableCacheableDependencyTrait:: | 
                  protected | property | Cache contexts. | |
| 
            RefinableCacheableDependencyTrait:: | 
                  protected | property | Cache max-age. | |
| 
            RefinableCacheableDependencyTrait:: | 
                  protected | property | Cache tags. | |
| 
            RefinableCacheableDependencyTrait:: | 
                  public | function | 1 | |
| 
            RefinableCacheableDependencyTrait:: | 
                  public | function | ||
| 
            RefinableCacheableDependencyTrait:: | 
                  public | function | ||
| 
            RefinableCacheableDependencyTrait:: | 
                  public | function | ||
| 
            ShortcutSet:: | 
                  protected | property | The machine name for the configuration entity. | |
| 
            ShortcutSet:: | 
                  protected | property | The human-readable name of the configuration entity. | |
| 
            ShortcutSet:: | 
                  public | function | 
            Returns all the shortcuts from a shortcut set sorted correctly. Overrides ShortcutSetInterface:: | 
                  |
| 
            ShortcutSet:: | 
                  public | function | 
            Acts on a saved entity before the insert or update hook is invoked. Overrides ConfigEntityBundleBase:: | 
                  |
| 
            ShortcutSet:: | 
                  public static | function | 
            Acts on entities before they are deleted and before hooks are invoked. Overrides ConfigEntityBase:: | 
                  |
| 
            ShortcutSet:: | 
                  public | function | 
            Resets the link weights in a shortcut set to match their current order. Overrides ShortcutSetInterface:: |