NAME Data::Random::HashType - Random hash type objects. SYNOPSIS use Data::Random::HashType; my $obj = Data::Random::HashType->new(%params); my @hash_types = $obj->random; METHODS "new" my $obj = Data::Random::HashType->new(%params); Constructor. * "cb_id" Callback to adding of id. Default value is subroutine which returns "$self-"{'id'}++>. * "dt_start" DateTime object with start date for random valid_from date. Range is dt_start and actual date. Default value is January 1. year ago. * "id" Minimal id for adding. Only if "mode_id" is set to 1. Default value is 1. * "mode_id" Boolean value if we are generating id in hash type object. Default value is 0. * "num_generated" Number of generated hash types. Default value is 1. * "possible_hash_types" Possible hash type names for result. Default value is list (SHA-256 SHA-384 SHA-512). Returns instance of object. "random" my @hash_types = $obj->random; Get random hash type object. Returns instance of Data::HashType. ERRORS new(): From Mo::utils: Parameter 'dt_start' is required. Parameter 'dt_start' must be a 'DateTime' object. Value: %s Reference: %s Parameter 'mode_id' must be a bool (0/1). Value: %s Parameter 'num_generated' must be greater than %s. Value: %s Parameter 'num_generated' is required. Parameter 'possible_hash_types' must be a reference to array. Parameter 'possible_hash_types' must contain at least one hash type name. EXAMPLE use strict; use warnings; use Data::Printer; use Data::Random::HashType; my $obj = Data::Random::HashType->new( 'mode_id' => 1, 'num_generated' => 2, ); my @hash_types = $obj->random; # Dump hash types to out. p @hash_types; # Output like: # [ # [0] Data::HashType { # parents: Mo::Object # public methods (6): # BUILD # Error::Pure: # err # Mo::utils: # check_isa, check_length, check_number, check_required # private methods (0) # internals: { # id 1, # name "SHA-384", # valid_from 2023-03-17T00:00:00 (DateTime) # } # }, # [1] Data::HashType { # parents: Mo::Object # public methods (6): # BUILD # Error::Pure: # err # Mo::utils: # check_isa, check_length, check_number, check_required # private methods (0) # internals: { # id 2, # name "SHA-256", # valid_from 2023-01-27T00:00:00 (DateTime) # } # } # ] DEPENDENCIES Class::Utils, Data::HashType, DateTime, Error::Pure, Mo::utils, Random::Day, Readonly. REPOSITORY AUTHOR Michal Josef Špaček LICENSE AND COPYRIGHT © 2023-2024 Michal Josef Špaček BSD 2-Clause License VERSION 0.05