case class DataModel(maxArity: Int) extends DataModelApi with Product with Serializable
Data Model DSL.
Define a Domain Data Model in a data model file.
For small projects, the schema can be defined without partition definitions where
all namespaces reside in a default tacit partition:
package path.to.your.project import molecule.data.model._ // import data model DSL object Seattle extends DataModel(8) { // data model object with input/output arity trait Person { // Namespace val name = oneString.fulltext // String attribute definition with fulltext search val age = oneInt // Int attribute definition } // Additional namespaces... }
For larger projects, it is recommended to group namespaces in partitions:
package path.to.your.project import molecule.data.model._ object Seattle extends DataModel(15) { object customer { trait Person { val name = oneString.fulltext val age = oneInt val address = one[Address] val bought = many[products.Item] } trait Address { val street = oneString.fulltext val city = oneInt } // ..more namespaces in the `customer` partition } object products { trait Item { val title = oneString val inStock = oneInt } // ..more namespaces in the `products` partition } // Additional partitions... }
- Source
- DataModel.scala
Linear Supertypes
Type Hierarchy
Ordering
- Grouped
- Alphabetic
- By Inheritance
Inherited
- DataModel
- Serializable
- Product
- Equals
- DataModelApi
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Instance Constructors
- new DataModel(maxArity: Int)
Type Members
- sealed trait Options[Self, Tpe, BaseTpe] extends AnyRef
Attribute options.
Attribute options.
- Definition Classes
- DataModelApi
- trait many extends refOptions[many, Set[Long]]
- Definition Classes
- DataModelApi
- trait one extends refOptions[one, Long]
- Definition Classes
- DataModelApi
- trait oneBigDecimal extends Options[oneBigDecimal, BigDecimal, BigDecimal]
- Definition Classes
- DataModelApi
- trait oneBigInt extends Options[oneBigInt, BigInt, BigInt]
- Definition Classes
- DataModelApi
- trait oneBoolean extends Options[oneBoolean, Boolean, Boolean]
- Definition Classes
- DataModelApi
- trait oneByte extends Options[oneByte, Byte, Byte]
- Definition Classes
- DataModelApi
- trait oneChar extends Options[oneChar, Char, Char]
- Definition Classes
- DataModelApi
- trait oneDate extends Options[oneDate, Date, Date]
- Definition Classes
- DataModelApi
- trait oneDouble extends Options[oneDouble, Double, Double]
- Definition Classes
- DataModelApi
- trait oneDuration extends Options[oneDuration, Duration, Duration]
- Definition Classes
- DataModelApi
- trait oneFloat extends Options[oneFloat, Float, Float]
- Definition Classes
- DataModelApi
- trait oneInstant extends Options[oneInstant, Instant, Instant]
- Definition Classes
- DataModelApi
- trait oneInt extends Options[oneInt, Int, Int]
- Definition Classes
- DataModelApi
- trait oneLocalDate extends Options[oneLocalDate, LocalDate, LocalDate]
- Definition Classes
- DataModelApi
- trait oneLocalDateTime extends Options[oneLocalDateTime, LocalDateTime, LocalDateTime]
- Definition Classes
- DataModelApi
- trait oneLocalTime extends Options[oneLocalTime, LocalTime, LocalTime]
- Definition Classes
- DataModelApi
- trait oneLong extends Options[oneLong, Long, Long]
- Definition Classes
- DataModelApi
- trait oneOffsetDateTime extends Options[oneOffsetDateTime, OffsetDateTime, OffsetDateTime]
- Definition Classes
- DataModelApi
- trait oneOffsetTime extends Options[oneOffsetTime, OffsetTime, OffsetTime]
- Definition Classes
- DataModelApi
- trait oneShort extends Options[oneShort, Short, Short]
- Definition Classes
- DataModelApi
- trait oneString extends stringOptions[oneString, String]
- Definition Classes
- DataModelApi
- trait oneURI extends Options[oneURI, URI, URI]
- Definition Classes
- DataModelApi
- trait oneUUID extends Options[oneUUID, UUID, UUID]
- Definition Classes
- DataModelApi
- trait oneZonedDateTime extends Options[oneZonedDateTime, ZonedDateTime, ZonedDateTime]
- Definition Classes
- DataModelApi
- trait refOptions[Self, Tpe] extends Options[Self, Tpe, Long]
- Definition Classes
- DataModelApi
- trait setBigDecimal extends Options[setBigDecimal, Set[BigDecimal], BigDecimal]
- Definition Classes
- DataModelApi
- trait setBigInt extends Options[setBigInt, Set[BigInt], BigInt]
- Definition Classes
- DataModelApi
- trait setBoolean extends Options[setBoolean, Set[Boolean], Boolean]
- Definition Classes
- DataModelApi
- trait setByte extends Options[setByte, Set[Byte], Byte]
- Definition Classes
- DataModelApi
- trait setChar extends Options[setChar, Set[Char], Char]
- Definition Classes
- DataModelApi
- trait setDate extends Options[setDate, Set[Date], Date]
- Definition Classes
- DataModelApi
- trait setDouble extends Options[setDouble, Set[Double], Double]
- Definition Classes
- DataModelApi
- trait setDuration extends Options[setDuration, Set[Duration], Duration]
- Definition Classes
- DataModelApi
- trait setFloat extends Options[setFloat, Set[Float], Float]
- Definition Classes
- DataModelApi
- trait setInstant extends Options[setInstant, Set[Instant], Instant]
- Definition Classes
- DataModelApi
- trait setInt extends Options[setInt, Set[Int], Int]
- Definition Classes
- DataModelApi
- trait setLocalDate extends Options[setLocalDate, Set[LocalDate], LocalDate]
- Definition Classes
- DataModelApi
- trait setLocalDateTime extends Options[setLocalDateTime, Set[LocalDateTime], LocalDateTime]
- Definition Classes
- DataModelApi
- trait setLocalTime extends Options[setLocalTime, Set[LocalTime], LocalTime]
- Definition Classes
- DataModelApi
- trait setLong extends Options[setLong, Set[Long], Long]
- Definition Classes
- DataModelApi
- trait setOffsetDateTime extends Options[setOffsetDateTime, Set[OffsetDateTime], OffsetDateTime]
- Definition Classes
- DataModelApi
- trait setOffsetTime extends Options[setOffsetTime, Set[OffsetTime], OffsetTime]
- Definition Classes
- DataModelApi
- trait setShort extends Options[setShort, Set[Short], Short]
- Definition Classes
- DataModelApi
- trait setString extends stringOptions[oneString, Set[String]]
- Definition Classes
- DataModelApi
- trait setURI extends Options[setURI, Set[URI], URI]
- Definition Classes
- DataModelApi
- trait setUUID extends Options[setUUID, Set[UUID], UUID]
- Definition Classes
- DataModelApi
- trait setZonedDateTime extends Options[setZonedDateTime, Set[ZonedDateTime], ZonedDateTime]
- Definition Classes
- DataModelApi
- trait stringOptions[Self, Tpe] extends Options[Self, Tpe, String]
- Definition Classes
- DataModelApi
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
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val maxArity: Int
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- 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])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object many extends many
- Definition Classes
- DataModelApi
- object one extends one
- Definition Classes
- DataModelApi
- object oneBigDecimal extends oneBigDecimal
- Definition Classes
- DataModelApi
- object oneBigInt extends oneBigInt
- Definition Classes
- DataModelApi
- object oneBoolean extends oneBoolean
- Definition Classes
- DataModelApi
- object oneByte extends oneByte
- Definition Classes
- DataModelApi
- object oneChar extends oneChar
- Definition Classes
- DataModelApi
- object oneDate extends oneDate
- Definition Classes
- DataModelApi
- object oneDouble extends oneDouble
- Definition Classes
- DataModelApi
- object oneDuration extends oneDuration
- Definition Classes
- DataModelApi
- object oneFloat extends oneFloat
- Definition Classes
- DataModelApi
- object oneInstant extends oneInstant
- Definition Classes
- DataModelApi
- object oneInt extends oneInt
- Definition Classes
- DataModelApi
- object oneLocalDate extends oneLocalDate
- Definition Classes
- DataModelApi
- object oneLocalDateTime extends oneLocalDateTime
- Definition Classes
- DataModelApi
- object oneLocalTime extends oneLocalTime
- Definition Classes
- DataModelApi
- object oneLong extends oneLong
- Definition Classes
- DataModelApi
- object oneOffsetDateTime extends oneOffsetDateTime
- Definition Classes
- DataModelApi
- object oneOffsetTime extends oneOffsetTime
- Definition Classes
- DataModelApi
- object oneShort extends oneShort
- Definition Classes
- DataModelApi
- object oneString extends oneString
- Definition Classes
- DataModelApi
- object oneURI extends oneURI
- Definition Classes
- DataModelApi
- object oneUUID extends oneUUID
- Definition Classes
- DataModelApi
- object oneZonedDateTime extends oneZonedDateTime
- Definition Classes
- DataModelApi
- object setBigDecimal extends setBigDecimal
- Definition Classes
- DataModelApi
- object setBigInt extends setBigInt
- Definition Classes
- DataModelApi
- object setBoolean extends setBoolean
- Definition Classes
- DataModelApi
- object setByte extends setByte
- Definition Classes
- DataModelApi
- object setChar extends setChar
- Definition Classes
- DataModelApi
- object setDate extends setDate
- Definition Classes
- DataModelApi
- object setDouble extends setDouble
- Definition Classes
- DataModelApi
- object setDuration extends setDuration
- Definition Classes
- DataModelApi
- object setFloat extends setFloat
- Definition Classes
- DataModelApi
- object setInstant extends setInstant
- Definition Classes
- DataModelApi
- object setInt extends setInt
- Definition Classes
- DataModelApi
- object setLocalDate extends setLocalDate
- Definition Classes
- DataModelApi
- object setLocalDateTime extends setLocalDateTime
- Definition Classes
- DataModelApi
- object setLocalTime extends setLocalTime
- Definition Classes
- DataModelApi
- object setLong extends setLong
- Definition Classes
- DataModelApi
- object setOffsetDateTime extends setOffsetDateTime
- Definition Classes
- DataModelApi
- object setOffsetTime extends setOffsetTime
- Definition Classes
- DataModelApi
- object setShort extends setShort
- Definition Classes
- DataModelApi
- object setString extends setString
- Definition Classes
- DataModelApi
- object setURI extends setURI
- Definition Classes
- DataModelApi
- object setUUID extends setUUID
- Definition Classes
- DataModelApi
- object setZonedDateTime extends setZonedDateTime
- Definition Classes
- DataModelApi
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)