You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

The following describes the syntax of the View Definition File (view.xml) as part of the View Package.

An XML Schema Definition is available here.

<view>

The <view> element is the enclosing element in the Definition File. The following table describes the elements you can include in the <view> element:

ElementRequiredDescription
nameYesThe unique name of the view. See <name> for more information.
labelYesThe display label of the view. See <label> for more information.
versionYesThe version of the view. See <version> for more information.
descriptionNoThe description of the view. See <description> for more information.
iconNoThe 32x32 icon to display for this view. Suggested size is 32x32 and will be displayed as 8x8 and 16x16 as necessary. If this property is not set, a default view framework icon is used.
icon64NoThe 64x64 icon to display for this view. If this property is not set, the 32x32 sized icon will be used.
permissionNoDefines a custom permission for this view. See <permission> for more information.
parameterNoDefines a configuration parameter that is used to when creating a view instance. See <parameter> for more information.
resourceNoDefines a resource that is exposed by the view. See <resource> for more information.
instanceNoDefines a static instance of the view. See <instance> for more information.
view-classNoRegisters a view class to receive framework events. See <view-class> for more information.

<name>

The unique name of the view. Example:

<name>MY_COOL_VIEW</name>

<label>

The label of the view. Example:

<label>My Cool View</label>

<version>

The version of the view. Example:

<version>0.1.0</version>

<description>

The description of the view. Example:

<description>This view is used to display information.</description>

<parameter>

ElementRequiredDescription
nameYesThe name of the configuration parameter.
descriptionYesThe description of the configuration parameter.
requiredYesIf true, the configuration parameter is required in order to create a view instance.
maskedNoIndicated this parameter value is to be "masked" in the Ambari Web UI (i.e. not shown in the clear). Omitting this element default to not-masked. Otherwise, if true, the parameter value will be "masked" in the Web UI.
<parameter>
    <name>someParameter</name>
    <description>Some parameter this is used to configure an instance of this view</description>
    <required>false</required>
</parameter>

<permission>

ElementRequiredDescription
nameYesThe unique name of the permission.
descriptionYesThe description of the permission.

<resource>

ElementRequiredDescription
nameYesThe name of the resource. This will be the resource endpoint name of the view instance.
plural-nameNoThe plural name of the resource.
service-classNoThe JAX-RS annotated resource service class.
id-propertyNoThe resource identifier.
provider-classNoThe Ambari ResourceProvider resource class.
resource-classNoThe JavaBean resource class.
<resource>
  <name>calculator</name>
  <service-class>org.apache.ambari.view.proxy.CalculatorResource</service-class>
</resource>

See the Calculator View Example to see a REST service endpoint view implementation.

<resource>
  <name>city</name>
  <plural-name>cities</plural-name>
  <id-property>id</id-property>
  <resource-class>org.apache.ambari.view.weather.CityResource</resource-class>
  <provider-class>org.apache.ambari.view.weather.CityResourceProvider</provider-class>
  <service-class>org.apache.ambari.view.weather.CityService</service-class>
</resource>

See the Weather View Example to see an Ambari ResourceProvider view implementation..

<instance>

ElementRequiredDescription
nameYesThe unique name of the view instance.
labelNoThe display label of the view instance. If not set, the view definition <label> is used.
descriptionNoThe description of the view instance. If not set, the view definition <description> is used.
visibleNoIf true, for the view instance to show up in the users view instance list.
iconNoOverrides the view icon for this specific view instance.
icon64NoOverrides the view icon64 for this specific view instance.
propertyNoSpecifies any necessary configuration parameters for the view instance. See  <property> for more information.
<instance>
  <name>US_WEST</name>
  <property>
    <key>cities</key>
    <value>Palo Alto, US;Los Angeles, US;Portland, US;Seattle, US</value>
  </property>
  <property>
    <key>units</key>
    <value>imperial</value>
  </property>
</instance>

<property>

ElementRequiredDescription
keyYesThe property key (for the configuration parameter to set).
valueYesThe property value (for the configuration parameter to set).
<property>
  <key>units</key>
  <value>imperial</value>
</property>

<view-class>

Registers a view class to receive framework events. The view class must implement the View interface.

<view-class>this.is.my.viewclazz</view-class>
  • No labels