case class Repository(loc: At, id: Definitions.Identifier, types: Seq[Type] = Seq.empty[Type], handlers: Seq[Handler] = Seq.empty[Handler], inlets: Seq[Inlet] = Seq.empty[Inlet], outlets: Seq[Outlet] = Seq.empty[Outlet], authors: Seq[AuthorRef] = Seq.empty[AuthorRef], includes: Seq[Include[RepositoryDefinition]] = Seq
.empty[Include[RepositoryDefinition]], options: Seq[Definitions.RepositoryOption] = Seq.empty[RepositoryOption], terms: Seq[Term] = Seq.empty[Term], brief: Option[Definitions.LiteralString] = Option.empty[LiteralString], description: Option[Definitions.Description] = None) extends Processor[RepositoryOption, RepositoryDefinition] with ContextDefinition with Product with Serializable
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.
- loc
Location in the source of the Repository
- id
The unique identifier for this Repository
- types
The types, typically messages, that the Repository uses
- handlers
The handler for specifying how messages should be handled by the repository
- authors
The author(s) who wrote this repository specification.
- includes
Included files
- options
Options that can be used by the translators
- terms
Definitions of terms about this repository
- brief
A brief description of this repository
- description
A detailed description of this repository
- See also
https://java-design-patterns.com/patterns/repository/#explanation
- Alphabetic
- By Inheritance
- Repository
- Serializable
- Product
- Equals
- ContextDefinition
- Processor
- WithTypes
- VitalDefinition
- WithTerms
- WithIncludes
- WithAuthors
- WithOptions
- Definition
- Container
- BrieflyDescribedValue
- DescribedValue
- RiddlValue
- RiddlNode
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Repository(loc: At, id: Definitions.Identifier, types: Seq[Type] = Seq.empty[Type], handlers: Seq[Handler] = Seq.empty[Handler], inlets: Seq[Inlet] = Seq.empty[Inlet], outlets: Seq[Outlet] = Seq.empty[Outlet], authors: Seq[AuthorRef] = Seq.empty[AuthorRef], includes: Seq[Include[RepositoryDefinition]] = Seq
.empty[Include[RepositoryDefinition]], options: Seq[Definitions.RepositoryOption] = Seq.empty[RepositoryOption], terms: Seq[Term] = Seq.empty[Term], brief: Option[Definitions.LiteralString] = Option.empty[LiteralString], description: Option[Definitions.Description] = None)- loc
Location in the source of the Repository
- id
The unique identifier for this Repository
- types
The types, typically messages, that the Repository uses
- handlers
The handler for specifying how messages should be handled by the repository
- authors
The author(s) who wrote this repository specification.
- includes
Included files
- options
Options that can be used by the translators
- terms
Definitions of terms about this repository
- brief
A brief description of this repository
- description
A detailed description of this repository
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val authors: Seq[AuthorRef]
- Definition Classes
- Repository → WithAuthors
- 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
- b
The boolean to convert to an Int
- Definition Classes
- VitalDefinition
- val brief: Option[Definitions.LiteralString]
- Definition Classes
- Repository → BrieflyDescribedValue
- def briefValue: String
- Definition Classes
- BrieflyDescribedValue
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def completeness: (Int, Int)
Compute the completeness of this definition.
Compute the completeness of this definition. Vital definitions should have options, terms, and authors but includes are optional. Incompleteness is signalled by child definitions that are empty.
- returns
A numerator and denominator for percent complete
- Definition Classes
- VitalDefinition
- lazy val contents: Seq[RepositoryDefinition]
- Definition Classes
- Repository → WithIncludes → Container
- val description: Option[Definitions.Description]
- Definition Classes
- Repository → DescribedValue
- def descriptionValue: String
- Definition Classes
- DescribedValue
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def find(name: String): Option[Definitions.Definition]
- Definition Classes
- Definition
- def format: String
Format the node to a string
Format the node to a string
- Definition Classes
- WithOptions → RiddlNode
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def getOptionValue[OPT <: Definitions.RepositoryOption](implicit arg0: ClassTag[OPT]): Option[Seq[Definitions.LiteralString]]
- Definition Classes
- WithOptions
- val handlers: Seq[Handler]
- Definition Classes
- Repository → Processor
- def hasAuthors: Boolean
- Definition Classes
- WithAuthors → Definition
- def hasInlets: Boolean
- Definition Classes
- Processor
- def hasOption[OPT <: Definitions.RepositoryOption](implicit arg0: ClassTag[OPT]): Boolean
- Definition Classes
- WithOptions
- def hasOptions: Boolean
- Definition Classes
- WithOptions → Definition
- def hasOutlets: Boolean
- Definition Classes
- Processor
- def hasTerms: Boolean
- Definition Classes
- WithTerms
- def hasTypes: Boolean
- Definition Classes
- WithTypes → Definition
- val id: Definitions.Identifier
- Definition Classes
- Repository → Definition
- def identify: String
- Definition Classes
- Definition
- def identifyWithLoc: String
- Definition Classes
- Definition
- val includes: Seq[Include[RepositoryDefinition]]
- Definition Classes
- Repository → WithIncludes
- val inlets: Seq[Inlet]
- Definition Classes
- Repository → Processor
- def isContainer: Boolean
Determine if this node is a container or not
- def isEmpty: Boolean
determine if this node is empty or not.
determine if this node is empty or not. Non-containers are always empty
- Definition Classes
- WithOptions → Container → RiddlNode
- def isImplicit: Boolean
- Definition Classes
- Definition
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isRootContainer: Boolean
- Definition Classes
- Container
- def isVital: Boolean
- Definition Classes
- VitalDefinition → Definition
- def kind: String
- Definition Classes
- Repository → Definition
- val loc: At
The location in the parse at which this RiddlValue occurs
The location in the parse at which this RiddlValue occurs
- Definition Classes
- Repository → RiddlValue
- def maturity: Int
Compute the 'maturity' of a definition.
Compute the 'maturity' of a definition. Maturity is a score with no maximum but with scoring rules that target 100 points per definition. Maturity is broken down this way:
- has a description - up to 50 points depending on # of non empty lines
- has a brief description - 5 points
- has options specified - 5 points
- has terms defined -
- has an author in or above the definition - 5 points \-
- definition specific things: 0.65
- Definition Classes
- VitalDefinition
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nonEmpty: Boolean
- Definition Classes
- RiddlNode
- Annotations
- @deprecatedOverriding()
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- val options: Seq[Definitions.RepositoryOption]
- Definition Classes
- Repository → WithOptions
- val outlets: Seq[Outlet]
- Definition Classes
- Repository → Processor
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val terms: Seq[Term]
- Definition Classes
- Repository → WithTerms
- val types: Seq[Type]
- Definition Classes
- Repository → WithTypes
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated