configurationengine/doc/plugins/convertprojectplugin.rst
author terytkon
Thu, 11 Mar 2010 17:04:37 +0200
changeset 0 2e8eeb919028
child 3 e7e0ae78773e
permissions -rw-r--r--
Adding EPL version of configurationengine.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     1
User guide for Convert Project Plugin
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     2
-------------------------------------
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     3
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     4
Introduction
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     5
'''''''''''''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     6
This page describes how to use and configure Convert Project plugin. This plugin is 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     7
used to convert old style configuration structure to Configuration project. The plugin 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     8
can be used to create files and folders. For a folder you can define using absolute paths
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
     9
or wildcards which files from previous structure are copied to the new structure. For files
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    10
it is possible just to copy a file from one location to another, create layer and configuration
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    11
root files. For these more complex type of files you can select which files are included using
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    12
absolute path or wildcards.
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    13
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    14
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    15
Configuring
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    16
''''''''''''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    17
Plugin is configured by modifying .convertprojectml file that must be located in some layer's implml folder
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    18
that is included in generated configuration. Typical case is that the plugin is used in products that don't
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    19
have configuration project and layers. In that case refer to Installation/Running part.
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    20
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    21
Convert Project ML format
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    22
~~~~~~~~~~~~~~~~~~~~~~~~~~
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    23
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    24
| Elements         | Attributes      | Content model  | Description                   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    25
+==================+=================+================+===============================+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    26
| convertprojectml | xmlns           |targetProject   | Collective/Top-most element   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    27
|                  |                 |layer*          | defines the namespace used    |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    28
|                  |                 |foreach*        | in the file.                  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    29
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    30
| targetProject    | path            |                | Defines output path. By the   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    31
|                  | validate        |                | default all the paths later   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    32
|                  |                 |                | are relative to this path.    |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    33
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    34
| layer            | path            | folder*        | Defines one configuration     |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    35
|                  |                 | file*          | layer. Creates new layer      |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    36
|                  |                 |                | folder defined in the path.   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    37
|                  |                 |                | Folder and file paths are     |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    38
|                  |                 |                | relative to this path.        |    
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    39
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    40
| folder           | path            | filter*        | Defines one folder inside a   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    41
|                  |                 |                | layer. Creates new folder     |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    42
|                  |                 |                | using path. Filter paths are  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    43
|                  |                 |                | relative to this path.        |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    44
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    45
| file             | path            | filter*        | Element which can be used     |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    46
|                  | type            |                | for three different purposes. |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    47
|                  |                 |                | Copying files, creating layer |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    48
|                  |                 |                | roots and configuration roots.| 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    49
|                  |                 |                | Path defines target filename  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    50
|                  |                 |                | and type which kind of file   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    51
|                  |                 |                | is created.                   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    52
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    53
| filter           | action          |                | Filter is the element that    |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    54
|                  | data            |                | does all the work. It has     |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    55
|                  | remove_includes |                | attribute action, which can be|
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    56
|                  |                 |                | add, remove, include_file or  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    57
|                  |                 |                | include_layer. Data defines   |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    58
|                  |                 |                | the search pattern for action | 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    59
|                  |                 |                | Remove_includes can be used to|
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    60
|                  |                 |                | remove all existing includes  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    61
|                  |                 |                | from files that are included  |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    62
|                  |                 |                | in layer root file.           |
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    63
+------------------+-----------------+----------------+-------------------------------+
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    64
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    65
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    66
Installation/Running
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    67
'''''''''''''''''''''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    68
1. Download and install ConE according the ConE installation documentation.
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    69
2. Go to \\epoc32\\rom\\config folder
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    70
3. Create convertproject and convertproject\\implml folders
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    71
4. Copy example create_project.convertprojectml to convertproject\\implml folder
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    72
5. Modify according your needs
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    73
6. Create a layer root file called root.confml in convertproject folder. Use the following content:
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    74
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    75
.. code-block:: xml
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    76
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    77
  <?xml version="1.0" encoding="ASCII"?>
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    78
  <confml:configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    79
    xmlns:confml="http://www.s60.com/xml/confml/2" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    80
    xmlns:xi="http://www.w3.org/2001/XInclude" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    81
    xsi:schemaLocation="http://www.s60.com/xml/confml/2 http://www.s60.com/xml/confml/1#//confml2 http://www.w3.org/2001/XInclude http://www.s60.com/xml/confml/1#//include">
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    82
  </confml:configuration>
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    83
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    84
7. Create configuration root file called convert.confml in \epoc32\rom\config folder. Use the following content:
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    85
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    86
.. code-block:: xml
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    87
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    88
  <?xml version="1.0" encoding="ASCII"?>
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    89
  <confml:configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    90
    xmlns:confml="http://www.s60.com/xml/confml/2" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    91
    xmlns:xi="http://www.w3.org/2001/XInclude" 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    92
    xsi:schemaLocation="http://www.s60.com/xml/confml/2 http://www.s60.com/xml/confml/1#//confml2 http://www.w3.org/2001/XInclude http://www.s60.com/xml/confml/1#//include">
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    93
  	<xi:include href="convertproject/root.confml"/>
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    94
  </confml:configuration>
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    95
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    96
8. Run ConE to generate content. 
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    97
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    98
::
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
    99
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   100
  \epoc32\rom\config>cone --action generate -c convert.confml
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   101
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   102
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   103
Examples
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   104
'''''''''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   105
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   106
XSD
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   107
'''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   108
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   109
Download: :download:`projectml.xsd </xsd/projectml.xsd>`
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   110
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   111
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   112
FAQ
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   113
'''''''''
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   114
This will be updated based on the questions.
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   115
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   116
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   117
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   118
2e8eeb919028 Adding EPL version of configurationengine.
terytkon
parents:
diff changeset
   119