10 Requirements for applications

10.1 Application requirements

Any application to be installed using application manager on the controller must meet the following requirements:

It must be in a zip format.

The zip file must be on the same system as the controller.

It must contain an application descriptor file containing key value pairs of the attributes associated with the application.

10.2Application descriptor file mandatory attributes

The application descriptor file must contain the following attribute key value pairs. If a key is missing or the key value is invalid, the application upload will fail and you will not be able to deploy this application.

id – Unique string that identifies this application. No other application may have this value. It may contain alpha-numeric characters and the period, underscore, and dash characters. The id string should not start with a dash or period character and can’t exceed 255 characters. HP recommends you use the same convention that Java uses for class paths. For example: com.hp.sdn.app-name.

name – User visible name for this application. The value must follow the rules for a properly formatted Java properties file key value.

version – OSGi version number. A valid OSGi version number is composed of the following: major-#.minor-#.micro-#.alpha-numeric-qualifier

Note that not all elements are required. See the OSGi version documentation for the precise version string format rules. Typical examples might be: 6.24.0.build64 or 6.27.

10.3Application descriptor optional attributes

The following attribute key-value pairs are optional.

order – Comma separated list of bundle symbolic names indicating the order each bundle should be started in. The first bundle in the list is started by OSGi first, the last bundle in the list is started last.

scoped – true/false. Defaults to false. If true, all services (APIs) supplied by the application are private to the application. Note: OSGi declarative services cannot be used in the application when scoped is set to true.

atomic – true/false. Defaults to true. If true, all parts/components of the application are treated as an atomic unit by OSGi, when starting/stopping/deploying the application. For example, if one of the application bundles/components fails to start, then none of the bundles/components that make up the application will start.

vendor – User visible name of the vendor that created this application. The value must follow the rules for a properly formatted Java properties file key value.

description – Description for this application. The value must follow the rules for a properly formatted Java properties file key value.

98 Requirements for applications