Documentation ¶
Overview ¶
Package relationship provides primitives to interact with the openapi HTTP API.
Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.3.0 DO NOT EDIT.
Index ¶
- type MatchSelector
- type MatchSelectorItem
- type RelationshipDefinition
- func (r *RelationshipDefinition) Create(db *database.Handler, hostID uuid.UUID) (uuid.UUID, error)
- func (r *RelationshipDefinition) GenerateID() (uuid.UUID, error)
- func (r *RelationshipDefinition) GetDefaultEvaluationQuery() string
- func (r *RelationshipDefinition) GetEntityDetail() string
- func (r RelationshipDefinition) GetID() uuid.UUID
- func (r RelationshipDefinition) TableName() string
- func (r RelationshipDefinition) Type() entity.EntityType
- func (r *RelationshipDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
- func (r RelationshipDefinition) WriteComponentDefinition(relDirPath string) error
- type RelationshipDefinitionCapabilitiesEntityState
- type RelationshipDefinitionCapabilitiesStatus
- type RelationshipDefinitionKind
- type RelationshipDefinitionMetadataStyles
- type RelationshipDefinitionMetadataStyles0TargetArrowFill
- type RelationshipDefinitionMetadataStylesCurveStyle
- type RelationshipDefinitionMetadataStylesLineCap
- type RelationshipDefinitionMetadataStylesLineStyle
- type RelationshipDefinitionMetadataStylesMidTargetArrowFill
- type RelationshipDefinitionMetadataStylesMidTargetArrowShape
- type RelationshipDefinitionMetadataStylesTargetArrowShape
- type RelationshipDefinitionMetadataStylesTextTransform
- type RelationshipDefinitionSelectorsPatchStrategy
- type RelationshipDefinitionStatus
- type RelationshipDefinition_Selectors_Patch
- type Relationship_Metadata
- type Selector
- type SelectorItem
- type SelectorSet
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MatchSelector ¶
type MatchSelector struct { Refs *[][]string `json:"refs,omitempty" yaml:"refs,omitempty"` From *[]MatchSelectorItem `json:"from,omitempty" yaml:"from,omitempty"` To *[]MatchSelectorItem `json:"to,omitempty" yaml:"to,omitempty"` }
type MatchSelectorItem ¶
type RelationshipDefinition ¶
type RelationshipDefinition struct { // Id Uniquely identifies the entity Id uuid.UUID `json:"id" yaml:"id"` // Capabilities Capabilities associated with the relationship. Capabilities *[]capability.Capability `json:"capabilities,omitempty" yaml:"capabilities" gorm:"type:bytes;serializer:json"` // EvaluationQuery Optional. Assigns the policy to be used for the evaluation of the relationship. Deprecation Notice: In the future, this property is either to be removed or to it is to be an array of optional policy $refs. EvaluationQuery *string `json:"evaluationQuery" yaml:"evaluationQuery"` // Kind Kind of the Relationship. Learn more about relationships - https://docs-meshplay.khulnasoft.com/concepts/logical/relationships. Kind RelationshipDefinitionKind `json:"kind" yaml:"kind"` // Metadata Metadata contains additional information associated with the Relationship. Metadata *Relationship_Metadata `json:"metadata,omitempty" yaml:"metadata" gorm:"type:bytes;serializer:json"` // Model Name of the model in which this relationship is packaged. Model model.ModelDefinition `json:"model" yaml:"model" gorm:"foreignKey:ModelId;references:Id"` ModelId uuid.UUID `json:"-" gorm:"index:idx_relationship_definition_dbs_model_id,column:model_id"` // SchemaVersion Specifies the version of the schema used for the relationship definition. SchemaVersion string `json:"schemaVersion" yaml:"schemaVersion"` // Selectors Selectors are organized as an array, with each item containing a distinct set of selectors that share a common functionality. This structure allows for flexibility in defining relationships, even when different components are involved. Selectors *SelectorSet `json:"selectors,omitempty" yaml:"selectors,omitempty" gorm:"type:bytes;serializer:json"` // SubType Most granular unit of relationship classification. The combination of Kind, Type and SubType together uniquely identify a Relationship. SubType string `json:"subType" yaml:"subType"` // Status of the relationship. Status *RelationshipDefinitionStatus `json:"status" yaml:"status"` // Type Classification of relationships. Used to group relationships similar in nature. RelationshipType string `json:"type" yaml:"type" gorm:"column:type"` // Version Specifies the version of the relationship definition. Version string `json:"version" yaml:"version"` }
RelationshipDefinition Relationships define the nature of interaction between interconnected components in Meshplay. The combination of relationship properties kind, type, and subtype characterize various genealogical relations among and between components. Relationships have selectors, selector sets, metadata, and optional parameters. Learn more at https://docs-meshplay.khulnasoft.com/concepts/logical/relationships.
func (*RelationshipDefinition) GenerateID ¶
func (r *RelationshipDefinition) GenerateID() (uuid.UUID, error)
func (*RelationshipDefinition) GetDefaultEvaluationQuery ¶
func (r *RelationshipDefinition) GetDefaultEvaluationQuery() string
func (*RelationshipDefinition) GetEntityDetail ¶
func (r *RelationshipDefinition) GetEntityDetail() string
func (RelationshipDefinition) GetID ¶
func (r RelationshipDefinition) GetID() uuid.UUID
func (RelationshipDefinition) TableName ¶
func (r RelationshipDefinition) TableName() string
func (RelationshipDefinition) Type ¶
func (r RelationshipDefinition) Type() entity.EntityType
func (*RelationshipDefinition) UpdateStatus ¶
func (r *RelationshipDefinition) UpdateStatus(db *database.Handler, status entity.EntityStatus) error
func (RelationshipDefinition) WriteComponentDefinition ¶
func (r RelationshipDefinition) WriteComponentDefinition(relDirPath string) error
type RelationshipDefinitionCapabilitiesEntityState ¶
type RelationshipDefinitionCapabilitiesEntityState string
RelationshipDefinitionCapabilitiesEntityState defines model for RelationshipDefinition.Capabilities.EntityState.
type RelationshipDefinitionCapabilitiesStatus ¶
type RelationshipDefinitionCapabilitiesStatus string
RelationshipDefinitionCapabilitiesStatus Status of the capability
type RelationshipDefinitionKind ¶
type RelationshipDefinitionKind string
RelationshipDefinitionKind Kind of the Relationship. Learn more about relationships - https://docs-meshplay.khulnasoft.com/concepts/logical/relationships.
const ( Edge RelationshipDefinitionKind = "edge" Hierarchical RelationshipDefinitionKind = "hierarchical" Sibling RelationshipDefinitionKind = "sibling" )
Defines values for RelationshipDefinitionKind.
type RelationshipDefinitionMetadataStyles ¶
type RelationshipDefinitionMetadataStyles struct { // ArrowScale Scaling for the arrow size. ArrowScale *float32 `json:"arrow-scale,omitempty" yaml:"arrow-scale,omitempty"` // Color The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g. #ff0000 or #f00), RGB (e.g. rgb(255, 0, 0)), or HSL (e.g. hsl(0, 100%, 50%)). Color *string `json:"color,omitempty" yaml:"color,omitempty"` // CurveStyle The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges. CurveStyle *RelationshipDefinitionMetadataStylesCurveStyle `json:"curve-style,omitempty" yaml:"curve-style,omitempty"` // EdgeAnimation The animation to use for the edge. Can be like 'marching-ants' , 'blink' , 'moving-gradient',etc . EdgeAnimation *string `json:"edge-animation,omitempty" yaml:"edge-animation,omitempty"` // FontFamily A comma-separated list of font names to use on the label text. FontFamily *string `json:"font-family,omitempty" yaml:"font-family,omitempty"` // FontSize The size of the label text. FontSize *string `json:"font-size,omitempty" yaml:"font-size,omitempty"` // FontStyle A CSS font style to be applied to the label text. FontStyle *string `json:"font-style,omitempty" yaml:"font-style,omitempty"` // FontWeight A CSS font weight to be applied to the label text. FontWeight *string `json:"font-weight,omitempty" yaml:"font-weight,omitempty"` // Label The text to display for an element’s label. Can give a path, e.g. data(id) will label with the elements id Label *string `json:"label,omitempty" yaml:"label,omitempty"` // LineCap The cap style of the edge’s line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge. LineCap *RelationshipDefinitionMetadataStylesLineCap `json:"line-cap,omitempty" yaml:"line-cap,omitempty"` // LineColor The colour of the edge’s line. Colours may be specified by name (e.g. red), hex (e.g. #ff0000 or #f00), RGB (e.g. rgb(255, 0, 0)), or HSL (e.g. hsl(0, 100%, 50%)). LineColor *string `json:"line-color,omitempty" yaml:"line-color,omitempty"` // LineOpacity The opacity of the edge’s line and arrow. Useful if you wish to have a separate opacity for the edge label versus the edge line. Note that the opacity value of the edge element affects the effective opacity of its line and label subcomponents. LineOpacity *float32 `json:"line-opacity,omitempty" yaml:"line-opacity,omitempty"` // LineStyle The style of the edge’s line. LineStyle *RelationshipDefinitionMetadataStylesLineStyle `json:"line-style,omitempty" yaml:"line-style,omitempty"` // MidTargetArrowColor The colour of the edge’s source arrow. Colours may be specified by name (e.g. red), hex (e.g. #ff0000 or #f00), RGB (e.g. rgb(255, 0, 0)), or HSL (e.g. hsl(0, 100%, 50%)). MidTargetArrowColor *string `json:"mid-target-arrow-color,omitempty" yaml:"mid-target-arrow-color,omitempty"` // MidTargetArrowFill The fill state of the edge’s source arrow MidTargetArrowFill *RelationshipDefinitionMetadataStylesMidTargetArrowFill `json:"mid-target-arrow-fill,omitempty" yaml:"mid-target-arrow-fill,omitempty"` // MidTargetArrowShape The shape of the edge’s source arrow MidTargetArrowShape *RelationshipDefinitionMetadataStylesMidTargetArrowShape `json:"mid-target-arrow-shape,omitempty" yaml:"mid-target-arrow-shape,omitempty"` // Opacity The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children.See https://js.cytoscape.org/#style/visibility Opacity *float32 `json:"opacity,omitempty" yaml:"opacity,omitempty"` // PrimaryColor Primary color of the component used for UI representation. PrimaryColor string `json:"primaryColor" yaml:"primaryColor"` // SecondaryColor Secondary color of the entity used for UI representation. SecondaryColor *string `json:"secondaryColor,omitempty" yaml:"secondaryColor,omitempty"` // SourceLabel The text to display for an edge’s source label. Can give a path, e.g. data(id) will label with the elements id SourceLabel *string `json:"source-label,omitempty" yaml:"source-label,omitempty"` // SvgColor Colored SVG of the entity used for UI representation on light background. SvgColor string `json:"svgColor" yaml:"svgColor"` // SvgComplete Complete SVG of the entity used for UI representation, often inclusive of background. SvgComplete *string `json:"svgComplete,omitempty" yaml:"svgComplete,omitempty"` // SvgWhite White SVG of the entity used for UI representation on dark background. SvgWhite string `json:"svgWhite" yaml:"svgWhite"` // TargetArrowColor The colour of the edge’s source arrow. Colours may be specified by name (e.g. red), hex (e.g. #ff0000 or #f00), RGB (e.g. rgb(255, 0, 0)), or HSL (e.g. hsl(0, 100%, 50%)). TargetArrowColor *string `json:"target-arrow-color,omitempty" yaml:"target-arrow-color,omitempty"` // TargetArrowFill The fill state of the edge’s source arrow TargetArrowFill *RelationshipDefinitionMetadataStyles0TargetArrowFill `json:"target-arrow-fill,omitempty" yaml:"target-arrow-fill,omitempty"` // TargetArrowShape The shape of the edge’s source arrow TargetArrowShape *RelationshipDefinitionMetadataStylesTargetArrowShape `json:"target-arrow-shape,omitempty" yaml:"target-arrow-shape,omitempty"` // TargetLabel The text to display for an edge’s target label. Can give a path, e.g. data(id) will label with the elements id TargetLabel *string `json:"target-label,omitempty" yaml:"target-label,omitempty"` // TextOpacity The opacity of the label text, including its outline. TextOpacity *float32 `json:"text-opacity,omitempty" yaml:"text-opacity,omitempty"` // TextTransform A transformation to apply to the label text TextTransform *RelationshipDefinitionMetadataStylesTextTransform `json:"text-transform,omitempty" yaml:"text-transform,omitempty"` // ZIndex An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index. ZIndex *int `json:"z-index,omitempty" yaml:"z-index,omitempty"` }
RelationshipDefinitionMetadataStyles0 defines model for .
type RelationshipDefinitionMetadataStyles0TargetArrowFill ¶
type RelationshipDefinitionMetadataStyles0TargetArrowFill string
const ( RelationshipDefinitionMetadataStyles0TargetArrowFillFilled RelationshipDefinitionMetadataStyles0TargetArrowFill = "filled" RelationshipDefinitionMetadataStyles0TargetArrowFillHollow RelationshipDefinitionMetadataStyles0TargetArrowFill = "hollow" )
Defines values for RelationshipDefinitionMetadataStyles0TargetArrowFill.
type RelationshipDefinitionMetadataStylesCurveStyle ¶
type RelationshipDefinitionMetadataStylesCurveStyle string
RelationshipDefinitionMetadataStylesCurveStyle The curving method used to separate two or more edges between two nodes; may be haystack (very fast, bundled straight edges for which loops and compounds are unsupported), straight (straight edges with all arrows supported), bezier (bundled curved edges), unbundled-bezier (curved edges for use with manual control points), segments (a series of straight lines), taxi (right-angled lines, hierarchically bundled). Note that haystack edges work best with ellipse, rectangle, or similar nodes. Smaller node shapes, like triangle, will not be as aesthetically pleasing. Also note that edge endpoint arrows are unsupported for haystack edges.
const ( Bezier RelationshipDefinitionMetadataStylesCurveStyle = "bezier" Haystack RelationshipDefinitionMetadataStylesCurveStyle = "haystack" Segments RelationshipDefinitionMetadataStylesCurveStyle = "segments" Straight RelationshipDefinitionMetadataStylesCurveStyle = "straight" Taxi RelationshipDefinitionMetadataStylesCurveStyle = "taxi" UnbundledBezier RelationshipDefinitionMetadataStylesCurveStyle = "unbundled-bezier" )
Defines values for RelationshipDefinitionMetadataStylesCurveStyle.
type RelationshipDefinitionMetadataStylesLineCap ¶
type RelationshipDefinitionMetadataStylesLineCap string
RelationshipDefinitionMetadataStylesLineCap The cap style of the edge’s line; may be butt (default), round, or square. The cap may or may not be visible, depending on the shape of the node and the relative size of the node and edge. Caps other than butt extend beyond the specified endpoint of the edge.
const ( RelationshipDefinitionMetadataStylesLineCapButt RelationshipDefinitionMetadataStylesLineCap = "butt" RelationshipDefinitionMetadataStylesLineCapRound RelationshipDefinitionMetadataStylesLineCap = "round" RelationshipDefinitionMetadataStylesLineCapSquare RelationshipDefinitionMetadataStylesLineCap = "square" )
Defines values for RelationshipDefinitionMetadataStylesLineCap.
type RelationshipDefinitionMetadataStylesLineStyle ¶
type RelationshipDefinitionMetadataStylesLineStyle string
const ( Dashed RelationshipDefinitionMetadataStylesLineStyle = "dashed" Dotted RelationshipDefinitionMetadataStylesLineStyle = "dotted" Solid RelationshipDefinitionMetadataStylesLineStyle = "solid" )
Defines values for RelationshipDefinitionMetadataStyles0LineStyle.
type RelationshipDefinitionMetadataStylesMidTargetArrowFill ¶
type RelationshipDefinitionMetadataStylesMidTargetArrowFill string
const ( RelationshipDefinitionMetadataStylesMidTargetArrowFillFilled RelationshipDefinitionMetadataStylesMidTargetArrowFill = "filled" RelationshipDefinitionMetadataStylesMidTargetArrowFillHollow RelationshipDefinitionMetadataStylesMidTargetArrowFill = "hollow" )
Defines values for RelationshipDefinitionMetadataStylesMidTargetArrowFill.
type RelationshipDefinitionMetadataStylesMidTargetArrowShape ¶
type RelationshipDefinitionMetadataStylesMidTargetArrowShape string
const ( RelationshipDefinitionMetadataStylesMidTargetArrowShapeChevron RelationshipDefinitionMetadataStylesMidTargetArrowShape = "chevron" RelationshipDefinitionMetadataStylesMidTargetArrowShapeCircle RelationshipDefinitionMetadataStylesMidTargetArrowShape = "circle" RelationshipDefinitionMetadataStylesMidTargetArrowShapeCircleTriangle RelationshipDefinitionMetadataStylesMidTargetArrowShape = "circle-triangle" RelationshipDefinitionMetadataStylesMidTargetArrowShapeDiamond RelationshipDefinitionMetadataStylesMidTargetArrowShape = "diamond" RelationshipDefinitionMetadataStylesMidTargetArrowShapeNone RelationshipDefinitionMetadataStylesMidTargetArrowShape = "none" RelationshipDefinitionMetadataStylesMidTargetArrowShapeSquare RelationshipDefinitionMetadataStylesMidTargetArrowShape = "square" RelationshipDefinitionMetadataStylesMidTargetArrowShapeTee RelationshipDefinitionMetadataStylesMidTargetArrowShape = "tee" RelationshipDefinitionMetadataStylesMidTargetArrowShapeTriangle RelationshipDefinitionMetadataStylesMidTargetArrowShape = "triangle" RelationshipDefinitionMetadataStylesMidTargetArrowShapeTriangleBackcurve RelationshipDefinitionMetadataStylesMidTargetArrowShape = "triangle-backcurve" RelationshipDefinitionMetadataStylesMidTargetArrowShapeTriangleCross RelationshipDefinitionMetadataStylesMidTargetArrowShape = "triangle-cross" RelationshipDefinitionMetadataStylesMidTargetArrowShapeTriangleTee RelationshipDefinitionMetadataStylesMidTargetArrowShape = "triangle-tee" RelationshipDefinitionMetadataStylesMidTargetArrowShapeVee RelationshipDefinitionMetadataStylesMidTargetArrowShape = "vee" )
Defines values for RelationshipDefinitionMetadataStylesMidTargetArrowShape.
type RelationshipDefinitionMetadataStylesTargetArrowShape ¶
type RelationshipDefinitionMetadataStylesTargetArrowShape string
RelationshipDefinitionMetadataStylesTargetArrowShape The shape of the edge’s source arrow
const ( RelationshipDefinitionMetadataStylesTargetArrowShapeChevron RelationshipDefinitionMetadataStylesTargetArrowShape = "chevron" RelationshipDefinitionMetadataStylesTargetArrowShapeCircle RelationshipDefinitionMetadataStylesTargetArrowShape = "circle" RelationshipDefinitionMetadataStylesTargetArrowShapeCircleTriangle RelationshipDefinitionMetadataStylesTargetArrowShape = "circle-triangle" RelationshipDefinitionMetadataStylesTargetArrowShapeDiamond RelationshipDefinitionMetadataStylesTargetArrowShape = "diamond" RelationshipDefinitionMetadataStylesTargetArrowShapeNone RelationshipDefinitionMetadataStylesTargetArrowShape = "none" RelationshipDefinitionMetadataStylesTargetArrowShapeSquare RelationshipDefinitionMetadataStylesTargetArrowShape = "square" RelationshipDefinitionMetadataStylesTargetArrowShapeTee RelationshipDefinitionMetadataStylesTargetArrowShape = "tee" RelationshipDefinitionMetadataStylesTargetArrowShapeTriangle RelationshipDefinitionMetadataStylesTargetArrowShape = "triangle" RelationshipDefinitionMetadataStylesTargetArrowShapeTriangleBackcurve RelationshipDefinitionMetadataStylesTargetArrowShape = "triangle-backcurve" RelationshipDefinitionMetadataStylesTargetArrowShapeTriangleCross RelationshipDefinitionMetadataStylesTargetArrowShape = "triangle-cross" RelationshipDefinitionMetadataStylesTargetArrowShapeTriangleTee RelationshipDefinitionMetadataStylesTargetArrowShape = "triangle-tee" RelationshipDefinitionMetadataStylesTargetArrowShapeVee RelationshipDefinitionMetadataStylesTargetArrowShape = "vee" )
type RelationshipDefinitionMetadataStylesTextTransform ¶
type RelationshipDefinitionMetadataStylesTextTransform string
RelationshipDefinitionMetadataStylesTextTransform A transformation to apply to the label text
const ( RelationshipDefinitionMetadataStylesTextTransformLowercase RelationshipDefinitionMetadataStylesTextTransform = "lowercase" RelationshipDefinitionMetadataStylesTextTransformNone RelationshipDefinitionMetadataStylesTextTransform = "none" RelationshipDefinitionMetadataStylesTextTransformUppercase RelationshipDefinitionMetadataStylesTextTransform = "uppercase" )
Defines values for RelationshipDefinitionMetadataStylesTextTransform.
type RelationshipDefinitionSelectorsPatchStrategy ¶
type RelationshipDefinitionSelectorsPatchStrategy string
RelationshipDefinitionSelectorsPatchStrategy patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902).
add: Inserts a value into an array or adds a member to an object. replace: Replaces a value. merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created. strategic:specific to Kubernetes and understands the structure of Kubernetes objects. It can handle complex changes like updating lists and maps, as well as preserving default values. However, it's not supported for custom resources. For custom resources, only JSON Patch and Merge Patch are typically supported. remove: Removes a value. copy: Copies a value from one location to another. move: Moves a value from one location to another. test: Tests that a value at the target location is equal to a specified value.
const ( RelationshipDefinitionSelectorsPatchStrategyAdd RelationshipDefinitionSelectorsPatchStrategy = "add" RelationshipDefinitionSelectorsPatchStrategyCopy RelationshipDefinitionSelectorsPatchStrategy = "copy" RelationshipDefinitionSelectorsPatchStrategyMerge RelationshipDefinitionSelectorsPatchStrategy = "merge" RelationshipDefinitionSelectorsPatchStrategyMove RelationshipDefinitionSelectorsPatchStrategy = "move" RelationshipDefinitionSelectorsPatchStrategyRemove RelationshipDefinitionSelectorsPatchStrategy = "remove" RelationshipDefinitionSelectorsPatchStrategyStrategic RelationshipDefinitionSelectorsPatchStrategy = "strategic" RelationshipDefinitionSelectorsPatchStrategyTest RelationshipDefinitionSelectorsPatchStrategy = "test" )
Defines values for RelationshipDefinitionSelectorsPatchStrategy.
type RelationshipDefinitionStatus ¶
type RelationshipDefinitionStatus string
Status of the relationship.
const ( Deleted RelationshipDefinitionStatus = "deleted" Enabled RelationshipDefinitionStatus = "enabled" Ignored RelationshipDefinitionStatus = "ignored" )
Defines values for RelationshipDefinitionStatus.
type RelationshipDefinition_Selectors_Patch ¶
type RelationshipDefinition_Selectors_Patch struct { // PatchStrategy patchStrategy allows you to make specific changes to a resource using a standard JSON Patch format (RFC 6902). // // add: Inserts a value into an array or adds a member to an object. // replace: Replaces a value. // merge: Combines the values of the target location with the values from the patch. If the target location doesn't exist, it is created. // strategic:specific to Kubernetes and understands the structure of Kubernetes objects. It can handle complex changes like updating lists and maps, as well as preserving default values. However, it's not supported for custom resources. For custom resources, only JSON Patch and Merge Patch are typically supported. // remove: Removes a value. // copy: Copies a value from one location to another. // move: Moves a value from one location to another. // test: Tests that a value at the target location is equal to a specified value. PatchStrategy *RelationshipDefinitionSelectorsPatchStrategy `json:"patchStrategy,omitempty" yaml:"patchStrategy,omitempty"` MutatorRef *[][]string `json:"mutatorRef,omitempty" yaml:"mutatorRef,omitempty"` MutatedRef *[][]string `json:"mutatedRef,omitempty" yaml:"mutatedRef,omitempty"` }
RelationshipDefinition_Selectors_Patch defines model for RelationshipDefinition.Selectors.Allow.To.Patch.
type Relationship_Metadata ¶
type Relationship_Metadata struct { // Description Characterization of the meaning of the relationship and its relevance to both Meshplay and entities under management. Description *string `json:"description" yaml:"description"` Styles *RelationshipDefinitionMetadataStyles `json:"styles" yaml:"styles"` }
type Selector ¶
type Selector struct { // From Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match. From []SelectorItem `json:"from" yaml:"from"` // To Describes the component(s) which are involved in the relationship along with a set of actions to perform upon selection match. To []SelectorItem `json:"to" yaml:"to"` }
type SelectorItem ¶
type SelectorItem struct { // Id A Universally Unique Identifier used to uniquely identify entites in Meshplay. The UUID core defintion is used across different schemas. Id *uuid.UUID `json:"id" yaml:"id"` Kind *string `json:"kind" yaml:"kind"` Match MatchSelector `json:"match,omitempty" yaml:"match,omitempty"` // Model Name of the model implicated by this selector. Learn more at https://docs-meshplay.khulnasoft.com/concepts/models Model *model.ModelDefinition `json:"model,omitempty" yaml:"model"` Patch *RelationshipDefinition_Selectors_Patch `json:"patch" yaml:"patch"` }
type SelectorSet ¶
type SelectorSet []struct { // Allow Selectors used to define relationships which are allowed. Allow Selector `json:"allow" yaml:"allow"` // Deny Optional selectors used to define relationships which should not be created / is restricted. Deny *Selector `json:"deny,omitempty" yaml:"deny,omitempty"` }