Repository

com.reactific.riddl.language.AST.Repository
case class Repository(loc: At, id: Identifier, types: Seq[Type], handlers: Seq[Handler], inlets: Seq[Inlet], outlets: Seq[Outlet], authors: Seq[AuthorRef], functions: Seq[Function], constants: Seq[Constant], invariants: Seq[Invariant], includes: Seq[Include[RepositoryDefinition]], options: Seq[RepositoryOption], terms: Seq[Term], brief: Option[LiteralString], description: Option[Description]) extends Processor[RepositoryOption, RepositoryDefinition], ContextDefinition

A RIDDL repository is an abstraction for anything that can retain information(e.g. messages for retrieval at a later time. This might be a relational database, NoSQL database, data lake, API, or something not yet invented. There is no specific technology implied other than the retention and retrieval of information. You should think of repositories more like a message-oriented version of the Java Repository Pattern than any particular kind ofdatabase.

Value parameters

authors

The author(s) who wrote this repository specification.

brief

A brief description of this repository

description

A detailed description of this repository

handlers

The handler for specifying how messages should be handled by the repository

id

The unique identifier for this Repository

includes

Included files

loc

Location in the source of the Repository

options

Options that can be used by the translators

terms

Definitions of terms about this repository

types

The types, typically messages, that the Repository uses

Attributes

See also

https://java-design-patterns.com/patterns/repository/#explanation

Graph
Supertypes

Members list

Value members

Concrete methods

override def kind: String

Attributes

Definition Classes

Inherited methods

def asVital[OPT <: OptionValue, DEF <: Definition]: VitalDefinition[OPT, DEF]

Attributes

Inherited from:
Definition

Attributes

Inherited from:
BrieflyDescribedValue

Attributes

Inherited from:
DescribedValue
override def format: String

Format the node to a string

Format the node to a string

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithOptions
override def hasAuthors: Boolean

Attributes

Definition Classes
Inherited from:
WithAuthors

Attributes

Inherited from:
BrieflyDescribedValue
override def hasDefinitions: Boolean

Attributes

Definition Classes
Inherited from:
Definition

Attributes

Inherited from:
DescribedValue

Attributes

Inherited from:
WithOptions
override def hasOptions: Boolean

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
WithTerms
override def hasTypes: Boolean

Attributes

Definition Classes
Inherited from:
WithTypes

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Definition
override def isContainer: Boolean

Determine if this node is a container or not

Determine if this node is a container or not

Attributes

Definition Classes
Inherited from:
Container
override def isDefinition: Boolean

Attributes

Definition Classes
Inherited from:
Definition
override def isEmpty: Boolean

determine if this node is empty or not.

determine if this node is empty or not. Non-containers are always empty

Attributes

Definition Classes
Inherited from:
WithOptions

Attributes

Inherited from:
Definition

Attributes

Inherited from:
Container
override def isVital: Boolean

Attributes

Definition Classes
Inherited from:
VitalDefinition
final def nonEmpty: Boolean

Attributes

Inherited from:
RiddlNode

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Definition

Concrete fields

lazy override val contents: Seq[RepositoryDefinition]

Implicits

Inherited implicits

implicit def bool2int(b: Boolean): Int

Implicit conversion of boolean to Int for easier computation of statistics below

Implicit conversion of boolean to Int for easier computation of statistics below

Value parameters

b

The boolean to convert to an Int

Attributes

Returns
Inherited from:
VitalDefinition