Application Service Configuration

The Application Manager (the component that implements the Application Service) will look for an XML file (specified with the -c option) containing the configuration to be used.

Application Service configuration items
Element Description
PlatformVersion This is the current version of the KreaTV TV Application Platform.
CompatibleVersion All compatible versions of the platform must be defined with a CompatibleVersion element. Observe that the current version is not implied to be compatible so it must also be added to the list of compatible versions.

All applications have a platform version defined in their application property file and it must be in the list of compatible versions in the configuration file to be allowed to be registered.

PingInterval When the Application Service is not busy with other tasks it will ping all started applications to see that they are still alive. The interval between the pings (or rather the timeout waiting for other tasks) is defined by the PingInterval. The unit is seconds.
StopTimeout StopTimeout is used to define the maximum time to wait for applications to die when they are stopped. When the timeout occurs the Application Service will try to kill the application with the SIGKILL signal instead of the SIGTERM signal. The unit is seconds.
ServiceCallbackTimeout The ServiceCallbackTimeout is the maximum time to wait for internal services to callback when they are informed about applications that are about to start or applications that have stopped. If the timeout occurs the platform is considered to have failed and the whole platform and all applications have to be restarted. The unit is seconds.
EnableDynamicDownload Is used to tell the platform that application download is possible. This means that runtime download, installation, and uninstallation of applications is enabled. This element is optional and the default value is false. Is set to true by including the IIP kreatv-option-application-download into the boot-image.
Application Each application that should be registered at start-up should be defined with an Application element. The propertyfile attribute is used to point out the property file of the application and the startup attribute is used to tell whether the application started immediately when the platform is started. Applications that have been started can be activated faster, but they will consume resources like memory and CPU power. The infront attribute tells which of the initially started applications that should be in the visible and active states (infront means that the application will show on the screen fully or partially). Of course the infront attribute should only be true if startup attribute is true. The download attribute can be used when the EnableDynamicDownload element is set to true. The applications with this attribute set to true is downloaded at startup.

When the platform starts there has to be a full-screen application in the visible or active state so one full-screen application has to be started and infront. Optionally a pop-up application can be active (the infront full-screen application will then be visible) having the infront attribute set to true.

Note! At least one and no more than two applications can be infront. One of the infront applications must be full-screen and if there is another it has to be a pop-up application.

Note! The download attribute should not be set to true if the application should be started at platform startup, even though it is a downloadable application.

A typical configuration file could look like this:

<?xml version="1.0"?>
<AppmanConfig>
	<PlatformVersion>2.1</PlatformVersion>
	<CompatibleVersion>2.1</CompatibleVersion>
	<CompatibleVersion>2.0</CompatibleVersion>
	<PingInterval>20</PingInterval>
	<StopTimeout>2</StopTimeout>
        <ServiceCallbackTimeout>3</ServiceCallbackTimeout>
	<EnableDynamicDownload>true</EnableDynamicDownload>
	<Application propertyfile="/etc/navigator_properties.xml"
                     startup="true" infront="true" download="false" />
	<Application propertyfile="/etc/web_properties.xml"
                     startup="true" infront="true" download="false"/>
	<Application propertyfile="/etc/portal_properties.xml"
                     startup="true" infront="false" download="false"/>
	<Application propertyfile="/etc/game_properties.xml"
                     startup="false" infront="false" download="true"/>
</AppmanConfig>