InterfaceSpecification
Specification of an Interface.
Defined on a Component, but can be visible and invisible on different ComponentVersions.
Can be affected by Issues, and be used as start / end of ServiceEffectSpecifications.
Defines InterfaceParts, but active parts depend on the InterfaceSpecificationVersion.
READ is granted if READ is granted on component
, or any InterfaceSpecificationVersion in versions
.
type InterfaceSpecification implements AffectedByIssue, BaseNode, MutableTemplatedNode, Named, NamedAffectedByIssue, Node, TemplatedNode {
affectingIssues(
after: String
before: String
filter: IssueFilterInput
first: Int
last: Int
orderBy: [IssueOrder!]
skip: Int
): IssueConnection!
component: Component!
description: String!
hasPermission(
permission: AllPermissionEntry
): Boolean!
id: ID!
name: String!
template: InterfaceSpecificationTemplate!
templatedField(
name: String!
): JSON
templatedFields(
names: [String!]
prefixMatching: Boolean
): [JSONField!]!
versions(
after: String
before: String
filter: InterfaceSpecificationVersionFilterInput
first: Int
last: Int
orderBy: [InterfaceSpecificationVersionOrder!]
skip: Int
): InterfaceSpecificationVersionConnection!
}
Fields
InterfaceSpecification.affectingIssues
● IssueConnection!
non-null object
The issues which affect this entity
InterfaceSpecification.affectingIssues.after
●String
scalarGet only items after the cursor
InterfaceSpecification.affectingIssues.before
● String
scalar
Get only items before the cursor
InterfaceSpecification.affectingIssues.filter
● IssueFilterInput
input
Filter for specific items in the connection
InterfaceSpecification.affectingIssues.first
● Int
scalar
Get the first n items. Must not be used if before is specified
InterfaceSpecification.affectingIssues.last
● Int
scalar
Get the last n items. Must not be used if after is specified
InterfaceSpecification.affectingIssues.orderBy
● [IssueOrder!]
list input
Order in which the items are sorted
InterfaceSpecification.affectingIssues.skip
● Int
scalar
Skips n items. First or last MUST be specified, is otherwise ignored
InterfaceSpecification.component
● Component!
non-null object
The Component this InterfaceSpecification is part of.
InterfaceSpecification.description
● String!
non-null scalar
The description of this entity.
InterfaceSpecification.hasPermission
● Boolean!
non-null scalar
Checks if the current user has a specific permission on this Node
InterfaceSpecification.hasPermission.permission
●AllPermissionEntry
enumThe permission to check for
InterfaceSpecification.id
● ID!
non-null scalar
The unique id of this node
InterfaceSpecification.name
● String!
non-null scalar
The name of this entity.
InterfaceSpecification.template
● InterfaceSpecificationTemplate!
non-null object
The Template of this InterfaceSpecification.
InterfaceSpecification.templatedField
● JSON
scalar
Value of a field defined by the template. Error if such a field is not defined.
InterfaceSpecification.templatedField.name
●String!
non-null scalarName of the extension field
InterfaceSpecification.templatedFields
● [JSONField!]!
non-null object
All templatedFields If
names
is provided, only those matching the name. IfprefixMatching
is true, matching is done by prefix, otherwise by full name.
InterfaceSpecification.templatedFields.names
●[String!]
list scalarNames of the templated fields. If not provided, all templatedFields.
InterfaceSpecification.templatedFields.prefixMatching
● Boolean
scalar
If true, name matching is performed as prefix matching, otherwise as absolute match. Defaults to absolute matching
InterfaceSpecification.versions
● InterfaceSpecificationVersionConnection!
non-null object
Versions of this InterfaceSpecification.
InterfaceSpecification.versions.after
●String
scalarGet only items after the cursor
InterfaceSpecification.versions.before
● String
scalar
Get only items before the cursor
InterfaceSpecification.versions.filter
● InterfaceSpecificationVersionFilterInput
input
Filter for specific items in the connection
InterfaceSpecification.versions.first
● Int
scalar
Get the first n items. Must not be used if before is specified
InterfaceSpecification.versions.last
● Int
scalar
Get the last n items. Must not be used if after is specified
InterfaceSpecification.versions.orderBy
● [InterfaceSpecificationVersionOrder!]
list input
Order in which the items are sorted
InterfaceSpecification.versions.skip
● Int
scalar
Skips n items. First or last MUST be specified, is otherwise ignored
Interfaces
AffectedByIssue
interface
Entities that can be affected by an Issue, meaning that this entity is in some regard impacted by e.g. a bug described by an issue, or the non-present of a feature described by an issue.
BaseNode
interface
Shared extensions to the node type.
MutableTemplatedNode
interface
Interface for all types which support templates describing user writeable fields.
Named
interface
Entity with a name and a description.
NamedAffectedByIssue
interface
Affected by issue with a name and description
Node
interface
Base class of all nodes
TemplatedNode
interface
Interface for all types which support templates.
Returned by
searchInterfaceSpecifications
query
Member of
CreateInterfaceSpecificationPayload
object ● InterfaceSpecificationConnection
object ● InterfaceSpecificationEdge
object ● InterfaceSpecificationVersion
object ● UpdateInterfaceSpecificationPayload
object