Packages

  • package root
    Definition Classes
    root
  • package domino

    Contains Domino, a lightweight Scala library for writing elegant OSGi bundle activators.

    Contains Domino, a lightweight Scala library for writing elegant OSGi bundle activators.

    For getting started, please see DominoActivator, the main entry point to the Domino DSL. Each sub package contains functionality for a specific part of the DSL.

    Definition Classes
    root
  • package scala_osgi_metatype

    Contains Scala interfaces, adapters and builders for easily building OSGi Metatype descriptions.

    Contains Scala interfaces, adapters and builders for easily building OSGi Metatype descriptions. OSGi Metatype descriptions are very well suited for quickly providing administration user interfaces.

    You probably want to check out the builders.

    Definition Classes
    domino
    Note

    I created totally new Scala interfaces and adapters instead of directly implementing the Java interfaces of the OSGi Metatype API in order to prevent name clashes and confusion about what method to call. Scala Swing does it the same way, I guess for the same reasons.

  • package builders

    Contains builder objects for easily creating Scala OSGi metatypes.

    Contains builder objects for easily creating Scala OSGi metatypes.

    Example

    The following example demonstrates how you can describe configuration parameters for a service.

    import domino.scala_osgi_metatype.builders._
    
    val myObjectClass = ObjectClass(
      id = "domino.my_service",
      name = "My configurable service",
      requiredAttributes = List(
        ElementaryAttribute[Int](id = "size", name = "Size", default = Some(5)),
        ElementaryAttribute[String](id = "user", name = "User", default = Some("root"))
      )
    )
    Definition Classes
    scala_osgi_metatype
  • ElementaryAttribute
  • ListAttribute
  • ObjectClass
  • ObjectClassDefinitionConvenience
  • SingleMetaTypeProvider

object ListAttribute

Convenient builder for list attribute definitions without advanced validation (type validation is done).

Examples

// Minimum
ListAttribute[String](id = "allowedFruits")

// Maximum
ListAttribute[String](
  id = "allowedFruits",
  name = "Allowed fruits",
  description = "These fruits are allowed",
  default = List("apple", "orange"),
  options = List(
    "Apple" -> "apple",
    "Orange" -> "orange",
    "Plum" -> "plum",
    "Banana" -> "banana"
)
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ListAttribute
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. def apply[T](id: String, name: String = null, description: String = "", default: Traversable[T] = null, options: Traversable[(String, T)] = Nil, sizeLimit: Integer = null)(implicit arg0: ClassTag[T]): ListAttributeDefinition[T] { ... /* 8 definitions in type refinement */ }

    Builds a list attribute definition.

    Builds a list attribute definition.

    T

    Type of the elements

    id

    Unique identity for the attribute

    name

    Optional name of the attribute

    description

    Optional description of the attribute

    default

    Optional default for the attribute

    options

    Optional list of possible option labels and values that the attribute can take

    sizeLimit

    Optional maximum number of allowed values.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  17. def toString(): String
    Definition Classes
    AnyRef → Any
  18. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped