Same name and namespace in other branches
  1. 8.9.x core/modules/comment/src/CommentInterface.php \Drupal\comment\CommentInterface
  2. 9 core/modules/comment/src/CommentInterface.php \Drupal\comment\CommentInterface

Provides an interface defining a comment entity.

Hierarchy

Expanded class hierarchy of CommentInterface

All classes that implement CommentInterface

33 files declare their use of CommentInterface
comment.api.php in core/modules/comment/comment.api.php
Hooks provided by the Comment module.
comment.module in core/modules/comment/comment.module
Enables users to comment on published content.
Comment.php in core/modules/comment/src/Entity/Comment.php
CommentAdminOverview.php in core/modules/comment/src/Form/CommentAdminOverview.php
CommentAdminTest.php in core/modules/comment/tests/src/Functional/CommentAdminTest.php

... See full list

File

core/modules/comment/src/CommentInterface.php, line 13

Namespace

Drupal\comment
View source
interface CommentInterface extends ContentEntityInterface, EntityChangedInterface, EntityOwnerInterface, EntityPublishedInterface {

  /**
   * Comment is awaiting approval.
   */
  const NOT_PUBLISHED = 0;

  /**
   * Comment is published.
   */
  const PUBLISHED = 1;

  /**
   * Anonymous posters cannot enter their contact information.
   */
  const ANONYMOUS_MAYNOT_CONTACT = 0;

  /**
   * Anonymous posters may leave their contact information.
   */
  const ANONYMOUS_MAY_CONTACT = 1;

  /**
   * Anonymous posters are required to leave their contact information.
   */
  const ANONYMOUS_MUST_CONTACT = 2;

  /**
   * Determines if this comment is a reply to another comment.
   *
   * @return bool
   *   TRUE if the comment has a parent comment otherwise FALSE.
   */
  public function hasParentComment();

  /**
   * Returns the parent comment entity if this is a reply to a comment.
   *
   * @return \Drupal\comment\CommentInterface|null
   *   A comment entity of the parent comment or NULL if there is no parent.
   */
  public function getParentComment();

  /**
   * Returns the entity to which the comment is attached.
   *
   * @return \Drupal\Core\Entity\FieldableEntityInterface|null
   *   The entity on which the comment is attached or NULL if the comment is an
   *   orphan.
   */
  public function getCommentedEntity();

  /**
   * Returns the ID of the entity to which the comment is attached.
   *
   * @return int
   *   The ID of the entity to which the comment is attached.
   */
  public function getCommentedEntityId();

  /**
   * Returns the type of the entity to which the comment is attached.
   *
   * @return string
   *   An entity type.
   */
  public function getCommentedEntityTypeId();

  /**
   * Sets the field ID for which this comment is attached.
   *
   * @param string $field_name
   *   The field name through which the comment was added.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setFieldName($field_name);

  /**
   * Returns the name of the field the comment is attached to.
   *
   * @return string
   *   The name of the field the comment is attached to.
   */
  public function getFieldName();

  /**
   * Returns the subject of the comment.
   *
   * @return string
   *   The subject of the comment.
   */
  public function getSubject();

  /**
   * Sets the subject of the comment.
   *
   * @param string $subject
   *   The subject of the comment.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setSubject($subject);

  /**
   * Returns the comment author's name.
   *
   * For anonymous authors, this is the value as typed in the comment form.
   *
   * @return string
   *   The name of the comment author.
   */
  public function getAuthorName();

  /**
   * Sets the name of the author of the comment.
   *
   * @param string $name
   *   A string containing the name of the author.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setAuthorName($name);

  /**
   * Returns the comment author's email address.
   *
   * For anonymous authors, this is the value as typed in the comment form.
   *
   * @return string
   *   The email address of the author of the comment.
   */
  public function getAuthorEmail();

  /**
   * Returns the comment author's home page address.
   *
   * For anonymous authors, this is the value as typed in the comment form.
   *
   * @return string
   *   The homepage address of the author of the comment.
   */
  public function getHomepage();

