Problem/Motivation

Create a method inside the base plugin class to initiate authentication for an entity. This way we can hide keys from outside the API unless explicitly requested from the plugin instance during the request. The initialization event could then allow subscribers to make changes before sending the message contain keys. This would allow plugin developers to not have to handle keys at all.

Steps to reproduce

Proposed resolution

Create a method in the plugin base class to handle initialization. Example:
$plugin_instance->initialize($entity, $medium)

API changes

Key management would completely be handled by the base plugin class unless explicitly asked for by a dev in the same request and plugin instance.

Comments

alexandersluiter created an issue.