NAME
OpenTracing::Implementation::Interface::Bootstrap - Ensure we do the right thing
SYNOPSIS
package My::OpenTracing::Implementation
sub bootstrap_tracer {
my $class = shift;
my @args = @_; # whatever
...
my $tracer = ...
return $tracer
}
BEGIN {
use Role::Tiny::With;
with 'OpenTracing::Implementation::Interface::Bootstrap'
if $ENV{OPENTRACING_INTERFACE}
} # check at compile time, perl -c will work
1;
DESCRIPTION
This 'role' describes the interface needed for OpenTracing::Implementation bootstraps.
It does so be wrapping typechecks around a required method: bootstrap
REQUIRED METHODS
The below mentioned methods MUST be implemented by the consuming class:
bootstrap
A class method, that accepts further arguments to bootstrap or set-up a specific implementation