Package org.osgi.jmx

Class Item

java.lang.Object
org.osgi.jmx.Item

public class Item extends Object
The item class enables the definition of open types in the appropriate interfaces. This class contains a number of methods that make it possible to create open types for CompositeType, TabularType, and ArrayType. The normal creation throws a checked exception, making it impossible to use them in a static initializer. They constructors are also not very suitable for static construction. An Item instance describes an item in a Composite Type. It groups the triplet of name, description, and Open Type. These Item instances allows the definitions of an item to stay together.
  • Constructor Details

    • Item

      public Item(String name, String description, OpenType type, String... restrictions)
      Create a triple of name, description, and type. This triplet is used in the creation of a Composite Type.
      Parameters:
      name - The name of the item.
      description - The description of the item.
      type - The Open Type of this item.
      restrictions - Ignored, contains list of restrictions
  • Method Details

    • tabularType

      public static TabularType tabularType(String name, String description, CompositeType rowType, String... index)
      Create a Tabular Type.
      Parameters:
      name - The name of the Tabular Type.
      description - The description of the Tabular Type.
      rowType - The Open Type for a row
      index - The names of the items that form the index .
      Returns:
      A new Tabular Type composed from the parameters.
      Throws:
      RuntimeException - when the Tabular Type throws an OpenDataException
    • compositeType

      public static CompositeType compositeType(String name, String description, Item... items)
      Create a Composite Type
      Parameters:
      name - The name of the Tabular Type.
      description - The description of the Tabular Type.
      items - The items that describe the composite type.
      Returns:
      a new Composite Type
      Throws:
      RuntimeException - when the Tabular Type throws an OpenDataException
    • arrayType

      public static <T> ArrayType<T> arrayType(int dim, OpenType<T> elementType)
      Return a new Array Type.
      Parameters:
      dim - The dimension
      elementType - The element type
      Returns:
      A new Array Type
    • extend

      public static CompositeType extend(CompositeType parent, String name, String description, Item... items)
      Extend a Composite Type by adding new items. Items can override items in the parent type.
      Parameters:
      parent - The parent type, can be null
      name - The name of the type
      description - The description of the type
      items - The items that should be added/override to the parent type
      Returns:
      A new Composite Type that extends the parent type
      Throws:
      RuntimeException - when an OpenDataException is thrown