-
public final class DaroTrackingOwnership
-
-
Field Summary
Fields Modifier and Type Field Description private final DaroBidCandidatecandidateprivate final DaroTrackingDelegationdelegation
-
Constructor Summary
Constructors Constructor Description DaroTrackingOwnership(DaroBidCandidate candidate, DaroTrackingDelegation delegation)
-
Method Summary
Modifier and Type Method Description final DaroBidCandidategetCandidate()final DaroTrackingDelegationgetDelegation()final List<String>urlsForRole(DaroTrackerRole role)The candidate-field URLs carried by role (role-keyed, never raw-string): BILLING_BURL -> billingNoticeUrl (when present)
RESPONSE_IMPRESSION -> impressionTrackingUrls
RESPONSE_CLICK -> clickTrackingUrls
RENDERER_NATIVE -> [] (renderer-native trackers live INSIDE markup/VAST, never as a candidate field)
final DaroTrackingOwnerownerOf(DaroTrackerRole role)Which side owns role: RENDERER_NATIVE -> PREBID (always; it lives inside the rendered markup)
BILLING_BURL -> PREBID iff burl is explicitly suppressed, else DARO
RESPONSE_* -> PREBID iff the role is explicitly delegated, else DARO
final List<DaroTrackerUrl>daroOwnedTrackerUrls()The (url, role)pairs for every role ownerOf resolves to DARO (burl + response impression + response click, minus any delegated/suppressed role).final List<DaroTrackerUrl>prebidInjectedTrackerUrls()The (url, role)pairs for every NON-RENDERER_NATIVE role ownerOf resolves to PREBID (i.e.final DaroTrackerSuppressionarbitrateNonBillingDuplicate(DaroTrackerRole role, Boolean satisfiedByRendererNative)Non-billing duplicate arbitration for RESPONSE_IMPRESSION / RESPONSE_CLICK only: returns (role, SATISFIED_BY_RENDERER_NATIVE)when a renderer-native fire is proven to satisfy that same role, else null (Daro fires).final DaroTrackerSuppressionburlSuppression()The ONLY path that can suppress burl: returns (BILLING_BURL, reason)when DaroTrackingDelegation.burlSuppression is set (explicit billing delegation / server consumption), else null (Daro fires burl).-
-
Constructor Detail
-
DaroTrackingOwnership
DaroTrackingOwnership(DaroBidCandidate candidate, DaroTrackingDelegation delegation)
-
-
Method Detail
-
getCandidate
final DaroBidCandidate getCandidate()
-
getDelegation
final DaroTrackingDelegation getDelegation()
-
urlsForRole
final List<String> urlsForRole(DaroTrackerRole role)
The candidate-field URLs carried by role (role-keyed, never raw-string):
BILLING_BURL -> billingNoticeUrl (when present)
RESPONSE_IMPRESSION -> impressionTrackingUrls
RESPONSE_CLICK -> clickTrackingUrls
RENDERER_NATIVE -> [] (renderer-native trackers live INSIDE markup/VAST, never as a candidate field)
-
ownerOf
final DaroTrackingOwner ownerOf(DaroTrackerRole role)
Which side owns role:
RENDERER_NATIVE -> PREBID (always; it lives inside the rendered markup)
BILLING_BURL -> PREBID iff burl is explicitly suppressed, else DARO
RESPONSE_* -> PREBID iff the role is explicitly delegated, else DARO
-
daroOwnedTrackerUrls
final List<DaroTrackerUrl> daroOwnedTrackerUrls()
The
(url, role)pairs for every role ownerOf resolves to DARO (burl + response impression + response click, minus any delegated/suppressed role). Distinct role entries even when the same literal URL appears under multiple roles (role-keyed, never string-deduped).
-
prebidInjectedTrackerUrls
final List<DaroTrackerUrl> prebidInjectedTrackerUrls()
The
(url, role)pairs for every NON-RENDERER_NATIVE role ownerOf resolves to PREBID (i.e. explicitly delegated). Default = EMPTY: no Daro-owned role is injected into a synthetic Prebid bid unless explicitly delegated. RENDERER_NATIVE is excluded — it is already inside the markup Prebid renders, not a Daro field to inject.
-
arbitrateNonBillingDuplicate
final DaroTrackerSuppression arbitrateNonBillingDuplicate(DaroTrackerRole role, Boolean satisfiedByRendererNative)
Non-billing duplicate arbitration for RESPONSE_IMPRESSION / RESPONSE_CLICK only: returns
(role, SATISFIED_BY_RENDERER_NATIVE)when a renderer-native fire is proven to satisfy that same role, else null (Daro fires). For BILLING_BURL / RENDERER_NATIVE this default does NOT apply and always returns null — burl is never suppressed by the non-billing path.
-
burlSuppression
final DaroTrackerSuppression burlSuppression()
The ONLY path that can suppress burl: returns
(BILLING_BURL, reason)when DaroTrackingDelegation.burlSuppression is set (explicit billing delegation / server consumption), else null (Daro fires burl).
-
-
-