File Coverage

lib/Net/Upwork/API/Routers/Hr/Contracts.pm
Criterion Covered Total %
statement 12 26 46.1
branch n/a
condition n/a
subroutine 4 8 50.0
pod 4 4 100.0
total 20 38 52.6


line stmt bran cond sub pod time code
1             # Licensed under the Upwork's API Terms of Use;
2             # you may not use this file except in compliance with the Terms.
3             #
4             # Unless required by applicable law or agreed to in writing, software
5             # distributed under the License is distributed on an "AS IS" BASIS,
6             # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7             # See the License for the specific language governing permissions and
8             # limitations under the License.
9             #
10             # Author:: Maksym Novozhylov (mnovozhilov@upwork.com)
11             # Copyright:: Copyright 2015(c) Upwork.com
12             # License:: See LICENSE.txt and TOS - https://developers.upwork.com/api-tos.html
13              
14             package Net::Upwork::API::Routers::Hr::Contracts;
15              
16 2     2   73796 use strict;
  2         12  
  2         57  
17 2     2   10 use warnings;
  2         3  
  2         51  
18 2     2   503 use parent "Net::Upwork::API";
  2         306  
  2         9  
19              
20 2     2   218 use constant ENTRY_POINT => Net::Upwork::API::Client::ENTRY_POINT_API;
  2         3  
  2         562  
21              
22             =pod
23              
24             =head1 NAME
25              
26             Auth
27              
28             =head1 FUNCTIONS
29              
30             =over 4
31              
32             =item new($api)
33              
34             Create a new object for accessing Auth API
35              
36             B
37              
38             $api
39              
40             API object
41              
42             =cut
43              
44             sub new {
45 0     0 1   my ($class, $api) = @_;
46 0           return Net::Upwork::API::init_router($class, $api, ENTRY_POINT);
47             }
48              
49             =item suspend_contract
50              
51             Suspend Contract
52              
53             B
54              
55             $reference
56              
57             Contract reference
58              
59             $params
60              
61             Hash of parameters
62              
63             B
64              
65             JSON response as a string
66              
67             =cut
68              
69             sub suspend_contract {
70 0     0 1   my $self = shift;
71 0           my $reference = shift;
72 0           my %params = @_;
73              
74 0           return $self->client()->put("/hr/v2/contracts/" . $reference . "/suspend", %params);
75             }
76              
77             =item restart_contract
78              
79             Restart Contract
80              
81             B
82              
83             $reference
84              
85             Contract reference
86              
87             $params
88              
89             Hash of parameters
90              
91             B
92              
93             JSON response as a string
94              
95             =cut
96              
97             sub restart_contract {
98 0     0 1   my $self = shift;
99 0           my $reference = shift;
100 0           my %params = @_;
101              
102 0           return $self->client()->put("/hr/v2/contracts/" . $reference . "/restart", %params);
103             }
104              
105             =item end_contract
106              
107             End Contract
108              
109             B
110              
111             $reference
112              
113             Contract reference
114              
115             $params
116              
117             Hash of parameters
118              
119             B
120              
121             JSON response as a string
122              
123             =cut
124              
125             sub end_contract {
126 0     0 1   my $self = shift;
127 0           my $reference = shift;
128 0           my %params = @_;
129              
130 0           return $self->client()->delete("/hr/v2/contracts/" . $reference, %params);
131             }
132              
133             =back
134              
135             =head1 AUTHOR
136              
137             Maksym Novozhylov C<< >>
138              
139             =head1 COPYRIGHT
140              
141             Copyright E Upwork Global Corp., 2015
142              
143             =cut
144              
145             1;