001// Generated by delombok at Fri Oct 04 16:05:59 CEST 2024
002/*
003 * Copyright (c) 2010-2024 Mark Allen, Norbert Bartels.
004 *
005 * Permission is hereby granted, free of charge, to any person obtaining a copy
006 * of this software and associated documentation files (the "Software"), to deal
007 * in the Software without restriction, including without limitation the rights
008 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
009 * copies of the Software, and to permit persons to whom the Software is
010 * furnished to do so, subject to the following conditions:
011 *
012 * The above copyright notice and this permission notice shall be included in
013 * all copies or substantial portions of the Software.
014 *
015 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
016 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
017 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
018 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
019 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
020 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
021 * THE SOFTWARE.
022 */
023package com.restfb.types.ads;
024
025import java.util.*;
026import com.restfb.Facebook;
027import com.restfb.annotation.GraphAPI;
028import com.restfb.json.JsonObject;
029import com.restfb.types.features.HasCreatedTime;
030
031/**
032 * Represents the <a href="https://developers.facebook.com/docs/marketing-api/reference/ad-campaign">AdGroup Set
033 * type</a>.
034 * 
035 * Note: AdGroup Set vs AdGroup Campaign Prior to July 2014 ad sets were referred to as 'campaigns'. When using ad sets
036 * in API calls the parameter may be referred to as 'adcampaign'. A campaign contains one or more ad sets.
037 */
038public class AdSet extends NamedAdsObject implements HasCreatedTime {
039  private static final long serialVersionUID = 1L;
040  @Facebook("account_id")
041  private String accountId;
042  @Facebook("ad_keywords")
043  private AdKeywords adKeywords;
044  @Facebook("adcampaign_group")
045  private Campaign adcampaignGroup;
046  @Facebook("adlabels")
047  private List<AdLabel> adLabels = new ArrayList<>();
048  @Facebook("adset_schedule")
049  private List<DayPart> adsetSchedule = new ArrayList<>();
050  @Facebook("asset_feed_id")
051  private String assetFeedId;
052  @Facebook("attribution_spec")
053  private List<JsonObject> attributionSpec = new ArrayList<>();
054  @Facebook("best_creative")
055  private AdDynamicCreative bestCreative;
056  @Facebook("bid_adjustments")
057  private AdBidAdjustments bidAdjustments;
058  @Facebook("bid_amount")
059  private Long bidAmount;
060  @Facebook("bid_info")
061  private Map<String, Long> bidInfo = new HashMap<>();
062  @Facebook("bid_constraints")
063  private AdCampaignBidConstraint bidConstraints;
064  @Facebook("bid_info")
065  private Map<String, Long> mBidInfo = new HashMap<>();
066  @Facebook("bid_strategy")
067  private BidStrategyEnum bidStrategy;
068  @Facebook("billing_event")
069  private String billingEvent;
070  @Facebook("budget_remaining")
071  private String budgetRemaining;
072  @Facebook
073  private Campaign campaign;
074  @Facebook("campaign_id")
075  private String campaignId;
076  @Facebook("configured_status")
077  private String configuredStatus;
078  @Facebook("created_time")
079  private Date createdTime;
080  @Facebook("creative_sequence")
081  private List<String> creativeSequence = new ArrayList<>();
082  @Facebook("daily_budget")
083  private String dailyBudget;
084  @Facebook("daily_min_spend_target")
085  private String dailyMinSpendTarget;
086  @Facebook("daily_spend_cap")
087  private String dailySpendCap;
088  @Facebook("destination_type")
089  private String destinationType;
090  @Facebook("effective_status")
091  private String effectiveStatus;
092  @Facebook("end_time")
093  private Date endTime;
094  @Facebook("frequency_cap")
095  private Long frequencyCap;
096  @Facebook("frequency_cap_reset_period")
097  private Long frequencyCapResetPeriod;
098  @Facebook("frequency_control_specs")
099  private List<AdCampaignFrequencyControlSpecs> frequencyControlSpecs = new ArrayList<>();
100  @Facebook("is_autobid")
101  private Boolean isAutobid;
102  @Facebook("issues_info")
103  @GraphAPI(since = "3.2")
104  private List<AdCampaignIssuesInfo> issuesInfo = new ArrayList<>();
105  @Facebook("lifetime_budget")
106  private String lifetimeBudget;
107  @Facebook("lifetime_frequency_cap")
108  private Long lifetimeFrequencyCap;
109  @Facebook("lifetime_imps")
110  private Long lifetimeImps;
111  @Facebook("optimization_goal")
112  private String optimizationGoal;
113  @Facebook("pacing_type")
114  private List<String> pacingType = new ArrayList<>();
115  @Facebook("promoted_object")
116  private AdPromotedObject promotedObject;
117  @Facebook("recommendations")
118  private List<AdRecommendation> recommendations = new ArrayList<>();
119  @Facebook("rf_prediction_id")
120  private String rfPredictionId;
121  @Facebook("rtb_flag")
122  private Boolean rtbFlag;
123  @Facebook("start_time")
124  private Date startTime;
125  @Facebook("status")
126  private String mStatus;
127  @Facebook("targeting")
128  private Targeting targeting;
129  @Facebook("updated_time")
130  private Date updatedTime;
131  @Facebook("use_new_app_click")
132  private Boolean useNewAppClick;
133
134  public boolean addAdLabel(AdLabel adLabel) {
135    return adLabels.add(adLabel);
136  }
137
138  public boolean removeAdLabel(AdLabel adLabel) {
139    return adLabels.remove(adLabel);
140  }
141
142  public List<AdLabel> getAdlabels() {
143    return Collections.unmodifiableList(adLabels);
144  }
145
146  @java.lang.SuppressWarnings("all")
147  public String getAccountId() {
148    return this.accountId;
149  }
150
151  @java.lang.SuppressWarnings("all")
152  public void setAccountId(final String accountId) {
153    this.accountId = accountId;
154  }
155
156  @java.lang.SuppressWarnings("all")
157  public AdKeywords getAdKeywords() {
158    return this.adKeywords;
159  }
160
161  @java.lang.SuppressWarnings("all")
162  public void setAdKeywords(final AdKeywords adKeywords) {
163    this.adKeywords = adKeywords;
164  }
165
166  @java.lang.SuppressWarnings("all")
167  public Campaign getAdcampaignGroup() {
168    return this.adcampaignGroup;
169  }
170
171  @java.lang.SuppressWarnings("all")
172  public void setAdcampaignGroup(final Campaign adcampaignGroup) {
173    this.adcampaignGroup = adcampaignGroup;
174  }
175
176  @java.lang.SuppressWarnings("all")
177  public List<DayPart> getAdsetSchedule() {
178    return this.adsetSchedule;
179  }
180
181  @java.lang.SuppressWarnings("all")
182  public void setAdsetSchedule(final List<DayPart> adsetSchedule) {
183    this.adsetSchedule = adsetSchedule;
184  }
185
186  @java.lang.SuppressWarnings("all")
187  public String getAssetFeedId() {
188    return this.assetFeedId;
189  }
190
191  @java.lang.SuppressWarnings("all")
192  public void setAssetFeedId(final String assetFeedId) {
193    this.assetFeedId = assetFeedId;
194  }
195
196  @java.lang.SuppressWarnings("all")
197  public List<JsonObject> getAttributionSpec() {
198    return this.attributionSpec;
199  }
200
201  @java.lang.SuppressWarnings("all")
202  public void setAttributionSpec(final List<JsonObject> attributionSpec) {
203    this.attributionSpec = attributionSpec;
204  }
205
206  @java.lang.SuppressWarnings("all")
207  public AdDynamicCreative getBestCreative() {
208    return this.bestCreative;
209  }
210
211  @java.lang.SuppressWarnings("all")
212  public void setBestCreative(final AdDynamicCreative bestCreative) {
213    this.bestCreative = bestCreative;
214  }
215
216  @java.lang.SuppressWarnings("all")
217  public AdBidAdjustments getBidAdjustments() {
218    return this.bidAdjustments;
219  }
220
221  @java.lang.SuppressWarnings("all")
222  public void setBidAdjustments(final AdBidAdjustments bidAdjustments) {
223    this.bidAdjustments = bidAdjustments;
224  }
225
226  @java.lang.SuppressWarnings("all")
227  public Long getBidAmount() {
228    return this.bidAmount;
229  }
230
231  @java.lang.SuppressWarnings("all")
232  public void setBidAmount(final Long bidAmount) {
233    this.bidAmount = bidAmount;
234  }
235
236  @java.lang.SuppressWarnings("all")
237  public Map<String, Long> getBidInfo() {
238    return this.bidInfo;
239  }
240
241  @java.lang.SuppressWarnings("all")
242  public void setBidInfo(final Map<String, Long> bidInfo) {
243    this.bidInfo = bidInfo;
244  }
245
246  @java.lang.SuppressWarnings("all")
247  public AdCampaignBidConstraint getBidConstraints() {
248    return this.bidConstraints;
249  }
250
251  @java.lang.SuppressWarnings("all")
252  public void setBidConstraints(final AdCampaignBidConstraint bidConstraints) {
253    this.bidConstraints = bidConstraints;
254  }
255
256  @java.lang.SuppressWarnings("all")
257  public Map<String, Long> getMBidInfo() {
258    return this.mBidInfo;
259  }
260
261  @java.lang.SuppressWarnings("all")
262  public void setMBidInfo(final Map<String, Long> mBidInfo) {
263    this.mBidInfo = mBidInfo;
264  }
265
266  @java.lang.SuppressWarnings("all")
267  public BidStrategyEnum getBidStrategy() {
268    return this.bidStrategy;
269  }
270
271  @java.lang.SuppressWarnings("all")
272  public void setBidStrategy(final BidStrategyEnum bidStrategy) {
273    this.bidStrategy = bidStrategy;
274  }
275
276  @java.lang.SuppressWarnings("all")
277  public String getBillingEvent() {
278    return this.billingEvent;
279  }
280
281  @java.lang.SuppressWarnings("all")
282  public void setBillingEvent(final String billingEvent) {
283    this.billingEvent = billingEvent;
284  }
285
286  @java.lang.SuppressWarnings("all")
287  public String getBudgetRemaining() {
288    return this.budgetRemaining;
289  }
290
291  @java.lang.SuppressWarnings("all")
292  public void setBudgetRemaining(final String budgetRemaining) {
293    this.budgetRemaining = budgetRemaining;
294  }
295
296  @java.lang.SuppressWarnings("all")
297  public Campaign getCampaign() {
298    return this.campaign;
299  }
300
301  @java.lang.SuppressWarnings("all")
302  public void setCampaign(final Campaign campaign) {
303    this.campaign = campaign;
304  }
305
306  @java.lang.SuppressWarnings("all")
307  public String getCampaignId() {
308    return this.campaignId;
309  }
310
311  @java.lang.SuppressWarnings("all")
312  public void setCampaignId(final String campaignId) {
313    this.campaignId = campaignId;
314  }
315
316  @java.lang.SuppressWarnings("all")
317  public String getConfiguredStatus() {
318    return this.configuredStatus;
319  }
320
321  @java.lang.SuppressWarnings("all")
322  public void setConfiguredStatus(final String configuredStatus) {
323    this.configuredStatus = configuredStatus;
324  }
325
326  @Override
327  @java.lang.SuppressWarnings("all")
328  public Date getCreatedTime() {
329    return this.createdTime;
330  }
331
332  @java.lang.SuppressWarnings("all")
333  public void setCreatedTime(final Date createdTime) {
334    this.createdTime = createdTime;
335  }
336
337  @java.lang.SuppressWarnings("all")
338  public List<String> getCreativeSequence() {
339    return this.creativeSequence;
340  }
341
342  @java.lang.SuppressWarnings("all")
343  public void setCreativeSequence(final List<String> creativeSequence) {
344    this.creativeSequence = creativeSequence;
345  }
346
347  @java.lang.SuppressWarnings("all")
348  public String getDailyBudget() {
349    return this.dailyBudget;
350  }
351
352  @java.lang.SuppressWarnings("all")
353  public void setDailyBudget(final String dailyBudget) {
354    this.dailyBudget = dailyBudget;
355  }
356
357  @java.lang.SuppressWarnings("all")
358  public String getDailyMinSpendTarget() {
359    return this.dailyMinSpendTarget;
360  }
361
362  @java.lang.SuppressWarnings("all")
363  public void setDailyMinSpendTarget(final String dailyMinSpendTarget) {
364    this.dailyMinSpendTarget = dailyMinSpendTarget;
365  }
366
367  @java.lang.SuppressWarnings("all")
368  public String getDailySpendCap() {
369    return this.dailySpendCap;
370  }
371
372  @java.lang.SuppressWarnings("all")
373  public void setDailySpendCap(final String dailySpendCap) {
374    this.dailySpendCap = dailySpendCap;
375  }
376
377  @java.lang.SuppressWarnings("all")
378  public String getDestinationType() {
379    return this.destinationType;
380  }
381
382  @java.lang.SuppressWarnings("all")
383  public void setDestinationType(final String destinationType) {
384    this.destinationType = destinationType;
385  }
386
387  @java.lang.SuppressWarnings("all")
388  public String getEffectiveStatus() {
389    return this.effectiveStatus;
390  }
391
392  @java.lang.SuppressWarnings("all")
393  public void setEffectiveStatus(final String effectiveStatus) {
394    this.effectiveStatus = effectiveStatus;
395  }
396
397  @java.lang.SuppressWarnings("all")
398  public Date getEndTime() {
399    return this.endTime;
400  }
401
402  @java.lang.SuppressWarnings("all")
403  public void setEndTime(final Date endTime) {
404    this.endTime = endTime;
405  }
406
407  @java.lang.SuppressWarnings("all")
408  public Long getFrequencyCap() {
409    return this.frequencyCap;
410  }
411
412  @java.lang.SuppressWarnings("all")
413  public void setFrequencyCap(final Long frequencyCap) {
414    this.frequencyCap = frequencyCap;
415  }
416
417  @java.lang.SuppressWarnings("all")
418  public Long getFrequencyCapResetPeriod() {
419    return this.frequencyCapResetPeriod;
420  }
421
422  @java.lang.SuppressWarnings("all")
423  public void setFrequencyCapResetPeriod(final Long frequencyCapResetPeriod) {
424    this.frequencyCapResetPeriod = frequencyCapResetPeriod;
425  }
426
427  @java.lang.SuppressWarnings("all")
428  public List<AdCampaignFrequencyControlSpecs> getFrequencyControlSpecs() {
429    return this.frequencyControlSpecs;
430  }
431
432  @java.lang.SuppressWarnings("all")
433  public void setFrequencyControlSpecs(final List<AdCampaignFrequencyControlSpecs> frequencyControlSpecs) {
434    this.frequencyControlSpecs = frequencyControlSpecs;
435  }
436
437  @java.lang.SuppressWarnings("all")
438  public Boolean getIsAutobid() {
439    return this.isAutobid;
440  }
441
442  @java.lang.SuppressWarnings("all")
443  public void setIsAutobid(final Boolean isAutobid) {
444    this.isAutobid = isAutobid;
445  }
446
447  @GraphAPI(since = "3.2")
448  @java.lang.SuppressWarnings("all")
449  public List<AdCampaignIssuesInfo> getIssuesInfo() {
450    return this.issuesInfo;
451  }
452
453  @java.lang.SuppressWarnings("all")
454  public void setIssuesInfo(final List<AdCampaignIssuesInfo> issuesInfo) {
455    this.issuesInfo = issuesInfo;
456  }
457
458  @java.lang.SuppressWarnings("all")
459  public String getLifetimeBudget() {
460    return this.lifetimeBudget;
461  }
462
463  @java.lang.SuppressWarnings("all")
464  public void setLifetimeBudget(final String lifetimeBudget) {
465    this.lifetimeBudget = lifetimeBudget;
466  }
467
468  @java.lang.SuppressWarnings("all")
469  public Long getLifetimeFrequencyCap() {
470    return this.lifetimeFrequencyCap;
471  }
472
473  @java.lang.SuppressWarnings("all")
474  public void setLifetimeFrequencyCap(final Long lifetimeFrequencyCap) {
475    this.lifetimeFrequencyCap = lifetimeFrequencyCap;
476  }
477
478  @java.lang.SuppressWarnings("all")
479  public Long getLifetimeImps() {
480    return this.lifetimeImps;
481  }
482
483  @java.lang.SuppressWarnings("all")
484  public void setLifetimeImps(final Long lifetimeImps) {
485    this.lifetimeImps = lifetimeImps;
486  }
487
488  @java.lang.SuppressWarnings("all")
489  public String getOptimizationGoal() {
490    return this.optimizationGoal;
491  }
492
493  @java.lang.SuppressWarnings("all")
494  public void setOptimizationGoal(final String optimizationGoal) {
495    this.optimizationGoal = optimizationGoal;
496  }
497
498  @java.lang.SuppressWarnings("all")
499  public List<String> getPacingType() {
500    return this.pacingType;
501  }
502
503  @java.lang.SuppressWarnings("all")
504  public void setPacingType(final List<String> pacingType) {
505    this.pacingType = pacingType;
506  }
507
508  @java.lang.SuppressWarnings("all")
509  public AdPromotedObject getPromotedObject() {
510    return this.promotedObject;
511  }
512
513  @java.lang.SuppressWarnings("all")
514  public void setPromotedObject(final AdPromotedObject promotedObject) {
515    this.promotedObject = promotedObject;
516  }
517
518  @java.lang.SuppressWarnings("all")
519  public List<AdRecommendation> getRecommendations() {
520    return this.recommendations;
521  }
522
523  @java.lang.SuppressWarnings("all")
524  public void setRecommendations(final List<AdRecommendation> recommendations) {
525    this.recommendations = recommendations;
526  }
527
528  @java.lang.SuppressWarnings("all")
529  public String getRfPredictionId() {
530    return this.rfPredictionId;
531  }
532
533  @java.lang.SuppressWarnings("all")
534  public void setRfPredictionId(final String rfPredictionId) {
535    this.rfPredictionId = rfPredictionId;
536  }
537
538  @java.lang.SuppressWarnings("all")
539  public Boolean getRtbFlag() {
540    return this.rtbFlag;
541  }
542
543  @java.lang.SuppressWarnings("all")
544  public void setRtbFlag(final Boolean rtbFlag) {
545    this.rtbFlag = rtbFlag;
546  }
547
548  @java.lang.SuppressWarnings("all")
549  public Date getStartTime() {
550    return this.startTime;
551  }
552
553  @java.lang.SuppressWarnings("all")
554  public void setStartTime(final Date startTime) {
555    this.startTime = startTime;
556  }
557
558  @java.lang.SuppressWarnings("all")
559  public String getMStatus() {
560    return this.mStatus;
561  }
562
563  @java.lang.SuppressWarnings("all")
564  public void setMStatus(final String mStatus) {
565    this.mStatus = mStatus;
566  }
567
568  @java.lang.SuppressWarnings("all")
569  public Targeting getTargeting() {
570    return this.targeting;
571  }
572
573  @java.lang.SuppressWarnings("all")
574  public void setTargeting(final Targeting targeting) {
575    this.targeting = targeting;
576  }
577
578  @java.lang.SuppressWarnings("all")
579  public Date getUpdatedTime() {
580    return this.updatedTime;
581  }
582
583  @java.lang.SuppressWarnings("all")
584  public void setUpdatedTime(final Date updatedTime) {
585    this.updatedTime = updatedTime;
586  }
587
588  @java.lang.SuppressWarnings("all")
589  public Boolean getUseNewAppClick() {
590    return this.useNewAppClick;
591  }
592
593  @java.lang.SuppressWarnings("all")
594  public void setUseNewAppClick(final Boolean useNewAppClick) {
595    this.useNewAppClick = useNewAppClick;
596  }
597}