trait DataModelApi extends AnyRef
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
- DataModelApi.scala
Linear Supertypes
Known Subclasses
Type Hierarchy
Ordering
- Grouped
- Alphabetic
- By Inheritance
Inherited
- DataModelApi
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Type Members
-
sealed
trait
Options[Self, Tpe, BaseTpe] extends Requierable
Attribute options.
- trait Requierable extends AnyRef
- trait Validations[Self, BaseTpe] extends AnyRef
- trait arrayByte extends Options[arrayByte, Seq[Byte], Byte] with Validations[oneByte, Byte]
- trait many extends refOptions[many]
- trait mapBigDecimal extends Options[mapBigDecimal, Map[String, BigDecimal], BigDecimal]
- trait mapBigInt extends Options[mapBigInt, Map[String, BigInt], BigInt]
- trait mapBoolean extends Options[mapBoolean, Map[String, Boolean], Boolean]
- trait mapByte extends Options[mapByte, Map[String, Byte], Byte]
- trait mapChar extends Options[mapChar, Map[String, Char], Char]
- trait mapDate extends Options[mapDate, Map[String, Date], Date]
- trait mapDouble extends Options[mapDouble, Map[String, Double], Double]
- trait mapDuration extends Options[mapDuration, Map[String, Duration], Duration]
- trait mapFloat extends Options[mapFloat, Map[String, Float], Float]
- trait mapInstant extends Options[mapInstant, Map[String, Instant], Instant]
- trait mapInt extends Options[mapInt, Map[String, Int], Int]
- trait mapLocalDate extends Options[mapLocalDate, Map[String, LocalDate], LocalDate]
- trait mapLocalDateTime extends Options[mapLocalDateTime, Map[String, LocalDateTime], LocalDateTime]
- trait mapLocalTime extends Options[mapLocalTime, Map[String, LocalTime], LocalTime]
- trait mapLong extends Options[mapLong, Map[String, Long], Long]
- trait mapOffsetDateTime extends Options[mapOffsetDateTime, Map[String, OffsetDateTime], OffsetDateTime]
- trait mapOffsetTime extends Options[mapOffsetTime, Map[String, OffsetTime], OffsetTime]
- trait mapShort extends Options[mapShort, Map[String, Short], Short]
- trait mapString extends stringOptions[mapString, Map[String, String]]
- trait mapURI extends Options[mapURI, Map[String, URI], URI]
- trait mapUUID extends Options[mapUUID, Map[String, UUID], UUID]
- trait mapZonedDateTime extends Options[mapZonedDateTime, Map[String, ZonedDateTime], ZonedDateTime]
- trait one extends refOptions[one]
- trait oneBigDecimal extends Options[oneBigDecimal, BigDecimal, BigDecimal] with Validations[oneBigDecimal, BigDecimal]
- trait oneBigInt extends Options[oneBigInt, BigInt, BigInt] with Validations[oneBigInt, BigInt]
- trait oneBoolean extends Options[oneBoolean, Boolean, Boolean] with Validations[oneBoolean, Boolean]
- trait oneByte extends Options[oneByte, Byte, Byte] with Validations[oneByte, Byte]
- trait oneChar extends Options[oneChar, Char, Char] with Validations[oneChar, Char]
- trait oneDate extends Options[oneDate, Date, Date] with Validations[oneDate, Date]
- trait oneDouble extends Options[oneDouble, Double, Double] with Validations[oneDouble, Double]
- trait oneDuration extends Options[oneDuration, Duration, Duration] with Validations[oneDuration, Duration]
- trait oneFloat extends Options[oneFloat, Float, Float] with Validations[oneFloat, Float]
- trait oneInstant extends Options[oneInstant, Instant, Instant] with Validations[oneInstant, Instant]
- trait oneInt extends Options[oneInt, Int, Int] with Validations[oneInt, Int]
- trait oneLocalDate extends Options[oneLocalDate, LocalDate, LocalDate] with Validations[oneLocalDate, LocalDate]
- trait oneLocalDateTime extends Options[oneLocalDateTime, LocalDateTime, LocalDateTime] with Validations[oneLocalDateTime, LocalDateTime]
- trait oneLocalTime extends Options[oneLocalTime, LocalTime, LocalTime] with Validations[oneLocalTime, LocalTime]
- trait oneLong extends Options[oneLong, Long, Long] with Validations[oneLong, Long]
- trait oneOffsetDateTime extends Options[oneOffsetDateTime, OffsetDateTime, OffsetDateTime] with Validations[oneOffsetDateTime, OffsetDateTime]
- trait oneOffsetTime extends Options[oneOffsetTime, OffsetTime, OffsetTime] with Validations[oneOffsetTime, OffsetTime]
- trait oneShort extends Options[oneShort, Short, Short] with Validations[oneShort, Short]
- trait oneString extends stringOptions[oneString, String] with Validations[oneString, String]
- trait oneURI extends Options[oneURI, URI, URI] with Validations[oneURI, URI]
- trait oneUUID extends Options[oneUUID, UUID, UUID] with Validations[oneUUID, UUID]
- trait oneZonedDateTime extends Options[oneZonedDateTime, ZonedDateTime, ZonedDateTime] with Validations[oneZonedDateTime, ZonedDateTime]
- trait refOptions[Self] extends Requierable
- trait seqBigDecimal extends Options[seqBigDecimal, Seq[BigDecimal], BigDecimal] with Validations[oneBigDecimal, BigDecimal]
- trait seqBigInt extends Options[seqBigInt, Seq[BigInt], BigInt] with Validations[oneBigInt, BigInt]
- trait seqBoolean extends Options[seqBoolean, Seq[Boolean], Boolean] with Validations[oneBoolean, Boolean]
- trait seqChar extends Options[seqChar, Seq[Char], Char] with Validations[oneChar, Char]
- trait seqDate extends Options[seqDate, Seq[Date], Date] with Validations[oneDate, Date]
- trait seqDouble extends Options[seqDouble, Seq[Double], Double] with Validations[oneDouble, Double]
- trait seqDuration extends Options[seqDuration, Seq[Duration], Duration] with Validations[oneDuration, Duration]
- trait seqFloat extends Options[seqFloat, Seq[Float], Float] with Validations[oneFloat, Float]
- trait seqInstant extends Options[seqInstant, Seq[Instant], Instant] with Validations[oneInstant, Instant]
- trait seqInt extends Options[seqInt, Seq[Int], Int] with Validations[oneInt, Int]
- trait seqLocalDate extends Options[seqLocalDate, Seq[LocalDate], LocalDate] with Validations[oneLocalDate, LocalDate]
- trait seqLocalDateTime extends Options[seqLocalDateTime, Seq[LocalDateTime], LocalDateTime] with Validations[oneLocalDateTime, LocalDateTime]
- trait seqLocalTime extends Options[seqLocalTime, Seq[LocalTime], LocalTime] with Validations[oneLocalTime, LocalTime]
- trait seqLong extends Options[seqLong, Seq[Long], Long] with Validations[oneLong, Long]
- trait seqOffsetDateTime extends Options[seqOffsetDateTime, Seq[OffsetDateTime], OffsetDateTime] with Validations[oneOffsetDateTime, OffsetDateTime]
- trait seqOffsetTime extends Options[seqOffsetTime, Seq[OffsetTime], OffsetTime] with Validations[oneOffsetTime, OffsetTime]
- trait seqShort extends Options[seqShort, Seq[Short], Short] with Validations[oneShort, Short]
- trait seqString extends stringOptions[seqString, Seq[String]] with Validations[oneString, String]
- trait seqURI extends Options[seqURI, Seq[URI], URI] with Validations[oneURI, URI]
- trait seqUUID extends Options[seqUUID, Seq[UUID], UUID] with Validations[oneUUID, UUID]
- trait seqZonedDateTime extends Options[seqZonedDateTime, Seq[ZonedDateTime], ZonedDateTime] with Validations[oneZonedDateTime, ZonedDateTime]
- trait setBigDecimal extends Options[setBigDecimal, Set[BigDecimal], BigDecimal] with Validations[oneBigDecimal, BigDecimal]
- trait setBigInt extends Options[setBigInt, Set[BigInt], BigInt] with Validations[oneBigInt, BigInt]
- trait setBoolean extends Options[setBoolean, Set[Boolean], Boolean] with Validations[oneBoolean, Boolean]
- trait setByte extends Options[setByte, Set[Byte], Byte] with Validations[oneByte, Byte]
- trait setChar extends Options[setChar, Set[Char], Char] with Validations[oneChar, Char]
- trait setDate extends Options[setDate, Set[Date], Date] with Validations[oneDate, Date]
- trait setDouble extends Options[setDouble, Set[Double], Double] with Validations[oneDouble, Double]
- trait setDuration extends Options[setDuration, Set[Duration], Duration] with Validations[oneDuration, Duration]
- trait setFloat extends Options[setFloat, Set[Float], Float] with Validations[oneFloat, Float]
- trait setInstant extends Options[setInstant, Set[Instant], Instant] with Validations[oneInstant, Instant]
- trait setInt extends Options[setInt, Set[Int], Int] with Validations[oneInt, Int]
- trait setLocalDate extends Options[setLocalDate, Set[LocalDate], LocalDate] with Validations[oneLocalDate, LocalDate]
- trait setLocalDateTime extends Options[setLocalDateTime, Set[LocalDateTime], LocalDateTime] with Validations[oneLocalDateTime, LocalDateTime]
- trait setLocalTime extends Options[setLocalTime, Set[LocalTime], LocalTime] with Validations[oneLocalTime, LocalTime]
- trait setLong extends Options[setLong, Set[Long], Long] with Validations[oneLong, Long]
- trait setOffsetDateTime extends Options[setOffsetDateTime, Set[OffsetDateTime], OffsetDateTime] with Validations[oneOffsetDateTime, OffsetDateTime]
- trait setOffsetTime extends Options[setOffsetTime, Set[OffsetTime], OffsetTime] with Validations[oneOffsetTime, OffsetTime]
- trait setShort extends Options[setShort, Set[Short], Short] with Validations[oneShort, Short]
- trait setString extends stringOptions[setString, Set[String]] with Validations[oneString, String]
- trait setURI extends Options[setURI, Set[URI], URI] with Validations[oneURI, URI]
- trait setUUID extends Options[setUUID, Set[UUID], UUID] with Validations[oneUUID, UUID]
- trait setZonedDateTime extends Options[setZonedDateTime, Set[ZonedDateTime], ZonedDateTime] with Validations[oneZonedDateTime, ZonedDateTime]
- trait stringOptions[Self, Tpe] extends Options[Self, Tpe, String]
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( ... ) @native() @IntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- object arrayByte extends arrayByte
- object many extends many
- object mapBigDecimal extends mapBigDecimal
- object mapBigInt extends mapBigInt
- object mapBoolean extends mapBoolean
- object mapByte extends mapByte
- object mapChar extends mapChar
- object mapDate extends mapDate
- object mapDouble extends mapDouble
- object mapDuration extends mapDuration
- object mapFloat extends mapFloat
- object mapInstant extends mapInstant
- object mapInt extends mapInt
- object mapLocalDate extends mapLocalDate
- object mapLocalDateTime extends mapLocalDateTime
- object mapLocalTime extends mapLocalTime
- object mapLong extends mapLong
- object mapOffsetDateTime extends mapOffsetDateTime
- object mapOffsetTime extends mapOffsetTime
- object mapShort extends mapShort
- object mapString extends mapString
- object mapURI extends mapURI
- object mapUUID extends mapUUID
- object mapZonedDateTime extends mapZonedDateTime
- object one extends one
- object oneBigDecimal extends oneBigDecimal
- object oneBigInt extends oneBigInt
- object oneBoolean extends oneBoolean
- object oneByte extends oneByte
- object oneChar extends oneChar
- object oneDate extends oneDate
- object oneDouble extends oneDouble
- object oneDuration extends oneDuration
- object oneFloat extends oneFloat
- object oneInstant extends oneInstant
- object oneInt extends oneInt
- object oneLocalDate extends oneLocalDate
- object oneLocalDateTime extends oneLocalDateTime
- object oneLocalTime extends oneLocalTime
- object oneLong extends oneLong
- object oneOffsetDateTime extends oneOffsetDateTime
- object oneOffsetTime extends oneOffsetTime
- object oneShort extends oneShort
- object oneString extends oneString
- object oneURI extends oneURI
- object oneUUID extends oneUUID
- object oneZonedDateTime extends oneZonedDateTime
- object seqBigDecimal extends seqBigDecimal
- object seqBigInt extends seqBigInt
- object seqBoolean extends seqBoolean
- object seqChar extends seqChar
- object seqDate extends seqDate
- object seqDouble extends seqDouble
- object seqDuration extends seqDuration
- object seqFloat extends seqFloat
- object seqInstant extends seqInstant
- object seqInt extends seqInt
- object seqLocalDate extends seqLocalDate
- object seqLocalDateTime extends seqLocalDateTime
- object seqLocalTime extends seqLocalTime
- object seqLong extends seqLong
- object seqOffsetDateTime extends seqOffsetDateTime
- object seqOffsetTime extends seqOffsetTime
- object seqShort extends seqShort
- object seqString extends seqString
- object seqURI extends seqURI
- object seqUUID extends seqUUID
- object seqZonedDateTime extends seqZonedDateTime
- object setBigDecimal extends setBigDecimal
- object setBigInt extends setBigInt
- object setBoolean extends setBoolean
- object setByte extends setByte
- object setChar extends setChar
- object setDate extends setDate
- object setDouble extends setDouble
- object setDuration extends setDuration
- object setFloat extends setFloat
- object setInstant extends setInstant
- object setInt extends setInt
- object setLocalDate extends setLocalDate
- object setLocalDateTime extends setLocalDateTime
- object setLocalTime extends setLocalTime
- object setLong extends setLong
- object setOffsetDateTime extends setOffsetDateTime
- object setOffsetTime extends setOffsetTime
- object setShort extends setShort
- object setString extends setString
- object setURI extends setURI
- object setUUID extends setUUID
- object setZonedDateTime extends setZonedDateTime
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated