Version 1
[yaffs-website] / web / core / modules / tour / src / TourInterface.php
diff --git a/web/core/modules/tour/src/TourInterface.php b/web/core/modules/tour/src/TourInterface.php
new file mode 100644 (file)
index 0000000..3159071
--- /dev/null
@@ -0,0 +1,65 @@
+<?php
+
+namespace Drupal\tour;
+
+use Drupal\Core\Config\Entity\ConfigEntityInterface;
+
+/**
+ * Provides an interface defining a tour entity.
+ */
+interface TourInterface extends ConfigEntityInterface {
+
+  /**
+   * The routes that this tour will appear on.
+   *
+   * @return array
+   *   Returns array of routes for the tour.
+   */
+  public function getRoutes();
+
+  /**
+   * Whether the tour matches a given set of route parameters.
+   *
+   * @param string $route_name
+   *   The route name the parameters are for.
+   * @param array $route_params
+   *   Associative array of raw route params.
+   *
+   * @return bool
+   *   TRUE if the tour matches the route parameters.
+   */
+  public function hasMatchingRoute($route_name, $route_params);
+
+  /**
+   * Returns tip plugin.
+   *
+   * @param string $id
+   *   The identifier of the tip.
+   *
+   * @return \Drupal\tour\TipPluginInterface
+   *   The tip plugin.
+   */
+  public function getTip($id);
+
+  /**
+   * Returns the tips for this tour.
+   *
+   * @return array
+   *   An array of tip plugins.
+   */
+  public function getTips();
+
+  /**
+   * Gets the module this tour belongs to.
+   *
+   * @return string
+   *   The module this tour belongs to.
+   */
+  public function getModule();
+
+  /**
+   * Resets the statically cached keyed routes.
+   */
+  public function resetKeyedRoutes();
+
+}