'Register the trunk driver.
This method should be overridden so that the driver can subscribe
to the required trunk events. The driver should also advertise
itself as supported driver by calling register_driver() on the
TrunkPlugin otherwise the trunk plugin may fail to start if no
compatible configuration is found.
External drivers must subscribe to the AFTER_INIT event for the
trunk plugin so that they can integrate without an explicit
register() method invocation.
:param resource: neutron.services.trunk.constants.TRUNK_PLUGIN
:param event: neutron_lib.callbacks.events.AFTER_INIT
:param trigger: neutron.service.trunks.plugin.TrunkPlugin'

@registry.receives(trunk_consts.TRUNK_PLUGIN, [events.AFTER_INIT])
def register(self, resource, event, trigger, **kwargs):

    trigger.register_driver(self)
    if (self.is_loaded and self.agent_type and (not trigger.is_rpc_enabled())):
        trigger.set_rpc_backend(backend.ServerSideRpcBackend())