  /**
   * Sets the comment author's home page address.
   *
   * For anonymous authors, this is the value as typed in the comment form.
   *
   * @param string $homepage
   *   The homepage address of the author of the comment.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setHomepage($homepage);

  /**
   * Returns the comment author's hostname.
   *
   * @return string
   *   The hostname of the author of the comment.
   */
  public function getHostname();

  /**
   * Sets the hostname of the author of the comment.
   *
   * @param string $hostname
   *   The hostname of the author of the comment.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setHostname($hostname);

  /**
   * Returns the time that the comment was created.
   *
   * @return int
   *   The timestamp of when the comment was created.
   */
  public function getCreatedTime();

  /**
   * Sets the creation date of the comment.
   *
   * @param int $created
   *   The timestamp of when the comment was created.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setCreatedTime($created);

  /**
   * Returns the alphadecimal representation of the comment's place in a thread.
   *
   * @return string|null
   *   The alphadecimal representation of the comment's place in a thread. NULL
   *   is returned before a comment is saved.
   */
  public function getThread();

  /**
   * Sets the alphadecimal representation of the comment's place in a thread.
   *
   * @param string $thread
   *   The alphadecimal representation of the comment's place in a thread.
   *
   * @return $this
   *   The class instance that this method is called on.
   */
  public function setThread($thread);

  /**
   * Returns the permalink URL for this comment.
   *
   * @return \Drupal\Core\Url
   */
  public function permalink();

  /**
   * Get the comment type id for this comment.
   *
   * @return string
   *   The id of the comment type.
   */
  public function getTypeId();

}

Members

