Package org.neo4j.cypherdsl.core
Interface PropertyContainer
-
- All Superinterfaces:
Named
- All Known Subinterfaces:
Node
,Relationship
- All Known Implementing Classes:
NodeBase
,RelationshipBase
@API(status=EXPERIMENTAL, since="1.1") public interface PropertyContainer extends Named
A container having properties. A property container must beNamed
with a non empty name to be able to refer to properties.- Since:
- 1.1
- Author:
- Andreas Berger, Michael J. Simons
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Operation
mutate(MapExpression properties)
Creates anOperation
mutating the properties of this container to a new value.Operation
mutate(Parameter parameter)
Creates anOperation
mutating the properties of this container to a new value.MapProjection
project(java.lang.Object... entries)
Creates a map projection based on this container.MapProjection
project(java.util.List<java.lang.Object> entries)
Unwraps the list of entries into an array before creating a projection out of it.Property
property(java.lang.String name)
Creates a newProperty
associated with this property container.Property
property(java.lang.String... names)
Property
property(Expression lookup)
Creates a newProperty
associated with this property container.-
Methods inherited from interface org.neo4j.cypherdsl.core.Named
getRequiredSymbolicName, getSymbolicName
-
-
-
-
Method Detail
-
property
Property property(java.lang.String name)
Creates a newProperty
associated with this property container. This property can be used as a lookup in other expressions. It does not add a value to the property.Note: The property container does not track property creation and there is no possibility to enumerate all properties that have been created for this property container.
- Parameters:
name
- property name, must not be null or empty.- Returns:
- a new
Property
associated with this named container
-
property
Property property(java.lang.String... names)
-
property
Property property(Expression lookup)
Creates a newProperty
associated with this property container. This property can be used as a lookup in other expressions. It does not add a value to the property.The new
Property
object is a dynamic lookup, based on theexpression
passed to this method. The expression can be example another property, a function result or a Cypher parameter. A property defined in such a way will render asp[expression]
.Note: The property container does not track property creation and there is no possibility to enumerate all properties that have been created for this property container.
- Parameters:
lookup
- the expression that is evaluated to lookup this property.- Returns:
- a new
Property
associated with this named container - Since:
- 2021.0.0
-
mutate
Operation mutate(Parameter parameter)
Creates anOperation
mutating the properties of this container to a new value. The container does not track the operations created with this method.- Parameters:
parameter
- the new properties- Returns:
- A new operation.
- Since:
- 2020.1.5
-
mutate
Operation mutate(MapExpression properties)
Creates anOperation
mutating the properties of this container to a new value. The container does not track the operations created with this method.- Parameters:
properties
- the new properties- Returns:
- A new operation.
- Since:
- 2020.1.5
-
project
MapProjection project(java.util.List<java.lang.Object> entries)
Unwraps the list of entries into an array before creating a projection out of it.- Parameters:
entries
- A list of entries for the projection- Returns:
- A map projection.
- See Also:
SymbolicName.project(List)
-
project
MapProjection project(java.lang.Object... entries)
Creates a map projection based on this container. The container needs a symbolic name for this to work.- Parameters:
entries
- A list of entries for the projection- Returns:
- A map projection.
- See Also:
SymbolicName.project(Object...)
-
-