Packages

c

molecule

DataModel

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
Serializable, Serializable, Product, Equals, DataModelApi, AnyRef, Any
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. DataModel
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. DataModelApi
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DataModel(maxArity: Int)

Type Members

  1. sealed trait Options[Self, Tpe, BaseTpe] extends AnyRef

    Attribute options.

    Attribute options.

    Definition Classes
    DataModelApi
  2. trait many extends refOptions[many, Set[Long]]
    Definition Classes
    DataModelApi
  3. trait one extends refOptions[one, Long]
    Definition Classes
    DataModelApi
  4. trait oneBigDecimal extends Options[oneBigDecimal, BigDecimal, BigDecimal]
    Definition Classes
    DataModelApi
  5. trait oneBigInt extends Options[oneBigInt, BigInt, BigInt]
    Definition Classes
    DataModelApi
  6. trait oneBoolean extends Options[oneBoolean, Boolean, Boolean]
    Definition Classes
    DataModelApi
  7. trait oneByte extends Options[oneByte, Byte, Byte]
    Definition Classes
    DataModelApi
  8. trait oneChar extends Options[oneChar, Char, Char]
    Definition Classes
    DataModelApi
  9. trait oneDate extends Options[oneDate, Date, Date]
    Definition Classes
    DataModelApi
  10. trait oneDouble extends Options[oneDouble, Double, Double]
    Definition Classes
    DataModelApi
  11. trait oneDuration extends Options[oneDuration, Duration, Duration]
    Definition Classes
    DataModelApi
  12. trait oneFloat extends Options[oneFloat, Float, Float]
    Definition Classes
    DataModelApi
  13. trait oneInstant extends Options[oneInstant, Instant, Instant]
    Definition Classes
    DataModelApi
  14. trait oneInt extends Options[oneInt, Int, Int]
    Definition Classes
    DataModelApi
  15. trait oneLocalDate extends Options[oneLocalDate, LocalDate, LocalDate]
    Definition Classes
    DataModelApi
  16. trait oneLocalDateTime extends Options[oneLocalDateTime, LocalDateTime, LocalDateTime]
    Definition Classes
    DataModelApi
  17. trait oneLocalTime extends Options[oneLocalTime, LocalTime, LocalTime]
    Definition Classes
    DataModelApi
  18. trait oneLong extends Options[oneLong, Long, Long]
    Definition Classes
    DataModelApi
  19. trait oneOffsetDateTime extends Options[oneOffsetDateTime, OffsetDateTime, OffsetDateTime]
    Definition Classes
    DataModelApi
  20. trait oneOffsetTime extends Options[oneOffsetTime, OffsetTime, OffsetTime]
    Definition Classes
    DataModelApi
  21. trait oneShort extends Options[oneShort, Short, Short]
    Definition Classes
    DataModelApi
  22. trait oneString extends stringOptions[oneString, String]
    Definition Classes
    DataModelApi
  23. trait oneURI extends Options[oneURI, URI, URI]
    Definition Classes
    DataModelApi
  24. trait oneUUID extends Options[oneUUID, UUID, UUID]
    Definition Classes
    DataModelApi
  25. trait oneZonedDateTime extends Options[oneZonedDateTime, ZonedDateTime, ZonedDateTime]
    Definition Classes
    DataModelApi
  26. trait refOptions[Self, Tpe] extends Options[Self, Tpe, Long]
    Definition Classes
    DataModelApi
  27. trait setBigDecimal extends Options[setBigDecimal, Set[BigDecimal], BigDecimal]
    Definition Classes
    DataModelApi
  28. trait setBigInt extends Options[setBigInt, Set[BigInt], BigInt]
    Definition Classes
    DataModelApi
  29. trait setBoolean extends Options[setBoolean, Set[Boolean], Boolean]
    Definition Classes
    DataModelApi
  30. trait setByte extends Options[setByte, Set[Byte], Byte]
    Definition Classes
    DataModelApi
  31. trait setChar extends Options[setChar, Set[Char], Char]
    Definition Classes
    DataModelApi
  32. trait setDate extends Options[setDate, Set[Date], Date]
    Definition Classes
    DataModelApi
  33. trait setDouble extends Options[setDouble, Set[Double], Double]
    Definition Classes
    DataModelApi
  34. trait setDuration extends Options[setDuration, Set[Duration], Duration]
    Definition Classes
    DataModelApi
  35. trait setFloat extends Options[setFloat, Set[Float], Float]
    Definition Classes
    DataModelApi
  36. trait setInstant extends Options[setInstant, Set[Instant], Instant]
    Definition Classes
    DataModelApi
  37. trait setInt extends Options[setInt, Set[Int], Int]
    Definition Classes
    DataModelApi
  38. trait setLocalDate extends Options[setLocalDate, Set[LocalDate], LocalDate]
    Definition Classes
    DataModelApi
  39. trait setLocalDateTime extends Options[setLocalDateTime, Set[LocalDateTime], LocalDateTime]
    Definition Classes
    DataModelApi
  40. trait setLocalTime extends Options[setLocalTime, Set[LocalTime], LocalTime]
    Definition Classes
    DataModelApi
  41. trait setLong extends Options[setLong, Set[Long], Long]
    Definition Classes
    DataModelApi
  42. trait setOffsetDateTime extends Options[setOffsetDateTime, Set[OffsetDateTime], OffsetDateTime]
    Definition Classes
    DataModelApi
  43. trait setOffsetTime extends Options[setOffsetTime, Set[OffsetTime], OffsetTime]
    Definition Classes
    DataModelApi
  44. trait setShort extends Options[setShort, Set[Short], Short]
    Definition Classes
    DataModelApi
  45. trait setString extends stringOptions[oneString, Set[String]]
    Definition Classes
    DataModelApi
  46. trait setURI extends Options[setURI, Set[URI], URI]
    Definition Classes
    DataModelApi
  47. trait setUUID extends Options[setUUID, Set[UUID], UUID]
    Definition Classes
    DataModelApi
  48. trait setZonedDateTime extends Options[setZonedDateTime, Set[ZonedDateTime], ZonedDateTime]
    Definition Classes
    DataModelApi
  49. trait stringOptions[Self, Tpe] extends Options[Self, Tpe, String]
    Definition Classes
    DataModelApi

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  8. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  9. val maxArity: Int
  10. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  12. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  13. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  14. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. object many extends many
    Definition Classes
    DataModelApi
  18. object one extends one
    Definition Classes
    DataModelApi
  19. object oneBigDecimal extends oneBigDecimal
    Definition Classes
    DataModelApi
  20. object oneBigInt extends oneBigInt
    Definition Classes
    DataModelApi
  21. object oneBoolean extends oneBoolean
    Definition Classes
    DataModelApi
  22. object oneByte extends oneByte
    Definition Classes
    DataModelApi
  23. object oneChar extends oneChar
    Definition Classes
    DataModelApi
  24. object oneDate extends oneDate
    Definition Classes
    DataModelApi
  25. object oneDouble extends oneDouble
    Definition Classes
    DataModelApi
  26. object oneDuration extends oneDuration
    Definition Classes
    DataModelApi
  27. object oneFloat extends oneFloat
    Definition Classes
    DataModelApi
  28. object oneInstant extends oneInstant
    Definition Classes
    DataModelApi
  29. object oneInt extends oneInt
    Definition Classes
    DataModelApi
  30. object oneLocalDate extends oneLocalDate
    Definition Classes
    DataModelApi
  31. object oneLocalDateTime extends oneLocalDateTime
    Definition Classes
    DataModelApi
  32. object oneLocalTime extends oneLocalTime
    Definition Classes
    DataModelApi
  33. object oneLong extends oneLong
    Definition Classes
    DataModelApi
  34. object oneOffsetDateTime extends oneOffsetDateTime
    Definition Classes
    DataModelApi
  35. object oneOffsetTime extends oneOffsetTime
    Definition Classes
    DataModelApi
  36. object oneShort extends oneShort
    Definition Classes
    DataModelApi
  37. object oneString extends oneString
    Definition Classes
    DataModelApi
  38. object oneURI extends oneURI
    Definition Classes
    DataModelApi
  39. object oneUUID extends oneUUID
    Definition Classes
    DataModelApi
  40. object oneZonedDateTime extends oneZonedDateTime
    Definition Classes
    DataModelApi
  41. object setBigDecimal extends setBigDecimal
    Definition Classes
    DataModelApi
  42. object setBigInt extends setBigInt
    Definition Classes
    DataModelApi
  43. object setBoolean extends setBoolean
    Definition Classes
    DataModelApi
  44. object setByte extends setByte
    Definition Classes
    DataModelApi
  45. object setChar extends setChar
    Definition Classes
    DataModelApi
  46. object setDate extends setDate
    Definition Classes
    DataModelApi
  47. object setDouble extends setDouble
    Definition Classes
    DataModelApi
  48. object setDuration extends setDuration
    Definition Classes
    DataModelApi
  49. object setFloat extends setFloat
    Definition Classes
    DataModelApi
  50. object setInstant extends setInstant
    Definition Classes
    DataModelApi
  51. object setInt extends setInt
    Definition Classes
    DataModelApi
  52. object setLocalDate extends setLocalDate
    Definition Classes
    DataModelApi
  53. object setLocalDateTime extends setLocalDateTime
    Definition Classes
    DataModelApi
  54. object setLocalTime extends setLocalTime
    Definition Classes
    DataModelApi
  55. object setLong extends setLong
    Definition Classes
    DataModelApi
  56. object setOffsetDateTime extends setOffsetDateTime
    Definition Classes
    DataModelApi
  57. object setOffsetTime extends setOffsetTime
    Definition Classes
    DataModelApi
  58. object setShort extends setShort
    Definition Classes
    DataModelApi
  59. object setString extends setString
    Definition Classes
    DataModelApi
  60. object setURI extends setURI
    Definition Classes
    DataModelApi
  61. object setUUID extends setUUID
    Definition Classes
    DataModelApi
  62. object setZonedDateTime extends setZonedDateTime
    Definition Classes
    DataModelApi

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from DataModelApi

Inherited from AnyRef

Inherited from Any

Options

Ungrouped