Namesort descending Modifiers Type Description Overrides
AccessibleInterface::access public function Checks data value access. 6
CacheableDependencyInterface::getCacheContexts public function The cache contexts associated with this object. 12
CacheableDependencyInterface::getCacheMaxAge public function The maximum age for which this object may be cached. 12
CacheableDependencyInterface::getCacheTags public function The cache tags associated with this object. 12
CommentInterface::ANONYMOUS_MAYNOT_CONTACT constant Anonymous posters cannot enter their contact information.
CommentInterface::ANONYMOUS_MAY_CONTACT constant Anonymous posters may leave their contact information.
CommentInterface::ANONYMOUS_MUST_CONTACT constant Anonymous posters are required to leave their contact information.
CommentInterface::getAuthorEmail public function Returns the comment author's email address. 1
CommentInterface::getAuthorName public function Returns the comment author's name. 1
CommentInterface::getCommentedEntity public function Returns the entity to which the comment is attached. 1
CommentInterface::getCommentedEntityId public function Returns the ID of the entity to which the comment is attached. 1
CommentInterface::getCommentedEntityTypeId public function Returns the type of the entity to which the comment is attached. 1
CommentInterface::getCreatedTime public function Returns the time that the comment was created. 1
CommentInterface::getFieldName public function Returns the name of the field the comment is attached to. 1
CommentInterface::getHomepage public function Returns the comment author's home page address. 1
CommentInterface::getHostname public function Returns the comment author's hostname. 1
CommentInterface::getParentComment public function Returns the parent comment entity if this is a reply to a comment. 1
CommentInterface::getSubject public function Returns the subject of the comment. 1
CommentInterface::getThread public function Returns the alphadecimal representation of the comment's place in a thread. 1
CommentInterface::getTypeId public function Get the comment type id for this comment. 1
CommentInterface::hasParentComment public function Determines if this comment is a reply to another comment. 1
CommentInterface::NOT_PUBLISHED constant Comment is awaiting approval.
CommentInterface::permalink public function Returns the permalink URL for this comment. 1
CommentInterface::PUBLISHED constant Comment is published.
CommentInterface::setAuthorName public function Sets the name of the author of the comment. 1
CommentInterface::setCreatedTime public function Sets the creation date of the comment. 1
CommentInterface::setFieldName public function Sets the field ID for which this comment is attached. 1
CommentInterface::setHomepage public function Sets the comment author's home page address. 1
CommentInterface::setHostname public function Sets the hostname of the author of the comment. 1
CommentInterface::setSubject public function Sets the subject of the comment. 1
CommentInterface::setThread public function Sets the alphadecimal representation of the comment's place in a thread. 1
EntityChangedInterface::getChangedTime public function Gets the timestamp of the last entity change for the current translation.
EntityChangedInterface::getChangedTimeAcrossTranslations public function Gets the timestamp of the last entity change across all translations.
EntityChangedInterface::setChangedTime public function Sets the timestamp of the last entity change for the current translation.
EntityInterface::bundle public function Gets the bundle of the entity. 1
EntityInterface::create public static function Constructs a new entity object, without permanently saving it. 1
EntityInterface::createDuplicate public function Creates a duplicate of the entity. 2
EntityInterface::delete public function Deletes an entity permanently. 1
EntityInterface::enforceIsNew public function Enforces an entity to be new. 1
EntityInterface::getCacheTagsToInvalidate public function Returns the cache tags that should be used to invalidate caches. 3
EntityInterface::getConfigDependencyKey public function Gets the key that is used to store configuration dependencies. 1
EntityInterface::getConfigDependencyName public function Gets the configuration dependency name. 1
EntityInterface::getConfigTarget public function Gets the configuration target identifier for the entity. 1
EntityInterface::getEntityType public function Gets the entity type definition. 1
EntityInterface::getEntityTypeId public function Gets the ID of the type of the entity. 1
EntityInterface::getOriginalId public function Gets the original ID. 1
EntityInterface::getTypedData public function Gets a typed data object for this entity object. 1
EntityInterface::hasLinkTemplate public function Indicates if a link template exists for a given key. 1
EntityInterface::id public function Gets the identifier. 1
EntityInterface::isNew public function Determines whether the entity is new. 1
EntityInterface::label public function Gets the label of the entity. 3
EntityInterface::language public function Gets the language of the entity. 1
EntityInterface::load public static function Loads an entity. 1
EntityInterface::loadMultiple public static function Loads one or more entities. 1
EntityInterface::postCreate public function Acts on a created entity before hooks are invoked. 1
EntityInterface::postDelete public static function Acts on deleted entities before the delete hook is invoked. 7
EntityInterface::postLoad public static function Acts on loaded entities. 2
EntityInterface::postSave public function Acts on a saved entity before the insert or update hook is invoked. 8
EntityInterface::preCreate public static function Changes the values of an entity before it is created. 4
EntityInterface::preDelete public static function Acts on entities before they are deleted and before hooks are invoked. 6
EntityInterface::preSave public function Acts on an entity before the presave hook is invoked. 8
EntityInterface::referencedEntities public function Gets a list of entities referenced by this entity. 2
EntityInterface::save public function Saves an entity permanently. 3
EntityInterface::setOriginalId public function Sets the original ID. 1
EntityInterface::toLink public function Generates the HTML for a link to this entity. 1
EntityInterface::toUrl public function Gets the URL object for the entity. 1
EntityInterface::uriRelationships public function Gets a list of URI relationships supported by this entity. 1
EntityInterface::uuid public function Gets the entity UUID (Universally Unique Identifier). 1
EntityOwnerInterface::getOwner public function Returns the entity owner's user entity. 1
EntityOwnerInterface::getOwnerId public function Returns the entity owner's user ID. 1
EntityOwnerInterface::setOwner public function Sets the entity owner's user entity. 1
EntityOwnerInterface::setOwnerId public function Sets the entity owner's user ID. 1
EntityPublishedInterface::isPublished public function Returns whether or not the entity is published.
EntityPublishedInterface::setPublished public function Sets the entity as published.
EntityPublishedInterface::setUnpublished public function Sets the entity as unpublished.
FieldableEntityInterface::baseFieldDefinitions public static function Provides base field definitions for an entity type. 7
FieldableEntityInterface::bundleFieldDefinitions public static function Provides field definitions for a specific bundle. 2
FieldableEntityInterface::get public function Gets a field item list.
FieldableEntityInterface::getFieldDefinition public function Gets the definition of a contained field.
FieldableEntityInterface::getFieldDefinitions public function Gets an array of field definitions of all contained fields.
FieldableEntityInterface::getFields public function Gets an array of all field item lists.
FieldableEntityInterface::getTranslatableFields public function Gets an array of field item lists for translatable fields.
FieldableEntityInterface::hasField public function Determines whether the entity has a field with the given name.
FieldableEntityInterface::isValidationRequired public function Checks whether entity validation is required before saving the entity.
FieldableEntityInterface::onChange public function Reacts to changes to a field.
FieldableEntityInterface::set public function Sets a field value.
FieldableEntityInterface::setValidationRequired public function Sets whether entity validation is required before saving the entity.
FieldableEntityInterface::toArray public function Gets an array of all field values. Overrides EntityInterface::toArray
FieldableEntityInterface::validate public function Validates the currently set values. 1
RefinableCacheableDependencyInterface::addCacheableDependency public function Adds a dependency on an object: merges its cacheability metadata.
RefinableCacheableDependencyInterface::addCacheContexts public function Adds cache contexts.
RefinableCacheableDependencyInterface::addCacheTags public function Adds cache tags.
RefinableCacheableDependencyInterface::mergeCacheMaxAge public function Merges the maximum age (in seconds) with the existing maximum age.
RevisionableInterface::getLoadedRevisionId public function Gets the loaded Revision ID of the entity.
RevisionableInterface::getRevisionId public function Gets the revision identifier of the entity.
RevisionableInterface::isDefaultRevision public function Checks if this entity is the default revision.
RevisionableInterface::isLatestRevision public function Checks if this entity is the latest revision.
RevisionableInterface::isNewRevision public function Determines whether a new revision should be created on save.
RevisionableInterface::preSaveRevision public function Acts on a revision before it gets saved. 3
RevisionableInterface::setNewRevision public function Enforces an entity to be saved as a new revision.
RevisionableInterface::updateLoadedRevisionId public function Updates the loaded Revision ID with the revision ID.
RevisionableInterface::wasDefaultRevision public function Checks whether the entity object was a default revision when it was saved.
SynchronizableInterface::isSyncing public function Returns whether this entity is being changed as part of a synchronization.
SynchronizableInterface::setSyncing public function Sets the status of the synchronization flag.
TranslatableInterface::addTranslation public function Adds a new translation to the translatable object.
TranslatableInterface::getTranslation public function Gets a translation of the data.
TranslatableInterface::getTranslationLanguages public function Returns the languages the data is translated to.
TranslatableInterface::getUntranslated public function Returns the translatable object in the language it was created.
TranslatableInterface::hasTranslation public function Checks there is a translation for the given language code.
TranslatableInterface::hasTranslationChanges public function Determines if the current translation of the entity has unsaved changes.
TranslatableInterface::isDefaultTranslation public function Checks whether the translation is the default one.
TranslatableInterface::isNewTranslation public function Checks whether the translation is new.
TranslatableInterface::isTranslatable public function Returns the translation support status.
TranslatableInterface::removeTranslation public function Removes the translation identified by the given language code.
TranslatableRevisionableInterface::isDefaultTranslationAffectedOnly public function Checks if untranslatable fields should affect only the default translation.
TranslatableRevisionableInterface::isLatestTranslationAffectedRevision public function Checks whether this is the latest revision affecting this translation.
TranslatableRevisionableInterface::isRevisionTranslationAffected public function Checks whether the current translation is affected by the current revision.
TranslatableRevisionableInterface::isRevisionTranslationAffectedEnforced public function Checks if the revision translation affected flag value has been enforced.
TranslatableRevisionableInterface::setRevisionTranslationAffected public function Marks the current revision translation as affected.
TranslatableRevisionableInterface::setRevisionTranslationAffectedEnforced public function Enforces the revision translation affected flag value.