class Sandwich
Same name in other branches
- 4.0.x modules/plugin_type_example/src/Annotation/Sandwich.php \Drupal\plugin_type_example\Annotation\Sandwich
Defines a Sandwich annotation object.
Provides an example of how to define a new annotation type for use in defining a plugin type. Demonstrates documenting the various properties that can be used in annotations for plugins of this type.
Note that the "@ Annotation" line below is required and should be the last line in the docblock. It's used for discovery of Annotation definitions.
Hierarchy
- class \Drupal\Component\Annotation\Plugin implements \Drupal\Component\Annotation\AnnotationInterface
- class \Drupal\plugin_type_example\Annotation\Sandwich extends \Drupal\Component\Annotation\Plugin
Expanded class hierarchy of Sandwich
See also
\Drupal\plugin_type_example\SandwichPluginManager
1 file declares its use of Sandwich
- SandwichPluginManager.php in modules/
plugin_type_example/ src/ SandwichPluginManager.php
2 classes are annotated with Sandwich
- ExampleHamSandwich in modules/
plugin_type_example/ src/ Plugin/ Sandwich/ ExampleHamSandwich.php - Provides a ham sandwich.
- ExampleMeatballSandwich in modules/
plugin_type_example/ src/ Plugin/ Sandwich/ ExampleMeatballSandwich.php - Provides a meatball sandwich.
File
-
modules/
plugin_type_example/ src/ Annotation/ Sandwich.php, line 22
Namespace
Drupal\plugin_type_example\AnnotationView source
class Sandwich extends Plugin {
/**
* A brief, human readable, description of the sandwich type.
*
* This property is designated as being translatable because it will appear
* in the user interface. This provides a hint to other developers that they
* should use the Translation() construct in their annotation when declaring
* this property.
*
* @var \Drupal\Core\Annotation\Translation
*
* @ingroup plugin_translatable
*/
public $description;
/**
* The number of calories per serving of this sandwich type.
*
* This property is a float value, so we indicate that to other developers
* who are writing annotations for a Sandwich plugin.
*
* @var int
*/
public $calories;
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
Plugin::$definition | protected | property | The plugin definition read from the class annotation. | 1 | |
Plugin::get | public | function | Gets the value of an annotation. | Overrides AnnotationInterface::get | 6 |
Plugin::getClass | public | function | Gets the class of the annotated class. | Overrides AnnotationInterface::getClass | 1 |
Plugin::getId | public | function | Gets the unique ID for this annotated class. | Overrides AnnotationInterface::getId | |
Plugin::getProvider | public | function | Gets the name of the provider of the annotated class. | Overrides AnnotationInterface::getProvider | 1 |
Plugin::parse | protected | function | Parses an annotation into its definition. | ||
Plugin::setClass | public | function | Sets the class of the annotated class. | Overrides AnnotationInterface::setClass | 1 |
Plugin::setProvider | public | function | Sets the name of the provider of the annotated class. | Overrides AnnotationInterface::setProvider | |
Plugin::__construct | public | function | Constructs a Plugin object. | 3 | |
Sandwich::$calories | public | property | The number of calories per serving of this sandwich type. | ||
Sandwich::$description | public | property | A brief, human readable, description of the sandwich type. |