blob: b93f3d9cf289cfa4d91aed29f31c43b9a80aa691 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets" id="@PROJECT_NAME@" version="@PROJECT_VERSION@">
<name>@PROJECT_NAME@</name>
<icon src="@PROJECT_ICON@"/>
<content src="@WIDGET_ENTRY_POINT@" type="@WIDGET_TYPE@"/>
<description>@PROJECT_DESCRIPTION@</description>
<author>@PROJECT_AUTHOR@ <@PROJECT_AUTHOR_MAIL@></author>
<license>@PROJECT_LICENSE@</license>
<!-- Feature : required-api ------------------------------------------------------
#### param name="#target" OPTIONAL
Declares the name of the unit requiring the listed apis.
Only one instance of the param "#target" is allowed.
When there is not instance of this param, it behave as if
the target main was specified.
#### param name=[required api name]
The name is the name of the required API.
The value describes how to connect to the required api.
It is either:
- local: The binding is a local shared object.
In that case, the name is the relative path of the
shared object to be loaded.
- auto: The framework set automatically the kind of
the connection to the API
- ws: The framework connect using internal websockets
- dbus: The framework connect using internal dbus
- link: The framework connect in memory by dinamically linking
Example:
<feature name="urn:AGL:widget:required-api">
<param name="#target" value="low-can" />
<param name="<a-required-api>" value="auto" />
<param name="<another-required-api>" value="auto" />
</feature>
--------------------------------------------------------------------------------->
<!-- Feature : required-permission ------------------------------------------
List of the permissions required by the unit.
Each required permission must be explicited using a <param> entry.
#### param name="#target" OPTIONAL
Declares the name of the unit requiring the listed permissions.
Only one instance of the param "#target" is allowed.
When there is not instance of this param, it behave as if
the target main was specified.
#### param name=[required permission name]
The value is either:
- required: the permission is mandatorily needed except if the feature
isn't required (required="false") and in that case it is optional.
- optional: the permission is optional
Example:
<feature name="urn:AGL:widget:required-permission">
<param name="#target" value="geoloc" />
<param name="urn:AGL:permission:real-time" value="required" />
<param name="urn:AGL:permission:syscall:*" value="required" />
</feature>
--------------------------------------------------------------------------------->
<!-- Feature : provided-unit -------------------------------------------------
This feature is made for declaring new units
for the widget. Using this feature, a software publisher
can provide more than one application in the same widget.
#### param name="#target" REQUIRED
Declares the name of the unit. The default unit, the unit
of the main of the widget, has the name "main". The value
given here must be unique within the widget file. It will
be used in other places of the widget config.xml file to
designate the unit.
Only one instance of the param "#target" is allowed.
The value can't be "main".
#### param name="content.type" REQUIRED
The mimetype of the provided unit.
#### param name="content.src"
A path to the file (subject to localisation), this is the entry point
to that unit.
#### other parameters
The items that can be set for the main unit
can also be set using the params if needed.
- description
- name.content
- name.short
- ...
Example:
<feature name="urn:AGL:widget:provided-unit">
<param name="#target" value="geoloc" />
<param name="description" value="binding of name geoloc" />
<param name="content.src" value="index.html" />
<param name="content.type" value="application/vnd.agl.service" />
</feature>
--------------------------------------------------------------------------------->
<!-- Feature: provided-api ---------------------------------------------------
Use this feature for exporting one or more API of a unit
to other widgets of the platform.
This feature is an important feature of the framework.
#### param name="#target" OPTIONAL
Declares the name of the unit exporting the listed apis.
Only one instance of the param "#target" is allowed.
When there is not instance of this param, it behave as if
the target main was specified.
#### param name=[name of exported api]
The name give the name of the api that is exported.
The value is one of the following values:
- ws: export the api using UNIX websocket
- dbus: export the API using dbus
- auto: export the api using the default method(s).
Example:
<feature name="urn:AGL:widget:provided-api">
<param name="#target" value="geoloc" />
<param name="geoloc" value="auto" />
<param name="moonloc" value="auto" />
</feature>
--------------------------------------------------------------------------------->
</widget>
|