Version 1
[yaffs-website] / web / core / modules / system / src / Entity / Menu.php
diff --git a/web/core/modules/system/src/Entity/Menu.php b/web/core/modules/system/src/Entity/Menu.php
new file mode 100644 (file)
index 0000000..e7fbb47
--- /dev/null
@@ -0,0 +1,74 @@
+<?php
+
+namespace Drupal\system\Entity;
+
+use Drupal\Core\Config\Entity\ConfigEntityBase;
+use Drupal\system\MenuInterface;
+
+/**
+ * Defines the Menu configuration entity class.
+ *
+ * @ConfigEntityType(
+ *   id = "menu",
+ *   label = @Translation("Menu"),
+ *   handlers = {
+ *     "access" = "Drupal\system\MenuAccessControlHandler"
+ *   },
+ *   admin_permission = "administer menu",
+ *   entity_keys = {
+ *     "id" = "id",
+ *     "label" = "label"
+ *   },
+ *   config_export = {
+ *     "id",
+ *     "label",
+ *     "description",
+ *     "locked",
+ *   }
+ * )
+ */
+class Menu extends ConfigEntityBase implements MenuInterface {
+
+  /**
+   * The menu machine name.
+   *
+   * @var string
+   */
+  protected $id;
+
+  /**
+   * The human-readable name of the menu entity.
+   *
+   * @var string
+   */
+  protected $label;
+
+  /**
+   * The menu description.
+   *
+   * @var string
+   */
+  protected $description;
+
+  /**
+   * The locked status of this menu.
+   *
+   * @var bool
+   */
+  protected $locked = FALSE;
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getDescription() {
+    return $this->description;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function isLocked() {
+    return (bool) $this->locked;
+  }
+
+}