Rational Developer for System z, Versión 7.6

Obtener las listas de categorías, propiedades e instancias de categoría

Este ejemplo muestra cómo obtener programáticamente la lista de categorías y propiedades registradas. Actualmente se pueden obtener los nombres de las categorías y propiedades registradas. Para cada categoría, se pueden obtener las instancias de esa categoría y los valores de propiedad de cada instancia.

Escenario de ejemplo

Para recuperar información sobre las categorías, propiedades e instancias, seleccione la acción Ejemplos de API > Información de propiedades.

Imagen de listProperties

Para cada categoría registrada, el nombre de la categoría, las propiedades de la categoría y las instancias de la categoría se visualizan en la salida estándar asociada al entorno de trabajo. Esto puede encontrarse en la ventana DOS desde la que se inició el entorno de trabajo o en la vista Consola del entorno de trabajo hospedante en el caso del entorno de trabajo de tiempo de ejecución.

Nota: La salida estándar de un entorno de trabajo iniciado con el icono Eclipse no puede ser visible según los valores de tiempo de ejecución para el entorno de trabajo.

Imagen de listPropertiesResults

Recorrido por el código de ejemplo

Recuperar categorías registradas

El fragmento de código siguiente de la clase ListPropertiesAction muestra cómo recuperar las categorías registradas:
  
ZOSPropertyGroupManager manager = ZOSPropertyGroupManager.getZOSPropertyGroupManager();
// Recuperar categorías registradas
List<ICategory> categories = manager.getCategories();

Empieza utilizando la clase ZOSPropertyGroupManager, obtenida mediante el método getZOSPropertyGroupManager de la clase ZOSPropertyGroupManager para recuperar los objetos ICategory que representan las categorías registradas. Las categorías registradas también se pueden obtener utilizando la calse ( LocalPropertyGroupManager) ya que ambos gestores comparten el mismo punto de ampliación de Eclipse para registrar las propiedades.

Utilizar objetos de categoría

El fragmento de código siguiente de la clase ListPropertiesAction muestra cómo utilizar objetos de ICategory:
 
for (ICategory category : categories) {
  System.out.println("---------------");
  System.out.println("Category: " + category.getName());
  // Recuperar las propiedades registradas para esta categoría.
  List<IPropertyInfo> infos = category.getPropertyInformation();
  for (IPropertyInfo info : infos) {
    System.out.println("  Property: " + info.getName());
  }
  // Recuperar instancias de categoría para cada categoría registrada e
  // imprimir las propiedades y los valores para cada instancia.
  List<ICategoryInstance> instances = category.getInstances();
  for (ICategoryInstance instance : instances) {
    System.out.println("  Instance: ");
    List<IProperty> properties = instance.getProperties();
    for (IProperty property : properties) {
    System.out.println("    ----");
    System.out.println("    Property name: " + property.getName());
    System.out.println("    Property value: " + property.getValue());
  }
}

Cada categoría tiene un nombre y permite la recuperación de objetos IPropertyInfo que tendrán los nombres de las propiedades registradas para esa categoría.

Cada categoría permite recuperar objetos ICategoryInstance que albergan los valores de propiedad. Finalmente, los objetos IProperty recuperados de un objeto ICategoryInstance tienen el nombre de la propiedad y del valor de propiedad.

El elemento de menú se aporta al entorno de trabajo a través de un conjunto de acciones de Eclipse:
  <extension
         id="com.ibm.ftt.api.samples.actionSets"
         name="%apiSample.actionSets"
         point="org.eclipse.ui.actionSets">
      <actionSet label="com.ibm.ftt.api.samples.actionSet1"
            description="Action set for the API samples"
            visible="true"
            id="com.ibm.ftt.api.samples.actionSet1">
         <menu label="%apiMenu.title"
               id="com.ibm.ftt.api.samples.apiMenu">
            <separator name="com.ibm.ftt.api.samples.apiMenu.resourcesAPI"/>
         </menu>
         <action label="%apiMenu.samples.listProperties"
               class="com.ibm.ftt.api.samples.resources.ListPropertiesAction"
               style="push" menubarPath=
    "com.ibm.ftt.api.samples.apiMenu/com.ibm.ftt.api.samples.apiMenu.resourcesAPI"
               id="com.ibm.ftt.api.samples.listPropertiesAction"/>
               ......
      </actionSet>
   </extension>

Términos de uso | Comentarios

Este Information Center está basado en tecnología Eclipse. (http://www.eclipse.org)