Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.taboola.backstage.services.CampaignAudienceTargetingServiceImpl Maven / Gradle / Ivy
package com.taboola.backstage.services;
import com.taboola.backstage.exceptions.BackstageAPIConnectivityException;
import com.taboola.backstage.exceptions.BackstageAPIRequestException;
import com.taboola.backstage.exceptions.BackstageAPIUnauthorizedException;
import com.taboola.backstage.internal.BackstageAudienceTargetingEndpoint;
import com.taboola.backstage.internal.FieldsValidator;
import com.taboola.backstage.model.auth.BackstageAuthentication;
import com.taboola.backstage.model.media.campaigns.CampaignLookalikeAudienceTargeting;
import com.taboola.backstage.model.media.campaigns.CampaignMultiTargetingCollection;
/**
* Created by vladi.m
* Date 29/04/2020
* Time 11:01
* Copyright Taboola
*/
public class CampaignAudienceTargetingServiceImpl implements CampaignAudienceTargetingService {
private final Boolean performClientValidations;
private final BackstageAudienceTargetingEndpoint endpoint;
public CampaignAudienceTargetingServiceImpl(Boolean performClientValidations, BackstageAudienceTargetingEndpoint endpoint) {
this.endpoint = endpoint;
this.performClientValidations = performClientValidations;
}
@Override
public CampaignMultiTargetingCollection readAudienceSegments(BackstageAuthentication auth, String accountId, String campaignId) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
return endpoint.readAudienceSegments(auth.getToken().getAccessTokenForHeader(), accountId, campaignId);
}
@Override
public CampaignMultiTargetingCollection updateAudienceSegments(BackstageAuthentication auth, String accountId, String campaignId, CampaignMultiTargetingCollection targeting) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
if(performClientValidations) {
FieldsValidator.validateCreateOperation(targeting);
}
return endpoint.updateAudienceSegments(auth.getToken().getAccessTokenForHeader(), accountId, campaignId, targeting);
}
@Override
public CampaignMultiTargetingCollection readCustomAudience(BackstageAuthentication auth, String accountId, String campaignId) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
return endpoint.readCustomAudience(auth.getToken().getAccessTokenForHeader(), accountId, campaignId);
}
@Override
public CampaignMultiTargetingCollection updateCustomAudience(BackstageAuthentication auth, String accountId, String campaignId, CampaignMultiTargetingCollection targeting) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
if(performClientValidations) {
FieldsValidator.validateCreateOperation(targeting);
}
return endpoint.updateCustomAudience(auth.getToken().getAccessTokenForHeader(), accountId, campaignId, targeting);
}
@Override
public CampaignMultiTargetingCollection readLookalikeAudience(BackstageAuthentication auth, String accountId, String campaignId) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
return endpoint.readLookalikeAudience(auth.getToken().getAccessTokenForHeader(), accountId, campaignId);
}
@Override
public CampaignMultiTargetingCollection updateLookalikeAudience(BackstageAuthentication auth, String accountId, String campaignId, CampaignMultiTargetingCollection targeting) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
if(performClientValidations) {
FieldsValidator.validateCreateOperation(targeting);
}
return endpoint.updateLookalikeAudience(auth.getToken().getAccessTokenForHeader(), accountId, campaignId, targeting);
}
@Override
public CampaignMultiTargetingCollection readMarkingLabels(BackstageAuthentication auth, String accountId, String campaignId) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
return endpoint.readMarkingLabels(auth.getToken().getAccessTokenForHeader(), accountId, campaignId);
}
@Override
public CampaignMultiTargetingCollection updateMarkingLabels(BackstageAuthentication auth, String accountId, String campaignId, CampaignMultiTargetingCollection targeting) throws BackstageAPIUnauthorizedException, BackstageAPIConnectivityException, BackstageAPIRequestException {
if(performClientValidations) {
FieldsValidator.validateCreateOperation(targeting);
}
return endpoint.updateMarkingLabels(auth.getToken().getAccessTokenForHeader(), accountId, campaignId, targeting);
}
}