PluginService
class PluginService (View source)
Central authority for interactions with plugins.
Whenever details about Plugins or PluginViews are needed this service should be used.
For some methods the ContentContext has to be specified. This is required in order for the ContentRepository to fetch nodes of the current workspace. The context can be retrieved from any node of the correct workspace & tree. If no node is available (e.g. for CLI requests) the ContentContextFactory can be used to create a context instance.
Properties
protected NodeTypeManager | $nodeTypeManager | ||
protected NodeDataRepository | $nodeDataRepository | ||
protected Context | $securityContext | ||
protected ContentContextFactory | $contentContextFactory | ||
protected NodeFactory | $nodeFactory |
Methods
Returns an array of all plugin nodes with View Definitions
Get all configured PluginView definitions for a specific $pluginNodeType
returns a plugin node or one of it's view nodes if an view has been configured for that specific controller and action combination
Fetch a PluginView definition that matches the specified controller and action combination
returns a specific view node of an master plugin or NULL if it does not exist
Details
NodeInterface[]
getPluginNodes(ContentContext $context)
Returns an array of all available plugin nodes
NodeInterface[]
getPluginNodesWithViewDefinitions(ContentContext $context)
Returns an array of all plugin nodes with View Definitions
protected NodeInterface[]
getNodes(array $nodeTypes, ContentContext $context)
Find all nodes of a specific node type
PluginViewDefinition[]
getPluginViewDefinitionsByPluginNodeType(NodeType $pluginNodeType)
Get all configured PluginView definitions for a specific $pluginNodeType
protected array
getPluginViewConfigurationsByPluginNodeType(NodeType $pluginNodeType)
No description
NodeInterface
getPluginNodeByAction(NodeInterface $currentNode, string $controllerObjectName, string $actionName)
returns a plugin node or one of it's view nodes if an view has been configured for that specific controller and action combination
PluginViewDefinition
getPluginViewDefinitionByAction(string $controllerObjectName, string $actionName)
Fetch a PluginView definition that matches the specified controller and action combination
NodeInterface
getPluginViewNodeByMasterPlugin(NodeInterface $node, string $viewName)
returns a specific view node of an master plugin or NULL if it does not exist