Hide Show 12 lines of Pod
require
5.6.0;
__PACKAGE__->mk_classdata(
'method_documentation'
=> {});
sub
new {
my
$class
=
shift
;
my
$api_client
;
if
(
$_
[0] &&
ref
$_
[0] &&
ref
$_
[0] eq
'WebService::Fastly::ApiClient'
) {
$api_client
=
$_
[0];
}
else
{
$api_client
= WebService::Fastly::ApiClient->new(
@_
);
}
bless
{
api_client
=>
$api_client
},
$class
;
}
{
my
$params
= {
'event_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying an event.'
,
required
=>
'1'
,
},
};
__PACKAGE__->method_documentation->{
'get_event'
} = {
summary
=>
'Get an event'
,
params
=>
$params
,
returns
=>
'EventResponse'
,
};
}
sub
get_event {
my
(
$self
,
%args
) =
@_
;
unless
(
exists
$args
{
'event_id'
}) {
croak(
"Missing the required parameter 'event_id' when calling get_event"
);
}
my
$_resource_path
=
'/events/{event_id}'
;
my
$_method
=
'GET'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type();
if
(
exists
$args
{
'event_id'
}) {
my
$_base_variable
=
"{"
.
"event_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'event_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
my
$_body_data
;
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'EventResponse'
,
$response
);
return
$_response_object
;
}
{
my
$params
= {
'filter[customer_id]'
=> {
data_type
=>
'string'
,
description
=>
'Limit the results returned to a specific customer.'
,
required
=>
'0'
,
},
'filter[event_type]'
=> {
data_type
=>
'string'
,
description
=>
'Limit the returned events to a specific `event_type`.'
,
required
=>
'0'
,
},
'filter[service_id]'
=> {
data_type
=>
'string'
,
description
=>
'Limit the results returned to a specific service.'
,
required
=>
'0'
,
},
'filter[user_id]'
=> {
data_type
=>
'string'
,
description
=>
'Limit the results returned to a specific user.'
,
required
=>
'0'
,
},
'filter[token_id]'
=> {
data_type
=>
'string'
,
description
=>
'Limit the returned events to a specific token.'
,
required
=>
'0'
,
},
'page[number]'
=> {
data_type
=>
'int'
,
description
=>
'Current page.'
,
required
=>
'0'
,
},
'page[size]'
=> {
data_type
=>
'int'
,
description
=>
'Number of records per page.'
,
required
=>
'0'
,
},
'sort'
=> {
data_type
=>
'string'
,
description
=>
'The order in which to list the results by creation date.'
,
required
=>
'0'
,
},
};
__PACKAGE__->method_documentation->{
'list_events'
} = {
summary
=>
'List events'
,
params
=>
$params
,
returns
=>
'EventsResponse'
,
};
}
sub
list_events {
my
(
$self
,
%args
) =
@_
;
my
$_resource_path
=
'/events'
;
my
$_method
=
'GET'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type();
if
(
exists
$args
{
'filter[customer_id]'
}) {
$query_params
->{
'filter[customer_id]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[customer_id]'
});
}
if
(
exists
$args
{
'filter[event_type]'
}) {
$query_params
->{
'filter[event_type]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[event_type]'
});
}
if
(
exists
$args
{
'filter[service_id]'
}) {
$query_params
->{
'filter[service_id]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[service_id]'
});
}
if
(
exists
$args
{
'filter[user_id]'
}) {
$query_params
->{
'filter[user_id]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[user_id]'
});
}
if
(
exists
$args
{
'filter[token_id]'
}) {
$query_params
->{
'filter[token_id]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[token_id]'
});
}
if
(
exists
$args
{
'page[number]'
}) {
$query_params
->{
'page[number]'
} =
$self
->{api_client}->to_query_value(
$args
{
'page[number]'
});
}
if
(
exists
$args
{
'page[size]'
}) {
$query_params
->{
'page[size]'
} =
$self
->{api_client}->to_query_value(
$args
{
'page[size]'
});
}
if
(
exists
$args
{
'sort'
}) {
$query_params
->{
'sort'
} =
$self
->{api_client}->to_query_value(
$args
{
'sort'
});
}
my
$_body_data
;
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'EventsResponse'
,
$response
);
return
$_response_object
;
}
1;