The manifest.json file
Manifest properties
The following table gives an overview of all properties that can be used in a manifest.json
file:
name
-
The name of this bundle.
Example:
"name": "mybundle"
Default: None. This property is required.
version
(required)-
The version of this bundle.
Example:
"version": "1.0.0"
Default: None. This property is required.
deprecated
-
Whether a bundle is deprecated. Tools such as the App Editor may display a hint to the user.
Example"deprecated": { "message": "This bundle is deprecated. Use SOME_ALTERNATIVE instead.", "since": "<Optional version or date as a string>" }
Example"deprecated": true
Default:
false
title
-
The display name of this bundle.
Example:
"title": "My Bundle"
Default: Value of the
name
property. vendor
-
The vendor of this bundle.
Example:
"vendor": "con terra GmbH"
Default:
""
. description
-
A description of this bundle.
Example:
"description": "My bundle does something"
Default:
""
. keywords
-
A list of categories (application specific use, tags for the bundle).
Example:
"keywords": ["test", "nursery"]
Default:
[]
. contactAddress
-
A contact address for this bundle.
Example:
"contactAddress": "Martin-Luther-King Weg 24, 48145 Münster"
Default:
""
. copyright
-
The copyright of this bundle.
Example:
"copyright": "con terra GmbH"
Default:
""
. url
-
A documentation link.
Example:
"url": "https://example.com/mapapps/systembundle"
Default:
""
. icon
-
Metadata about the icon of this bundle.
Example"icon": { "url":"/icons/bundle-logo.png", "width":64, "height":64 }
Default:
{}
licenses
-
Metadata about the license of this bundle.
Example"licenses": [{ "type": "GPL", "version" :"2.4", "url": "https://opensource.org/license/jabberpl.php" } ]
Default:
{}
layer
-
Specifies the name of the source file, which is loaded during the resolve phase of the bundle, the so called "layer file". This file is very important for bundle loading and source/component name resolution. To disable resolving of source files, declare the property with the empty string
""
.Example:
"layer": "module"
Default:
"module"
. startLevel
-
Defines the StartLevel of this bundle. This provides a way to modify or optimize the start order of bundles.
Example:
"startLevel" : 1
Default:
50
. autoStartPolicy
-
Defines that this bundle shall be started or not.
Example:
"autoStartPolicy" : "no"
Default:
"yes"
. activator
-
Specifies a bundle activator class. The activator is informed about the start and stop of the bundle.
Example:
"activator": "Activator"
Default:
""
.
i18n
-
Specifies if the bundle provides language-specific resources, see How to support multiple languages. The default value
["bundle"]
requires the filenls/bundle.js
to be present. Set to[]
if the bundle has no i18n resources.Example:
"i18n" : []
Default:
["bundle"]
. requiredExecutionEnvironment
-
Specifies client environment requirements. If these requirements are not fulfilled, the bundle is not started.
Each entry in the array of browsers has the following format:
value := <browsername>(:<version-range>)?
Examples Description FF:[3.1,4.0]
Firefox from version 3.1 to 4.0
FF:[1.0,4.0)
Firefox from version 1.0 to 4.0 (4.0 not included)
FF
Firefox any version
FF:[3,]
Firefox from version 3 and later
Following browser names can be used:
Name Description IE
Internet Explorer
Edge
Microsoft Edge
FF
Firefox
Chrome
Google Chrome
Khtml
KHTML browsers
Mozilla
Mozilla-based browsers (Firefox, SeaMonkey)
Opera
Opera
Safari
Safari based browsers, Safari or iPhone
WebKit
WebKit based browser (such as Konqueror, Safari, Chrome)
Android
Android
iPhone
iPhone
iPad
iPad
BlackBerry
BlackBerry
Touch
Browser supports touch input
Mobile
The browser is a mobile variant
Example:
"requiredExecutionEnvironment": ["IE:[7,]","FF:[3,]"]
Default:
[]
. excludedExecutionEnvironment
-
Excludes a execution environment. Works like
"requiredExecutionEnvironment"
, but excluding and not including.Example:
"excludedExecutionEnvironment" : ["iPhone"]
Default:
[]
. dependencies
-
Declares the required dependencies of this bundle to other bundles. Bundles of required dependencies are started before the bundle that declares them. If a dependency is not installed or cannot be started, the declaring bundle fails to start up.
Example"dependencies" : { "map" : "1.0.0", ... }
Default:
{}
optionalDependencies
-
Declares the optional dependencies of this bundle to other bundles. Bundles of optional dependencies are started before the bundle that declares them. If a dependency is not installed or cannot be started, the startup of the declaring bundle is not cancelled.
Example"optionalDependencies" : { "map-support" : "1.0.0", ... }
Default:
{}
components
-
This is the entry point for component declarations. Visit the components configuration reference for a description of entries for this array.
Default:
[]
editor
-
Bundle metadata for the App Editor.
Set the
"suggest"
property tofalse
to exclude a bundle from the suggestion list during autocompletion.Example"editor": { "suggest": "false" }
Default:
{}
Component properties
Following properties can be declared on a component description.
Property | Sample | Description |
---|---|---|
|
|
required The name of the component. Used as "impl" value if "impl" is not declared. Must be unique inside a bundle. |
|
|
optional (default: value of The implementation class. An instance of this class is created if the component has to create a new service. |
|
|
optional (default: Specifies if the component should be enabled during the bundle start. |
|
|
optional (default: Specifies the name of the Factory Component, this name is available as service property "Component-Factory" |
|
|
optional (default: Specifies if this component shall be newly created for each requesting bundle. |
|
|
optional (default: Specifies if a configuration element must be available at the Configuration Admin Service. |
|
|
optional (default: Specifies if this is an immediate component. |
|
|
optional (default: Specifies the method name to signal if the component is activated, it is only called if present in the instance. |
|
|
optional (default: Specifies the method name to signal if component is deactivated, it is only called if present in the instance. |
|
|
optional (default: Specifies the method name to signal if the component configuration is changed, it is only called if present in the instance. |
|
|
optional (default: Marks that the component instance is a factory for a service instance.
The component instance must provide a |
|
|
optional (default: Specifies the method name to call for instance creation if this component is an |
|
|
optional (default: Specifies the method name to call for instance dispose if this component is an |
|
|
optional (default: Declares all interface names for which this component is registered as service at the App Runtime. If this is not specified, this component is an immediate component. |
|
|
optional (default: If |
|
|
optional (default: Declares configuration properties and service properties.
Properties starting with '_' underscore are treated as private and are only visible by this component.
If |
|
|
optional (default: Array of reference declarations. |
|
|
optional (default: Array of property names that are explicitly treated as public. |
|
|
optional (default: Array of property names that are explicitly treated as private. |
Reference properties
A reference declaration can have following properties.
Property | Sample | Description |
---|---|---|
|
|
Required The internal name of this reference (used for injection and error logging). |
|
|
Required The interface name under which the target service must be registered in the service registry. |
|
|
Optional A filter expression which expresses further service metadata requirements of the reference. It is needed if the providing interface is not sufficient to find the correct target service. |
|
|
Optional The binding style policy.
Allowed values are Default: |
|
|
Optional Specifies the cardinality of the reference.
Allowed values are Default: |
|
|
Optional Specifies the method called during the injection process.
If the method is not present, the reference is injected as property Default: |
|
|
Optional Specifies the method called during the ejection process. Default: |
|
|
Optional Signals that this reference should not be injected and the component uses a programmatic resolving by applying the Default: |
|
|
Optional Defines that the App Runtime should manage the connects to the reference.
In the sample the App Runtime connects to the event Default: |