Package org.osgi.jmx

Class Item


  • public class Item
    extends java.lang.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 Summary

      Constructors 
      Constructor Description
      Item​(java.lang.String name, java.lang.String description, javax.management.openmbean.OpenType type, java.lang.String... restrictions)
      Create a triple of name, description, and type.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> javax.management.openmbean.ArrayType<T> arrayType​(int dim, javax.management.openmbean.OpenType<T> elementType)
      Return a new Array Type.
      static javax.management.openmbean.CompositeType compositeType​(java.lang.String name, java.lang.String description, Item... items)
      Create a Composite Type
      static javax.management.openmbean.CompositeType extend​(javax.management.openmbean.CompositeType parent, java.lang.String name, java.lang.String description, Item... items)
      Extend a Composite Type by adding new items.
      static javax.management.openmbean.TabularType tabularType​(java.lang.String name, java.lang.String description, javax.management.openmbean.CompositeType rowType, java.lang.String... index)
      Create a Tabular Type.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Item

        public Item​(java.lang.String name,
                    java.lang.String description,
                    javax.management.openmbean.OpenType type,
                    java.lang.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 Detail

      • tabularType

        public static javax.management.openmbean.TabularType tabularType​(java.lang.String name,
                                                                         java.lang.String description,
                                                                         javax.management.openmbean.CompositeType rowType,
                                                                         java.lang.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:
        java.lang.RuntimeException - when the Tabular Type throws an OpenDataException
      • compositeType

        public static javax.management.openmbean.CompositeType compositeType​(java.lang.String name,
                                                                             java.lang.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:
        java.lang.RuntimeException - when the Tabular Type throws an OpenDataException
      • arrayType

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

        public static javax.management.openmbean.CompositeType extend​(javax.management.openmbean.CompositeType parent,
                                                                      java.lang.String name,
                                                                      java.lang.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:
        java.lang.RuntimeException - when an OpenDataException is thrown