File Coverage

blib/lib/WebService/Mattermost/V4/API/Object/Role/CreatedAt.pm
Criterion Covered Total %
statement 8 10 80.0
branch n/a
condition n/a
subroutine 3 4 75.0
pod n/a
total 11 14 78.5


line stmt bran cond sub pod time code
1             package WebService::Mattermost::V4::API::Object::Role::CreatedAt;
2:

3: # ABSTRACT: Adds a "created_at" attribute to an object. 4:
5: use Moo::Role;
6: use Types::Standard qw(InstanceOf Int Maybe);
7:
8: ################################################################################
9:
10: has create_at => (is => 'ro', isa => Maybe[Int], lazy => 1, builder => 1);
11: has created_at => (is => 'ro', isa => Maybe[InstanceOf['DateTime']], lazy => 1, builder => 1);
12:
13: ################################################################################
14:
15: sub _build_create_at {
16: my $self = shift;
17:
18: return $self->raw_data->{create_at};
19: }
20:
21: sub _build_created_at {
22: my $self = shift;
23:
24: return $self->_from_epoch($self->raw_data->{create_at});
25: }
26:
27: ################################################################################
28:
29: 1;
30:
31: __END__
32:
33: =pod
34:
35: =encoding UTF-8
36:
37: =head1 NAME
38:
39: WebService::Mattermost::V4::API::Object::Role::CreatedAt - Adds a "created_at" attribute to an object.
40:
41: =head1 VERSION
42:
43: version 0.28
44:
45: =head1 DESCRIPTION
46:
47: Attach common timestamps to a v4::Object object.
48:
49: =head2 ATTRIBUTES
50:
51: =over 4
52:
53: =item C<create_at>
54:
55: UNIX timestamp.
56:
57: =item C<created_at>
58:
59: C<DateTime> object.
60:
61: =back
62:
63: =head1 AUTHOR
64:
65: Mike Jones <mike@netsplit.org.uk>
66:
67: =head1 COPYRIGHT AND LICENSE
68:
69: This software is Copyright (c) 2020 by Mike Jones.
70:
71: This is free software, licensed under:
72:
73: The MIT (X11) License
74:
75: =cut
76: