NAME Data::HashType - Data object for hash type. SYNOPSIS use Data::HashType; my $obj = Data::HashType->new(%params); my $active = $obj->active; # deprecated my $id = $obj->id; my $name = $obj->name; my $valid_from = $obj->valid_from; my $valid_to = $obj->valid_to; DESCRIPTION The intention of this module is to store information about the usage of digests. Digests are active only within a certain time range, and we need a mechanism to transition to others. A real-world example is a database table that follows the same format as this data object, with multiple records being valid at different times, while other database tables have relations to this table. METHODS "new" my $obj = Data::HashType->new(%params); Constructor. * "active" Parameter 'active' will be removed. Use the "valid_from/valid_to" parameter instead. Flag for activity of hash type. Possible value is 0/1. Default value is 1 (active). * "id" Id of record. Id could be number. It's optional. Default value is undef. * "name" Hash type name. Maximal length of value is 50 characters. It's required. * "valid_from" Date and time of start of use. Must be a DateTime object. It's required. * "valid_to" Date and time of end of use. An undefined value means it is in use. Must be a DateTime object. It's optional. Returns instance of object. "active" Method 'active' will be removed. Use the valid_from/valid_to parameter instead. my $active = $obj->active; Get active flag. Returns 0/1. "id" my $id = $obj->id; Get hash type record id. Returns number. "name" my $name = $obj->name; Get hash type name. Returns string. "valid_from" my $valid_from = $obj->valid_from; Get date and time of start of use. Returns DateTime object. "valid_to" my $valid_to = $obj->valid_to; Get date and time of end of use. Returns DateTime object or undef. ERRORS new(): From Mo::utils: Parameter 'active' must be a bool (0/1). Value: %s Parameter 'id' must be a number. Value: %s Parameter 'name' has length greater than '50'. Value: %s Parameter 'name' is required. Parameter 'valid_from' must be a 'DateTime' object. Value: %s Reference: %s Parameter 'valid_to' must be a 'DateTime' object. Value: %s Reference: %s Parameter 'valid_to' must be older than 'valid_from' parameter. Value: %s Valid from: %s EXAMPLE use strict; use warnings; use Data::HashType; use DateTime; my $obj = Data::HashType->new( 'id' => 10, 'name' => 'SHA-256', 'valid_from' => DateTime->new( 'year' => 2024, 'month' => 1, 'day' => 1, ), ); # Print out. print 'Name: '.$obj->name."\n"; print 'Id: '.$obj->id."\n"; print 'Valid from: '.$obj->valid_from->ymd."\n"; # Output: # Name: SHA-256 # Id: 10 # Valid from: 2024-01-01 DEPENDENCIES Error::Pure, Mo, Mo::utils. REPOSITORY AUTHOR Michal Josef Špaček LICENSE AND COPYRIGHT © 2023-2024 Michal Josef Špaček BSD 2-Clause License VERSION 0.04