Trait PluginRunnerTrait

Source
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§

Source

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.

Implementors§