pub struct TransactionGenerator { /* private fields */ }Expand description
Transaction generator that produces synthetic transaction workloads.
Implementations§
Source§impl TransactionGenerator
impl TransactionGenerator
Sourcepub fn new(config: GeneratorConfig) -> Self
pub fn new(config: GeneratorConfig) -> Self
Create a new transaction generator with the given configuration.
Sourcepub fn config(&self) -> &GeneratorConfig
pub fn config(&self) -> &GeneratorConfig
Get a reference to the configuration.
Sourcepub fn set_config(&mut self, config: GeneratorConfig)
pub fn set_config(&mut self, config: GeneratorConfig)
Update the configuration.
Sourcepub fn customer_count(&self) -> usize
pub fn customer_count(&self) -> usize
Get the number of customers.
Sourcepub fn customers(&self) -> &[CustomerRiskProfile]
pub fn customers(&self) -> &[CustomerRiskProfile]
Get a reference to all customers.
Sourcepub fn get_customer_mut(
&mut self,
customer_id: u64,
) -> Option<&mut CustomerRiskProfile>
pub fn get_customer_mut( &mut self, customer_id: u64, ) -> Option<&mut CustomerRiskProfile>
Get a mutable reference to a customer by ID.
Sourcepub fn generate_batch(&mut self) -> (Vec<Transaction>, Vec<CustomerRiskProfile>)
pub fn generate_batch(&mut self) -> (Vec<Transaction>, Vec<CustomerRiskProfile>)
Generate a batch of transactions and return with their customer profiles.
Returns (transactions, corresponding profiles).
Sourcepub fn reset_velocity_window(&mut self)
pub fn reset_velocity_window(&mut self)
Reset velocity counts for all customers (simulating new time window).
Sourcepub fn customer_stats(&self) -> CustomerStats
pub fn customer_stats(&self) -> CustomerStats
Get statistics about the customer base.
Auto Trait Implementations§
impl Freeze for TransactionGenerator
impl RefUnwindSafe for TransactionGenerator
impl Send for TransactionGenerator
impl Sync for TransactionGenerator
impl Unpin for TransactionGenerator
impl UnsafeUnpin for TransactionGenerator
impl UnwindSafe for TransactionGenerator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<State, Message> IntoBoot<State, Message> for State
impl<State, Message> IntoBoot<State, Message> for State
Source§fn into_boot(self) -> (State, Task<Message>)
fn into_boot(self) -> (State, Task<Message>)
Turns some type into the initial state of some
Application.