@DomainNode(topLevelQueryName = "interfaceSpecificationTemplates", searchQueryName = "searchInterfaceSpecificationTemplates")
class InterfaceSpecificationTemplate(name: String, description: String, templateFieldSpecifications: MutableMap<String, String>, isDeprecated: Boolean, isAbstract: Boolean, shapeRadius: Double?, shapeType: ShapeType) : RelationPartnerTemplate<InterfaceSpecification, InterfaceSpecificationTemplate>

Template for InterfaceSpecifications. Defines templated fields with specific types (defined using JSON schema). Defines on which Components InterfaceSpecifications with this Template can be (in)visible on. Defines SubTemplates for Interfaces and InterfaceSpecificationVersions.

Constructors

Link copied to clipboard
constructor(name: String, description: String, templateFieldSpecifications: MutableMap<String, String>, isDeprecated: Boolean, isAbstract: Boolean, shapeRadius: Double?, shapeType: ShapeType)

Properties

Link copied to clipboard
@NodeRelationship(type = "INVISIBLE_INTERFACE_SPECIFICATION", direction = Direction.INCOMING)
@FilterProperty
val canBeInvisibleOnComponents: LazyLoadingDelegate<ComponentTemplate, NodeSetPropertyDelegate.NodeSetProperty>

Templates of Components InterfaceSpecifications with this template can be invisible on.

Link copied to clipboard
@NodeRelationship(type = "VISIBLE_INTERFACE_SPECIFICATION", direction = Direction.INCOMING)
@FilterProperty
val canBeVisibleOnComponents: LazyLoadingDelegate<ComponentTemplate, NodeSetPropertyDelegate.NodeSetProperty>

Templates of Components InterfaceSpecifications with this template can be visible on.

Link copied to clipboard
@NodeRelationship(type = "DERIVABLE_INTERFACE_SPECIFICATION", direction = Direction.INCOMING)
@FilterProperty
val derivableBy: LazyLoadingDelegate<InterfaceSpecificationDerivationCondition, NodeSetPropertyDelegate.NodeSetProperty>

InterfaceSpecificationDerivationConditions which allow to derive InterfaceSpecification with this template.

Link copied to clipboard
@FilterProperty
@SearchProperty
open override var description: String

The description of this entity.

Link copied to clipboard
@NodeRelationship(type = "EXTENDS", direction = Direction.INCOMING)
@FilterProperty
val extendedBy: LazyLoadingDelegate<InterfaceSpecificationTemplate, NodeSetPropertyDelegate.NodeSetProperty>

Templates that extend this template.

Link copied to clipboard
@NodeRelationship(type = "EXTENDS", direction = Direction.OUTGOING)
@FilterProperty
val extends: LazyLoadingDelegate<InterfaceSpecificationTemplate, NodeSetPropertyDelegate.NodeSetProperty>

Template this template extends.

Link copied to clipboard
internal var fieldCache: MutableMap<String, Any?>
Link copied to clipboard
@NodeRelationship(type = "FILL_STYLE", direction = Direction.OUTGOING)
val fill: LazyLoadingDelegate<FillStyle?, NodePropertyDelegate.NodeProperty>

Style of the fill

Link copied to clipboard
val graphQLId: ID

The unique id of this node

Link copied to clipboard
@Id
@GeneratedValue(generatorRef = "nodeIdGenerator")
internal var id: String?
Link copied to clipboard
@NodeRelationship(type = "PART_OF", direction = Direction.INCOMING)
val interfacePartTemplate: LazyLoadingDelegate<InterfacePartTemplate, NodePropertyDelegate.NodeProperty>

SubTemplate applied to all InterfaceParts of InterfaceSpecifications with this Template.

Link copied to clipboard
@NodeRelationship(type = "PART_OF", direction = Direction.INCOMING)
val interfaceSpecificationVersionTemplate: LazyLoadingDelegate<InterfaceSpecificationVersionTemplate, NodePropertyDelegate.NodeProperty>

SubTemplate applied to all InterfaceSpecificationVersions of InterfaceSpecifications with this Template.

Link copied to clipboard
@FilterProperty
var isAbstract: Boolean

If true, this template is abstract and cannot be used for new entities.

Link copied to clipboard
@FilterProperty
var isDeprecated: Boolean

If true, this template is deprecated and cannot be used for new entities any more.

Link copied to clipboard
Link copied to clipboard
internal var isSaved: Boolean
Link copied to clipboard
@ConvertWith(converter = LazyLoadingContextConverter::class)
internal var lazyLoadingContext: LazyLoadingContext?
Link copied to clipboard
@FilterProperty
@OrderProperty
@SearchProperty
open override var name: String

The name of this entity.

Link copied to clipboard
@Version
private var nodeVersion: Long

Version used for optimistic locking

Link copied to clipboard
internal var orderFields: MutableMap<String, Any?>?
Link copied to clipboard
@NodeRelationship(type = "TO", direction = Direction.INCOMING)
@FilterProperty
val possibleEndOfRelations: LazyLoadingDelegate<RelationCondition, NodeSetPropertyDelegate.NodeSetProperty>

RelationConditions which allow this template for the end of the relation.

Link copied to clipboard
@NodeRelationship(type = "FROM", direction = Direction.INCOMING)
@FilterProperty
val possibleStartOfRelations: LazyLoadingDelegate<RelationCondition, NodeSetPropertyDelegate.NodeSetProperty>

RelationConditions which allow this template for the start of the relation.

Link copied to clipboard
internal val propertyLookup: MutableMap<String, PropertyDelegate<*>>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@NodeRelationship(type = "STROKE_STYLE", direction = Direction.OUTGOING)
val stroke: LazyLoadingDelegate<StrokeStyle?, NodePropertyDelegate.NodeProperty>

Style of the stroke

Link copied to clipboard
@NodeRelationship(type = "USED_IN", direction = Direction.OUTGOING)
val usedIn: LazyLoadingDelegate<T, NodeSetPropertyDelegate.NodeSetProperty>

Entities which use this template.

Functions

Link copied to clipboard
operator override fun equals(other: Any?): Boolean
Link copied to clipboard
internal suspend fun getFromGraphQL(@Autowired nodeQueryParser: NodeQueryParser, dataFetchingEnvironment: DataFetchingEnvironment): Any?
Link copied to clipboard
internal fun <T : PropertyDelegate<*>> getProperty(property: KProperty1<*, *>): T
Link copied to clipboard
override fun hashCode(): Int
Link copied to clipboard
internal suspend fun <T : Node?> loadNodesOfRelationship(property: KProperty1<*, *>, loader: LazyLoadingSubqueryGenerator<T>.() -> Unit?)
Link copied to clipboard
protected fun <T : Node?> NodeProperty(): PropertyDelegateProvider<Node, NodePropertyDelegate<T>>
Link copied to clipboard
protected fun <T : Node> NodeSetProperty(): PropertyDelegateProvider<Node, NodeSetPropertyDelegate<T>>
Link copied to clipboard
internal fun registerQueryResult(entry: NodeQueryEntry<*>, queryResult: Any?)
Link copied to clipboard
fun templateFieldSpecifications(name: String, @Autowired objectMapper: ObjectMapper): JsonNode

Schema of a template field by name of the template field. Error if the field does not exist.

fun templateFieldSpecifications(namePrefix: String? = null, @Autowired objectMapper: ObjectMapper): List<JSONField>

All template field specifications, if a `namePrefix` is provided, only those matching it

Link copied to clipboard
open override fun toString(): String