Worker

Struct Worker 

Source
pub struct Worker { /* private fields */ }
Expand description

Asset worker for subscribing to asset updates via the OKX WebSocket API.

The Worker manages asynchronous WebSocket connections for asset updates and ensures resources are properly cleaned up when dropped.

Trait Implementations§

Source§

impl AssetWorker for Worker

Source§

fn name(&self) -> &'static str

Returns the name identifier for the worker.

This method provides a unique identifier for the OKX worker, which is used for metrics collection and logging.

§Returns

A static string slice containing the worker name “okx”.

Source§

fn build<'life0, 'async_trait, S>( opts: Self::Opts, store: &'life0 S, ids: Vec<String>, ) -> Pin<Box<dyn Future<Output = Result<Self, AssetWorkerError>> + Send + 'async_trait>>
where S: 'async_trait + Store + 'static, Self: 'async_trait, 'life0: 'async_trait,

Builds and starts the OKXWorker.

This method creates an OKX WebSocket client, spawns an asynchronous task to subscribe to asset updates, and returns the running Worker instance.

§Parameters
  • opts: Configuration options for the worker, including URL
  • store: The store instance for persisting asset data
  • ids: A vector of asset identifiers to monitor
§Returns

Returns a Result containing a Worker instance on success, or an AssetWorkerError if the worker cannot be built.

Source§

type Opts = WorkerOpts

Configuration options for the worker. Read more

Auto Trait Implementations§

§

impl Freeze for Worker

§

impl RefUnwindSafe for Worker

§

impl Send for Worker

§

impl Sync for Worker

§

impl Unpin for Worker

§

impl UnwindSafe for Worker

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more