marketo_suite-1.0.x-dev/src/Plugin/SubmissionBehaviorInterface.php
src/Plugin/SubmissionBehaviorInterface.php
<?php
namespace Drupal\e3_marketo\Plugin;
use Drupal\Component\Plugin\PluginInspectionInterface;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\e3_marketo\Entity\MarketoFormEntityInterface;
/**
* Interface for Marketo Submission Behavior plugins.
*
* @ingroup e3_marketo
*/
interface SubmissionBehaviorInterface extends PluginInspectionInterface, ContainerFactoryPluginInterface {
/**
* Get the name of the Marketo Handler plugin.
*
* @return string
* Plugin Label.
*/
public function getLabel() : string;
/**
* Retrieve plugin description.
*
* @return string
* Plugin Description.
*/
public function getDescription() : string;
/**
* Get the array of callbacks to execute in the scope of the plugin.
*
* @param \Drupal\e3_marketo\Entity\MarketoFormEntityInterface $marketo_form
* Marketo Form entity.
* @param array $extra_data
* Extra data to pass into the callback.
*
* @return array
* List of callbacks.
*/
public function getSubmissionCallbacks(MarketoFormEntityInterface $marketo_form, array $extra_data = []) : array;
}
