ContentRepository Command Reference
This reference was automatically generated from code on 2025-02-11
AddDimensionShineThrough
Add a Dimension Space Point Shine-Through; basically making all content available not just in the source(original) DSP, but also in the target-DimensionSpacePoint.
NOTE: the Source Dimension Space Point must be a generalization of the target Dimension Space Point.
This is needed if “de” exists, and you want to create a “de_CH” specialization.
NOTE: the target dimension space point must not contain any content.
create(workspaceName, source, target)
workspaceName
(WorkspaceName) The name of the workspace to perform the operation insource
(DimensionSpacePoint) source dimension space pointtarget
(DimensionSpacePoint) target dimension space point
ChangeBaseWorkspace
Changes the base workspace of a given workspace, identified by $workspaceName.
create(workspaceName, baseWorkspaceName)
workspaceName
(WorkspaceName) Name of the affected workspacebaseWorkspaceName
(WorkspaceName) Name of the new base workspace
ChangeNodeAggregateName (deprecated)
All variants in a NodeAggregate have the same (optional) NodeName, which this can be changed here.
Node Names are usually only used for tethered nodes; as then the Node Name is used for querying. Tethered Nodes cannot be renamed via the command API.
create(workspaceName, nodeAggregateId, newNodeName)
workspaceName
(WorkspaceName) The workspace in which the operation is to be performednodeAggregateId
(NodeAggregateId) The identifier of the node aggregate to renamenewNodeName
(NodeName) The new name of the node aggregate
DEPRECATED the concept regarding node-names for non-tethered nodes is outdated.
ChangeNodeAggregateType
The “Change node aggregate type” command
create(workspaceName, nodeAggregateId, newNodeTypeName, strategy)
workspaceName
(WorkspaceName) The workspace in which the operation is to be performednodeAggregateId
(NodeAggregateId) The unique identifier of the node aggregate to changenewNodeTypeName
(NodeTypeName) Name of the new node typestrategy
(NodeAggregateTypeChangeChildConstraintConflictResolutionStrategy) Strategy for conflicts on affected child nodes ({@see NodeAggregateTypeChangeChildConstraintConflictResolutionStrategy})
CreateNodeAggregateWithNode
Creates a new node aggregate with a new node.
The node will be appended as child node of the given parentNodeId which must cover the given originDimensionSpacePoint.
create(workspaceName, nodeAggregateId, nodeTypeName, originDimensionSpacePoint, parentNodeAggregateId, succeedingSiblingNodeAggregateId, initialPropertyValues, references)
workspaceName
(WorkspaceName) The workspace in which the create operation is to be performednodeAggregateId
(NodeAggregateId) The unique identifier of the node aggregate to createnodeTypeName
(NodeTypeName) Name of the node type of the new nodeoriginDimensionSpacePoint
(OriginDimensionSpacePoint) Origin of the new node in the dimension space. Will also be used to calculate a set of dimension points where the new node will cover from the configured specializations.parentNodeAggregateId
(NodeAggregateId) The id of the node aggregate underneath which the new node is addedsucceedingSiblingNodeAggregateId
(NodeAggregateId|null, optional) Node aggregate id of the node’s succeeding sibling (optional). If not given, the node will be added as the parent’s first childinitialPropertyValues
(PropertyValuesToWrite|null, optional) The node’s initial property values. Will be merged over the node type’s default property valuesreferences
(NodeReferencesToWrite|null, optional) Initial references this node will have (optional). If not given, no references are created
CreateNodeVariant
Create a variant of a node in a content stream
Copy a node to another dimension space point respecting further variation mechanisms
create(workspaceName, nodeAggregateId, sourceOrigin, targetOrigin)
workspaceName
(WorkspaceName) The workspace in which the create operation is to be performednodeAggregateId
(NodeAggregateId) The identifier of the affected node aggregatesourceOrigin
(OriginDimensionSpacePoint) Dimension Space Point from which the node is to be copied fromtargetOrigin
(OriginDimensionSpacePoint) Dimension Space Point to which the node is to be copied to
CreateRootNodeAggregateWithNode
Create root node aggregate with node command
A root node has no variants and no origin dimension space point but occupies the whole allowed dimension subspace. It also has no tethered child nodes.
create(workspaceName, nodeAggregateId, nodeTypeName)
workspaceName
(WorkspaceName) The workspace in which the root node should be created innodeAggregateId
(NodeAggregateId) The id of the root node aggregate to createnodeTypeName
(NodeTypeName) Name of type of the new node to create
CreateRootWorkspace
Command to create a root workspace.
Also creates a root content stream internally.
create(workspaceName, newContentStreamId)
workspaceName
(WorkspaceName) Name of the workspace to createnewContentStreamId
(ContentStreamId) The id of the content stream the new workspace is assigned to initially
CreateWorkspace
Create a new workspace, based on an existing baseWorkspace
create(workspaceName, baseWorkspaceName, newContentStreamId)
workspaceName
(WorkspaceName) Unique name of the workspace to createbaseWorkspaceName
(WorkspaceName) Name of the base workspacenewContentStreamId
(ContentStreamId) The id of the content stream the new workspace is assigned to initially
DeleteWorkspace
Delete a workspace
create(workspaceName)
workspaceName
(WorkspaceName) Name of the workspace to delete
DisableNodeAggregate
Disable the given node aggregate in the given content stream in a dimension space point using a given strategy
create(workspaceName, nodeAggregateId, coveredDimensionSpacePoint, nodeVariantSelectionStrategy)
workspaceName
(WorkspaceName) The workspace in which the disable operation is to be performednodeAggregateId
(NodeAggregateId) The identifier of the node aggregate to disablecoveredDimensionSpacePoint
(DimensionSpacePoint) The covered dimension space point of the node aggregate in which the user intends to disable itnodeVariantSelectionStrategy
(NodeVariantSelectionStrategy) The strategy the user chose to determine which specialization variants will also be disabled
DiscardIndividualNodesFromWorkspace
Discard a set of nodes in a workspace
create(workspaceName, nodesToDiscard)
workspaceName
(WorkspaceName) Name of the affected workspacenodesToDiscard
(NodeAggregateIds) Ids of the nodes to be discarded
DiscardWorkspace
Discard a workspace’s changes
create(workspaceName)
workspaceName
(WorkspaceName) Name of the affected workspace
EnableNodeAggregate
Enable the given node aggregate in the given content stream in a dimension space point using a given strategy
create(workspaceName, nodeAggregateId, coveredDimensionSpacePoint, nodeVariantSelectionStrategy)
workspaceName
(WorkspaceName) The content stream in which the enable operation is to be performednodeAggregateId
(NodeAggregateId) The identifier of the node aggregate to enablecoveredDimensionSpacePoint
(DimensionSpacePoint) The covered dimension space point of the node aggregate in which the user intends to enable itnodeVariantSelectionStrategy
(NodeVariantSelectionStrategy) The strategy the user chose to determine which specialization variants will also be enabled
MoveDimensionSpacePoint
Move a dimension space point to a new location; basically moving all content to the new dimension space point.
This is used to rename dimension space points, e.g. from “de” to “de_DE”.
NOTE: the target dimension space point must not contain any content.
create(workspaceName, source, target)
workspaceName
(WorkspaceName) The name of the workspace to perform the operation insource
(DimensionSpacePoint) source dimension space pointtarget
(DimensionSpacePoint) target dimension space point
MoveNodeAggregate
The “Move node aggregate” command
In contentStreamId and dimensionSpacePoint, move node aggregate nodeAggregateId into newParentNodeAggregateId (or keep the current parent) between newPrecedingSiblingNodeAggregateId and newSucceedingSiblingNodeAggregateId (or as last of all siblings) using relationDistributionStrategy
Why can you specify both newPrecedingSiblingNodeAggregateId and newSucceedingSiblingNodeAggregateId?
it can happen that in one subgraph, only one of these match.
See the PHPDoc of the attributes (a few lines down) for the exact behavior.
create(workspaceName, dimensionSpacePoint, nodeAggregateId, relationDistributionStrategy, newParentNodeAggregateId, newPrecedingSiblingNodeAggregateId, newSucceedingSiblingNodeAggregateId)
workspaceName
(WorkspaceName) The workspace in which the move operation is to be performeddimensionSpacePoint
(DimensionSpacePoint) This is one of the covered dimension space points of the node aggregate and not necessarily one of the occupied ones. This allows us to move virtual specializations only when using the scatter strategynodeAggregateId
(NodeAggregateId) The id of the node aggregate to moverelationDistributionStrategy
(RelationDistributionStrategy) The relation distribution strategy to be used ({@see RelationDistributionStrategy}).newParentNodeAggregateId
(NodeAggregateId|null, optional) The id of the new parent node aggregate. If given, it enforces that all nodes in the given aggregate are moved into nodes of the parent aggregate, even if the given siblings belong to other parents. In latter case, those siblings are ignorednewPrecedingSiblingNodeAggregateId
(NodeAggregateId|null, optional) The id of the new preceding sibling node aggregate. If given and no successor found, it is attempted to insert the moved nodes right after nodes of this aggregate. In dimension space points this aggregate does not cover, other siblings, in order of proximity, are tried to be used insteadnewSucceedingSiblingNodeAggregateId
(NodeAggregateId|null, optional) The id of the new succeeding sibling node aggregate. If given, it is attempted to insert the moved nodes right before nodes of this aggregate. In dimension space points this aggregate does not cover, the preceding sibling is tried to be used instead
PublishIndividualNodesFromWorkspace
Publish a set of nodes in a workspace
create(workspaceName, nodesToPublish)
workspaceName
(WorkspaceName) Name of the affected workspacenodesToPublish
(NodeAggregateIds) Ids of the nodes to publish or discard
PublishWorkspace
Publish a workspace
create(workspaceName)
workspaceName
(WorkspaceName) Name of the workspace to publish
RebaseWorkspace
Rebase a workspace
create(workspaceName)
RemoveNodeAggregate
The “Remove node aggregate” command
create(workspaceName, nodeAggregateId, coveredDimensionSpacePoint, nodeVariantSelectionStrategy)
workspaceName
(WorkspaceName) The workspace in which the remove operation is to be performednodeAggregateId
(NodeAggregateId) The identifier of the node aggregate to removecoveredDimensionSpacePoint
(DimensionSpacePoint) One of the dimension space points covered by the node aggregate in which the user intends to remove itnodeVariantSelectionStrategy
(NodeVariantSelectionStrategy) The strategy the user chose to determine which specialization variants will also be removed
SetNodeProperties
Add property values for a given node.
The properties will not be replaced but will be merged via the existing ones by the projection. A null value will cause to unset a nodes’ property.
The property values support arbitrary types (but must match the NodeType’s property types - this is validated in the command handler).
Internally, this object is converted into a {@see SetSerializedNodeProperties} command, which is then processed and stored.
create(workspaceName, nodeAggregateId, originDimensionSpacePoint, propertyValues)
workspaceName
(WorkspaceName) The workspace in which the set properties operation is to be performednodeAggregateId
(NodeAggregateId) The id of the node aggregate to set the properties fororiginDimensionSpacePoint
(OriginDimensionSpacePoint) The dimension space point the properties should be changed inpropertyValues
(PropertyValuesToWrite) Names and (unserialized) values of properties to set, or unset if the value is null
SetNodeReferences
Create a named reference from source to one or multiple destination nodes.
The previously set references will be replaced by this command and not merged.
Internally, this object is converted into a {@see SetSerializedNodeReferences} command, which is then processed and stored.
create(workspaceName, sourceNodeAggregateId, sourceOriginDimensionSpacePoint, references)
workspaceName
(WorkspaceName) The workspace in which the create operation is to be performedsourceNodeAggregateId
(NodeAggregateId) The identifier of the node aggregate to set referencessourceOriginDimensionSpacePoint
(OriginDimensionSpacePoint) The dimension space for which the references should be setreferences
(NodeReferencesToWrite) Unserialized reference(s) to set
UpdateRootNodeAggregateDimensions
Change visibility of the root node aggregate. A root node aggregate must be visible in all configured dimensions.
Needed when configured dimensions change.
create(workspaceName, nodeAggregateId)
workspaceName
(WorkspaceName) The workspace which the dimensions should be updated innodeAggregateId
(NodeAggregateId) The id of the node aggregate that should be updated