File Coverage

blib/lib/Paws/IoT/DynamoDBAction.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::IoT::DynamoDBAction;
2 1     1   281 use Moose;
  1         2  
  1         6  
3             has HashKeyField => (is => 'ro', isa => 'Str', request_name => 'hashKeyField', traits => ['NameInRequest'], required => 1);
4             has HashKeyType => (is => 'ro', isa => 'Str', request_name => 'hashKeyType', traits => ['NameInRequest']);
5             has HashKeyValue => (is => 'ro', isa => 'Str', request_name => 'hashKeyValue', traits => ['NameInRequest'], required => 1);
6             has Operation => (is => 'ro', isa => 'Str', request_name => 'operation', traits => ['NameInRequest']);
7             has PayloadField => (is => 'ro', isa => 'Str', request_name => 'payloadField', traits => ['NameInRequest']);
8             has RangeKeyField => (is => 'ro', isa => 'Str', request_name => 'rangeKeyField', traits => ['NameInRequest']);
9             has RangeKeyType => (is => 'ro', isa => 'Str', request_name => 'rangeKeyType', traits => ['NameInRequest']);
10             has RangeKeyValue => (is => 'ro', isa => 'Str', request_name => 'rangeKeyValue', traits => ['NameInRequest']);
11             has RoleArn => (is => 'ro', isa => 'Str', request_name => 'roleArn', traits => ['NameInRequest'], required => 1);
12             has TableName => (is => 'ro', isa => 'Str', request_name => 'tableName', traits => ['NameInRequest'], required => 1);
13             1;
14              
15             ### main pod documentation begin ###
16              
17             =head1 NAME
18              
19             Paws::IoT::DynamoDBAction
20              
21             =head1 USAGE
22              
23             This class represents one of two things:
24              
25             =head3 Arguments in a call to a service
26              
27             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
28             Each attribute should be used as a named argument in the calls that expect this type of object.
29              
30             As an example, if Att1 is expected to be a Paws::IoT::DynamoDBAction object:
31              
32             $service_obj->Method(Att1 => { HashKeyField => $value, ..., TableName => $value });
33              
34             =head3 Results returned from an API call
35              
36             Use accessors for each attribute. If Att1 is expected to be an Paws::IoT::DynamoDBAction object:
37              
38             $result = $service_obj->Method(...);
39             $result->Att1->HashKeyField
40              
41             =head1 DESCRIPTION
42              
43             Describes an action to write to a DynamoDB table.
44              
45             The C<tableName>, C<hashKeyField>, and C<rangeKeyField> values must
46             match the values used when you created the table.
47              
48             The C<hashKeyValue> and C<rangeKeyvalue> fields use a substitution
49             template syntax. These templates provide data at runtime. The syntax is
50             as follows: ${I<sql-expression>}.
51              
52             You can specify any valid expression in a WHERE or SELECT clause,
53             including JSON properties, comparisons, calculations, and functions.
54             For example, the following field uses the third level of the topic:
55              
56             C<"hashKeyValue": "${topic(3)}">
57              
58             The following field uses the timestamp:
59              
60             C<"rangeKeyValue": "${timestamp()}">
61              
62             =head1 ATTRIBUTES
63              
64              
65             =head2 B<REQUIRED> HashKeyField => Str
66              
67             The hash key name.
68              
69              
70             =head2 HashKeyType => Str
71              
72             The hash key type. Valid values are "STRING" or "NUMBER"
73              
74              
75             =head2 B<REQUIRED> HashKeyValue => Str
76              
77             The hash key value.
78              
79              
80             =head2 Operation => Str
81              
82             The type of operation to be performed. This follows the substitution
83             template, so it can be C<${operation}>, but the substitution must
84             result in one of the following: C<INSERT>, C<UPDATE>, or C<DELETE>.
85              
86              
87             =head2 PayloadField => Str
88              
89             The action payload. This name can be customized.
90              
91              
92             =head2 RangeKeyField => Str
93              
94             The range key name.
95              
96              
97             =head2 RangeKeyType => Str
98              
99             The range key type. Valid values are "STRING" or "NUMBER"
100              
101              
102             =head2 RangeKeyValue => Str
103              
104             The range key value.
105              
106              
107             =head2 B<REQUIRED> RoleArn => Str
108              
109             The ARN of the IAM role that grants access to the DynamoDB table.
110              
111              
112             =head2 B<REQUIRED> TableName => Str
113              
114             The name of the DynamoDB table.
115              
116              
117              
118             =head1 SEE ALSO
119              
120             This class forms part of L<Paws>, describing an object used in L<Paws::IoT>
121              
122             =head1 BUGS and CONTRIBUTIONS
123              
124             The source code is located here: https://github.com/pplu/aws-sdk-perl
125              
126             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
127              
128             =cut
129