Package io.didomi.sdk.purpose.ctv
Class TVPurposesViewModel
-
- All Implemented Interfaces:
@Singleton() public final class TVPurposesViewModel extends PurposesViewModel
View model associated to the purposes fragment/adapter. We should use this class to separate the business logic from the purposes view.
-
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TVPurposesViewModel(ApiEventsRepository apiEventsRepository, ConfigurationRepository configurationRepository, ConsentRepository consentRepository, ContextHelper contextHelper, EventsRepository eventsRepository, LanguagesHelper languagesHelper, UserChoicesInfoProvider userChoicesInfoProvider, UserStatusRepository userStatusRepository, UIProvider uiProvider, VendorRepository vendorRepository, LogoProvider logoProvider, NavigationManager navigationManager)
-
Method Summary
-
Methods inherited from class io.didomi.sdk.purpose.mobile.PurposesViewModel
areAllPurposesDefinedForCategory, areAllPurposesEnabled, createPurposeDisplayItemList, createPurposeDisplayList, createPurposeDisplayListForCategory, disableAll, disableAllConsentPurposes, disableAllConsentPurposesExceptEssentials, disableAllVendorLegIntUnselected, disableAllVendorUnselected, disableLegitimatePurpose, disablePurpose, enableAll, enableAllConsentPurposes, enableAllConsentPurposesExceptEssentials, enableAllLegitimatePurposes, enableAllVendorLegIntUnselected, enableAllVendorUnselected, enableLegitimatePurpose, enablePurpose, enabledPlusDisabledEqualRequired, getAccessibilityAgreeButtonActionDescription, getAccessibilityCloseDescription, getAccessibilityClosePurposesActionDescription, getAccessibilityHintForPurposes, getAccessibilitySaveButtonActionDescription, getAccessibilitySavePurposeDetailActionDescription, getAdditionalDataProcessingSectionDescription, getAgreeButtonLabel, getBulkActionState, getCanCloseWhenConsentIsMissing, getCategoryById, getCategoryName, getCategoryState, getCloseDetailsButtonAccessibility, getConsentToggleText, getDataProcessingDescription, getDataProcessingDescriptionLegal, getDisableButtonsUntilScroll, getDisabledLegitimatePurposes, getDisabledPurposes, getDisabledPurposesWithoutPersonalData, getDisabledVendorsConsent, getDisabledVendorsLegInt, getDisagreeButtonAccessibilityActionDescription, getDisagreeButtonLabel, getEnabledLegitimatePurposes, getEnabledPurposes, getEnabledPurposesWithoutPersonalData, getEnabledVendorsConsent, getEnabledVendorsLegInt, getExcludeBulkConsentButtons, getHasScrolledToTheBottom, getIllustrations, getLegitimateInterestToggleText, getLogoProvider, getPurposeById, getPurposeDescription, getPurposeDescriptionLegal, getPurposeName, getPurposeSwitchStatus, getPurposesMessageRawText, getRequiredVendorsLegInt, getSaveAndCloseButtonTitle, getSaveButtonDescriptionText, getSaveButtonLabel, getScrollIndicatorText, getSelectedCategory, getSelectedCategoryState, getSelectedPurpose, getSelectedPurposeConsentAccessibility, getSelectedPurposeConsentState, getSelectedPurposeLegIntAccessibility, getSelectedPurposeLegIntState, getShouldBeCancelable, getShouldConsentBeCollected, getShowWhenConsentIsMissing, getSortedAdditionalDataProcessingList, getTitle, getUiProvider, getUsePurposeTitleInPurposeCategory, getVendorRepository, getVendorsButtonLabel, getVendorsCountLabel, getVendorsCountLabelForConsent, getVendorsCountLabelForLegitimateInterest, getYouAllowText, initializeSelectedCategory, initializeSelectedPurposeStates, isAnyPurposeEnabled, isCategoryEssential, isLegitimatePurposeEnabled, isSaveButtonEnabled, isSelectedPurposeDefined, isSelectedPurposeEssential, isSpecialFeature, loadEnabledVendors, mixAllConsentPurposes, noPurposeIsDefined, onAgreeAllButtonClicked, onBulkPurposesSwitchWasToggled, onCategoryDetailScreenCloseClicked, onCategoryDetailScreenLoaded, onCategorySwitchToggled, onDisagreeAllButtonClicked, onDismissButtonClicked, onPurposeConsentChanged, onPurposeDetailConsentSwitchToggled, onPurposeDetailLegIntSwitchToggled, onPurposeDetailScreenCloseClicked, onPurposeDetailScreenLoaded, onPurposeLegIntChanged, onPurposeSwitchToggled, onPurposeWasShown, onSaveButtonClicked, onViewCancelled, preparePurposesForPresentation, resetSelectedPurpose, saveConsent, selectedPurposeHasConsentSection, selectedPurposeHasLegIntSection, setHasScrolledToTheBottom, setSelectedCategory, setSelectedPurpose, setSelectedPurposeConsentState, setSelectedPurposeLegIntState, shouldAllowDismiss, shouldDisplayDividerForCategoryHeader, shouldHandleConsentState, shouldHandleLegitimateInterestState, shouldHideDidomiLogo, shouldShowAdditionalDataProcessing, shouldShowDescriptionLegal, shouldSuggestScrolling, triggerEvent, unsetPurpose, updateConsentState, updatePurposeCategoryDisplayList, updatePurposeDisplayList, updatePurposesStatus -
Methods inherited from class androidx.lifecycle.ViewModel
addCloseable -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
TVPurposesViewModel
TVPurposesViewModel(ApiEventsRepository apiEventsRepository, ConfigurationRepository configurationRepository, ConsentRepository consentRepository, ContextHelper contextHelper, EventsRepository eventsRepository, LanguagesHelper languagesHelper, UserChoicesInfoProvider userChoicesInfoProvider, UserStatusRepository userStatusRepository, UIProvider uiProvider, VendorRepository vendorRepository, LogoProvider logoProvider, NavigationManager navigationManager)
-
-
Method Detail
-
getCurrentDataProcessingIndex
final Integer getCurrentDataProcessingIndex()
-
setCurrentDataProcessingIndex
final Unit setCurrentDataProcessingIndex(Integer currentDataProcessingIndex)
-
getFocusedPosition
final Integer getFocusedPosition()
-
setFocusedPosition
final Unit setFocusedPosition(Integer focusedPosition)
-
getDataUsageInfoLabel
final String getDataUsageInfoLabel()
-
getEssentialPurposeText
String getEssentialPurposeText()
-
getIllustrationsHeaderLabel
String getIllustrationsHeaderLabel()
-
getPurposeList
final List<TVPurposeItem> getPurposeList()
-
getPurposeBulk
final TVPurposeItem.Bulk getPurposeBulk()
-
getPurposeItemList
final List<TVPurposeItem.Purpose> getPurposeItemList()
-
buildPurposeItem
final TVPurposeItem.Purpose buildPurposeItem(InternalPurpose purpose)
Build Purpose Item
-
purposeConsentLabel
final String purposeConsentLabel(InternalPurpose purpose, Boolean checked)
Translated state for purpose.
-
purposeSubtitleLabelForConsent
final String purposeSubtitleLabelForConsent(InternalPurpose purpose, Boolean checked)
-
purposeSubtitleLabelForLegitimateInterest
final String purposeSubtitleLabelForLegitimateInterest(InternalPurpose purpose, Boolean checked)
-
onBulkSwitchToggled
final Unit onBulkSwitchToggled(Boolean isChecked)
Handle bulk switch toggle.
-
onPurposeSwitchToggled
final Unit onPurposeSwitchToggled(InternalPurpose purpose, Boolean isChecked)
Handle Purpose switch toggle.
-
onDetailPurposeSwitchToggled
final Unit onDetailPurposeSwitchToggled(Boolean isChecked)
Handle Purpose switch toggle in Detail screen.
-
onLegIntSwitchToggled
final Unit onLegIntSwitchToggled(Boolean isChecked)
Handle Legitimate interest switch toggle. The Leg Int checkbox behavior for TV is reversed comparing to Mobile
-
onPurposeTabSelected
final Unit onPurposeTabSelected()
-
initializePurposesForPresentation
List<InternalPurpose> initializePurposesForPresentation()
Refresh prepared purposes for presentation to the user. It is used when device language changes.
-
moveDataProcessingNext
final Boolean moveDataProcessingNext()
-
moveDataProcessingPrevious
final Boolean moveDataProcessingPrevious()
-
updateVendorsAndSaveConsent
Unit updateVendorsAndSaveConsent()
Save a customized vendors and purposes
-
-
-
-