PersistTranslationsMiddleware
        
        extends AbstractPoolMiddleware
    
    
            
            in package
            
        
    
    
    
Pool middleware for both service and blocker templates to persist translations into a dedicated cache / database.
Table of Contents
Constants
- EXPAND_SKIP_KEYS = ['language', 'identifier', 'successorOfIdentifierInfo', 'enabledWhenOneOf', 'recommendedWhenOneOf', 'extendsIdentifier', 'status', 'createdAt', 'tier', 'logoUrl', 'consumerData', 'serviceTemplateIdentifiers', 'ruleGroups', 'rules', 'ruleNotice', 'visualType', 'visualContentType', 'shouldUncheckContentBlockerCheckboxWhenOneOf', 'codeOptIn', 'codeOptOut', 'codeOnPageLoad', 'tagManagerOptInEventName', 'tagManagerOptOutEventName', 'dynamicFields', 'dataProcessingInCountries', 'dataProcessingInCountriesSpecialTreatments', 'sccConclusionInstructionsNotice', 'legalBasis', 'legalBasisNotice', 'group', 'technicalHandlingNotice', 'createContentBlockerNotice', 'groupNotice', 'providerNotice']
- Never create translations for this string-values.
- PERSIST_CHUNK_SIZE = 20
Properties
- $consumer : mixed
- $suspended : mixed
Methods
- __construct() : mixed
- C'tor.
- afterPersistTemplatesWithinPool() : void
- After persisting all template instances within a pool.
- beforePersistTemplateWithinPool() : void
- Before persisting the template instance when all consumers within a pool got downloaded.
- extractTranslations() : array<string|int, Translation>
- Extract translation instances from a set of templates.
- fetchEnglishTemplates() : mixed
- Fetch english templates as they should not be persisted to database.
- getConsumer() : mixed
- Getter.
- getVariableResolver() : mixed
- Getter.
- isSuspended() : mixed
- Check if the middleware is suspended.
- persistTranslations() : mixed
- Persist translations to your database or object cache or whatever.
- suspend() : mixed
- Allows to suspend or resume the middleware to take effect. This is efficient if a middleware could be called recursively.
- applyAcknowledgementMode() : mixed
- Disallow the creation of a service in the scanner. Additionally, you can add a message to the consumer data which is shown to the user. The user can only acknowledge to the message and not create the service.
Constants
EXPAND_SKIP_KEYS
Never create translations for this string-values.
    public
        mixed
    EXPAND_SKIP_KEYS
    = ['language', 'identifier', 'successorOfIdentifierInfo', 'enabledWhenOneOf', 'recommendedWhenOneOf', 'extendsIdentifier', 'status', 'createdAt', 'tier', 'logoUrl', 'consumerData', 'serviceTemplateIdentifiers', 'ruleGroups', 'rules', 'ruleNotice', 'visualType', 'visualContentType', 'shouldUncheckContentBlockerCheckboxWhenOneOf', 'codeOptIn', 'codeOptOut', 'codeOnPageLoad', 'tagManagerOptInEventName', 'tagManagerOptOutEventName', 'dynamicFields', 'dataProcessingInCountries', 'dataProcessingInCountriesSpecialTreatments', 'sccConclusionInstructionsNotice', 'legalBasis', 'legalBasisNotice', 'group', 'technicalHandlingNotice', 'createContentBlockerNotice', 'groupNotice', 'providerNotice']
    
    
    
PERSIST_CHUNK_SIZE
    public
        mixed
    PERSIST_CHUNK_SIZE
    = 20
    
    
    
Properties
$consumer
    private
        mixed
    $consumer
    
    
    
    
$suspended
    private
        mixed
    $suspended
     = false
    
    
    
Methods
__construct()
C'tor.
    public
                    __construct(ServiceCloudConsumer $consumer) : mixed
    Parameters
- $consumer : ServiceCloudConsumer
afterPersistTemplatesWithinPool()
After persisting all template instances within a pool.
    public
                    afterPersistTemplatesWithinPool(mixed $consumers, mixed &$typeClassToAllTemplates) : void
    Parameters
- $consumers : mixed
- $typeClassToAllTemplates : mixed
- 
                    Key = type class, value = array of templates 
beforePersistTemplateWithinPool()
Before persisting the template instance when all consumers within a pool got downloaded.
    public
                    beforePersistTemplateWithinPool(mixed $template, mixed &$typeClassToAllTemplates) : void
    Example: Calculate contentBlockerTemplates for ServiceTemplate.
Parameters
- $template : mixed
- $typeClassToAllTemplates : mixed
- 
                    Key = type class, value = array of templates 
extractTranslations()
Extract translation instances from a set of templates.
    public
                    extractTranslations(array<string|int, AbstractTemplate> $templates, ServiceCloudConsumer $consumer) : array<string|int, Translation>
    Parameters
- $templates : array<string|int, AbstractTemplate>
- $consumer : ServiceCloudConsumer
Return values
array<string|int, Translation>fetchEnglishTemplates()
Fetch english templates as they should not be persisted to database.
    public
    abstract                fetchEnglishTemplates(array<string|int, string> $identifiers, ServiceCloudConsumer $consumer) : mixed
    Parameters
- $identifiers : array<string|int, string>
- 
                    List of identifiers for which we want to the english templates 
- $consumer : ServiceCloudConsumer
getConsumer()
Getter.
    public
                    getConsumer() : mixed
    Tags
getVariableResolver()
Getter.
    public
                    getVariableResolver() : mixed
    Tags
isSuspended()
Check if the middleware is suspended.
    public
                    isSuspended() : mixed
    persistTranslations()
Persist translations to your database or object cache or whatever.
    public
    abstract                persistTranslations(array<string|int, Translation> $translations, ServiceCloudConsumer $consumer) : mixed
    Parameters
- $translations : array<string|int, Translation>
- $consumer : ServiceCloudConsumer
suspend()
Allows to suspend or resume the middleware to take effect. This is efficient if a middleware could be called recursively.
    public
                    suspend(bool $state) : mixed
    Parameters
- $state : bool
applyAcknowledgementMode()
Disallow the creation of a service in the scanner. Additionally, you can add a message to the consumer data which is shown to the user. The user can only acknowledge to the message and not create the service.
    protected
                    applyAcknowledgementMode(AbstractTemplate $template[, array<string|int, string> $paragraphs = [] ][, array<string|int, string> $accordion = null ][, string $buttonLabel = null ][, string $buttonAction = null ]) : mixed
    Parameters
- $template : AbstractTemplate
- $paragraphs : array<string|int, string> = []
- $accordion : array<string|int, string> = null
- 
                    A list of accordions with key as headline and value as message. 
- $buttonLabel : string = null
- 
                    The label of the button. 
- $buttonAction : string = null
- 
                    The action of the button, can be "ignore", "create" or "close".