external_entities-8.x-2.x-dev/config/schema/external_entities.schema.yml
config/schema/external_entities.schema.yml
external_entities.external_entity_type.*:
type: config_entity
label: 'External entity type'
mapping:
id:
type: string
label: 'Identifier'
label:
type: label
label: 'Name'
label_plural:
type: plural_label
label: 'Name (plural)'
base_path:
type: string
label: 'Base path'
nullable: true
description:
type: text
label: 'Description'
content_class:
type: text
label: 'Content class'
read_only:
type: boolean
label: 'Read only'
debug_level:
type: integer
label: 'Debug level'
constraints:
Range:
min: 0
field_mappers:
type: sequence
label: 'Field mapping'
orderby: key
sequence:
type: external_entities.external_entities_field_mapper_settings
field_mapping_notes:
type: text
label: 'Field mapping notes'
nullable: true
data_aggregator:
type: external_entities.external_entities_data_aggregator_settings
label: 'Data aggregator plugin settings'
data_aggregator_notes:
type: text
label: 'Data aggregator notes'
nullable: true
language_settings:
type: mapping
nullable: true
mapping:
overrides:
type: sequence
label: 'Language overrides'
orderby: key
sequence:
type: external_entities.external_entities_language_settings
persistent_cache_max_age:
type: integer
label: 'Persistent cache maximum age'
annotation_entity_type_id:
type: string
label: 'Annotation entity type'
annotation_bundle_id:
type: string
label: 'Annotation bundle'
annotation_field_name:
type: string
label: 'Entity reference field'
annotation_inherited_fields:
type: sequence
label: 'Annotation fields to inherit'
sequence:
type: string
locks:
type: mapping
label: 'Locks configuration'
description: 'The lock configuration can be used to restrict the management of the external entity type.'
nullable: true
mapping:
lock_edit:
type: boolean
label: 'Lock editing'
description: 'Lock external entity type editing.'
lock_delete:
type: boolean
label: 'Lock deletion'
description: 'Disable external entity type deletion.'
lock_path:
type: boolean
label: 'Lock base path'
description: 'Lock external entity base path.'
lock_fields:
type: boolean
label: 'Lock field editing'
description: 'Lock external entity type field editing (adding/removal of fields).'
lock_display:
type: boolean
label: 'Lock field display'
description: 'Lock external entity field display configuration.'
lock_annotations:
type: boolean
label: 'Lock annotations'
description: 'Lock external entity annotation settings.'
lock_translations:
type: boolean
label: 'Lock translation settings'
description: 'Lock access to translation settings. If not locked, translation settings can be overridden by language overrides but default restrictions for field mappers, data aggregator and storage clients will be applied.'
lock_field_mappers:
type: sequence
label: 'Lock field mapper settings'
description: 'Field mapper lock configs are keyed by field machine names. Global default lock behavior can be set using the key "*".'
orderby: key
sequence:
type: mapping
label: 'Field mapper lock config'
mapping:
allow_plugins:
type: sequence
label: 'Allowed field mappers'
description: 'List of field mapper plugin IDs that can be used for this field keyed by their IDs. An empty array can be used to allow all field mappers.'
orderby: key
sequence:
type: string
lock_config:
type: boolean
label: 'Lock field mapper config'
description: 'If set, the field mapper config cannot be changed.'
hide_config:
type: boolean
label: 'Hide field mapper config'
description: 'If set, the field mapper config will not be displayed in the UI.'
lock_data_aggregator:
type: mapping
label: 'Lock data aggregator'
description: 'Locks data aggregator settings.'
mapping:
allow_plugins:
type: sequence
label: 'Allowed data aggregator plugins'
description: 'List of data aggregator plugin IDs that can be used for this external entity type keyed by their IDs. An empty array can be used to allow all data aggregators.'
orderby: key
sequence:
type: string
lock_config:
type: boolean
label: 'Lock data aggregator config'
description: 'Prevents data aggregator config changes.'
hide_config:
type: boolean
label: 'Hide data aggregator config'
lock_storage_clients:
type: sequence
label: 'Lock storage clients'
description: 'Storage client lock configs keyed by data aggregator storage client keys (can be numeric keys). Global default lock behavior can be set using the key "*".'
orderby: key
sequence:
type: mapping
label: 'Storage client locks'
description: 'Restrictions to storage client plugins used by the data aggregator (for a given storage client key).'
mapping:
allow_plugins:
type: sequence
label: 'Allowed storage client plugins'
description: 'List of storage client plugin IDs that can be used for this storage client key keyed by their IDs. An empty array can be used to allow all storage clients.'
orderby: key
sequence:
type: string
lock_config:
type: boolean
label: 'Lock storage client config'
description: 'Prevents storage client config changes.'
hide_config:
type: boolean
label: 'Hide storage client config'
description: 'If set, the storage client config will not be displayed in the UI.'
external_entities.external_entities_field_mapper_settings:
type: mapping
mapping:
id:
type: string
label: 'Field mapper plugin ID'
config:
type: plugin.plugin_configuration.external_entities_field_mapper.[%parent.id]
label: 'Field mapper plugin config'
plugin.plugin_configuration.external_entities_field_mapper.*:
type: mapping
external_entities.external_entities_data_aggregator_settings:
type: mapping
mapping:
id:
type: string
label: 'Data aggregator plugin ID'
config:
type: plugin.plugin_configuration.external_entities_data_aggregator.[%parent.id]
label: 'Data aggregator storage client plugin configs'
plugin.plugin_configuration.external_entities_data_aggregator.*:
type: mapping
external_entities.external_entities_language_settings:
type: mapping
mapping:
field_mappers:
type: sequence
label: 'Override field mapping'
orderby: key
nullable: true
sequence:
type: external_entities.external_entities_field_mapper_settings
data_aggregator:
type: external_entities.external_entities_data_aggregator_settings
label: 'Override data aggregator'
nullable: true
