123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- <?php
- namespace Drupal\pathauto;
- use Drupal\Core\Config\Entity\ConfigEntityInterface;
- /**
- * Provides an interface for defining Pathauto pattern entities.
- */
- interface PathautoPatternInterface extends ConfigEntityInterface {
- /**
- * Get the tokenized pattern used during alias generation.
- *
- * @return string
- */
- public function getPattern();
- /**
- * Set the tokenized pattern to use during alias generation.
- *
- * @param string $pattern
- *
- * @return $this
- */
- public function setPattern($pattern);
- /**
- * Gets the type of this pattern.
- *
- * @return string
- */
- public function getType();
- /**
- * @return \Drupal\pathauto\AliasTypeInterface
- */
- public function getAliasType();
- /**
- * Gets the weight of this pattern (compared to other patterns of this type).
- *
- * @return int
- */
- public function getWeight();
- /**
- * Sets the weight of this pattern (compared to other patterns of this type).
- *
- * @param int $weight
- * The weight of the variant.
- *
- * @return $this
- */
- public function setWeight($weight);
- /**
- * Returns the contexts of this pattern.
- *
- * @return \Drupal\Core\Plugin\Context\ContextInterface[]
- */
- public function getContexts();
- /**
- * Returns whether a relationship exists.
- *
- * @param string $token
- * Relationship identifier.
- *
- * @return bool
- * TRUE if the relationship exists, FALSE otherwise.
- */
- public function hasRelationship($token);
- /**
- * Adds a relationship.
- *
- * The relationship will not be changed if it already exists.
- *
- * @param string $token
- * Relationship identifier.
- * @param string|null $label
- * (optional) A label, will use the label of the referenced context if not
- * provided.
- *
- * @return $this
- */
- public function addRelationship($token, $label = NULL);
- /**
- * Replaces a relationship.
- *
- * Only already existing relationships are updated.
- *
- * @param string $token
- * Relationship identifier.
- * @param string|null $label
- * (optional) A label, will use the label of the referenced context if not
- * provided.
- *
- * @return $this
- */
- public function replaceRelationship($token, $label);
- /**
- * Removes a relationship.
- *
- * @param string $token
- * Relationship identifier.
- *
- * @return $this
- */
- public function removeRelationship($token);
- /**
- * Returns a list of relationships.
- *
- * @return array[]
- * Keys are context tokens, and values are arrays with the following keys:
- * - label (string|null, optional): The human-readable label of this
- * relationship.
- */
- public function getRelationships();
- /**
- * Gets the selection condition collection.
- *
- * @return \Drupal\Core\Condition\ConditionInterface[]|\Drupal\Core\Condition\ConditionPluginCollection
- */
- public function getSelectionConditions();
- /**
- * Adds selection criteria.
- *
- * @param array $configuration
- * Configuration of the selection criteria.
- *
- * @return string
- * The condition id of the new criteria.
- */
- public function addSelectionCondition(array $configuration);
- /**
- * Gets selection criteria by condition id.
- *
- * @param string $condition_id
- * The id of the condition.
- *
- * @return \Drupal\Core\Condition\ConditionInterface
- */
- public function getSelectionCondition($condition_id);
- /**
- * Removes selection criteria by condition id.
- *
- * @param string $condition_id
- * The id of the condition.
- *
- * @return $this
- */
- public function removeSelectionCondition($condition_id);
- /**
- * Gets the selection logic used by the criteria (ie. "and" or "or").
- *
- * @return string
- * Either "and" or "or"; represents how the selection criteria are combined.
- */
- public function getSelectionLogic();
- /**
- * Determines if this pattern can apply a given object.
- *
- * @param $object
- * The object used to determine if this plugin can apply.
- *
- * @return bool
- */
- public function applies($object);
- }
|