NAME
Microsoft::AdCenter::Retry - Defines when and how to retry a failed API call.
SYNOPSIS
my $retry = Microsoft::AdCenter::Retry->new(
ErrorType => Microsoft::AdCenter::Retry->CONNECTION_ERROR | Microsoft::AdCenter::Retry->INTERNAL_SERVER_ERROR,
RetryTimes => 3,
WaitTime => 30,
ScalingWaitTime => 2,
Callback => sub { my $e = shift; warn "Successfully retried API call for " . __PACKAGE__ . " after error $e was caught"; },
);
my $service_client = Microsoft::AdCenter::CampaignManagementService->new
->ApplicationToken("application token")
->CustomerAccountId("customer account id")
->CustomerId("customer id")
->DeveloperToken("developer token")
->Password("password")
->UserName("user name")
->RetrySettings( $retry );
METHODS
ErrorType
Returns / sets the error type you want to retry upon. Can either be CONNECTION_ERROR or INTERNAL_SERVER_ERROR or a combination of the two
RetryTimes
Returns / sets the number of times you want to retry the API call
WaitTime
Returns / sets the time to wait between retries, in seconds
ScalingWaitTime
Returns / sets an optional interval that, will increase the wait time by the interval at each retry. From the above example: 30 seconds on the first try, 60 on the second, 90 on the third, and so on.
Callback
Returns / sets an optional callback sub that will be called upon every retry