pub trait PluginRunnerTrait {
// Required method
fn run<'life0, 'life1, 'async_trait, J, RR, TR, NR, NFR, SR, TCR, PR>(
&'life0 self,
socket_path: &'life1 str,
script_path: String,
timeout_duration: Duration,
script_params: String,
state: Arc<ThinDataAppState<J, RR, TR, NR, NFR, SR, TCR, PR>>,
) -> Pin<Box<dyn Future<Output = Result<ScriptResult, PluginError>> + Send + 'async_trait>>
where J: JobProducerTrait + Send + Sync + 'static + 'async_trait,
RR: RelayerRepository + Repository<RelayerRepoModel, String> + Send + Sync + 'static + 'async_trait,
TR: TransactionRepository + Repository<TransactionRepoModel, String> + Send + Sync + 'static + 'async_trait,
NR: NetworkRepository + Repository<NetworkRepoModel, String> + Send + Sync + 'static + 'async_trait,
NFR: Repository<NotificationRepoModel, String> + Send + Sync + 'static + 'async_trait,
SR: Repository<SignerRepoModel, String> + Send + Sync + 'static + 'async_trait,
TCR: TransactionCounterTrait + Send + Sync + 'static + 'async_trait,
PR: PluginRepositoryTrait + Send + Sync + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}
Required Methods§
fn run<'life0, 'life1, 'async_trait, J, RR, TR, NR, NFR, SR, TCR, PR>(
&'life0 self,
socket_path: &'life1 str,
script_path: String,
timeout_duration: Duration,
script_params: String,
state: Arc<ThinDataAppState<J, RR, TR, NR, NFR, SR, TCR, PR>>,
) -> Pin<Box<dyn Future<Output = Result<ScriptResult, PluginError>> + Send + 'async_trait>>where
J: JobProducerTrait + Send + Sync + 'static + 'async_trait,
RR: RelayerRepository + Repository<RelayerRepoModel, String> + Send + Sync + 'static + 'async_trait,
TR: TransactionRepository + Repository<TransactionRepoModel, String> + Send + Sync + 'static + 'async_trait,
NR: NetworkRepository + Repository<NetworkRepoModel, String> + Send + Sync + 'static + 'async_trait,
NFR: Repository<NotificationRepoModel, String> + Send + Sync + 'static + 'async_trait,
SR: Repository<SignerRepoModel, String> + Send + Sync + 'static + 'async_trait,
TCR: TransactionCounterTrait + Send + Sync + 'static + 'async_trait,
PR: PluginRepositoryTrait + Send + Sync + 'static + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.