Migration from previous FESA3 versions

FESA3 1.2.2 -> 1.3.1

To update version 1.2.2 classes & deploy-units to 1.3.1 simply use the Update version button of the FESA Eclipse plug-in. When updating a deploy-unit the instance files in the test folder are automatically updated to (FESA Eclipse plug-in 2.0.8++).

FESA3 1.0.0 -> 1.3.1

Due to in incompatible change between the two versions the class-, deploy-unit- and the instance files have to be extended. To do so perform the following:

Step 1 - Update your xml-design-files
  1. Ensure that all classes/deployment-units/instance files are valid
  2. Download the following files. Place them into your workspace:
  3. Make sure that all design / deploy-unit / instance files are closed in Eclipse.
  4. Add execution permission to the script and run it for all design / deploy-unit / instance files to convert:
chmod +x migrate_1.0.0-1.3.1.sh
./migrate_1.0.0-1.3.1.sh MyClass/src/MyClass.design
./migrate_1.0.0-1.3.1.sh MyDeployUnit/src/MyDeployUnit.deploy
./migrate_1.0.0-1.3.1.sh MyDeployUnit/src/test/asl73x/DeviceData_MyDeployUnit_M.instance

PLEASE note that the FESA version replacement function may accidentally match other numbers as well!

  1. Now you should have a backup of your old design files ( e.g. MyClass.design.backup) and the updated new one.
  2. Take a look at the new GSI-specific configuration-field "detailedStatus_severity" and the corresponding value-item. You may want to insert a proper default value for the field.
    • Attention: If you want to flag an error in "detailedStatus", the error state always have to be false. ( Use the enum-value "ERROR_ON_FALSE" for the same index in "detailedStatus_severity")
  3. Open each FESA class in Eclipse, validate it + generate the sourcecode
  4. Open each FESA deploy-unit in Eclipse, validate it + generate the sourcecode
  5. Open each FESA instance file in Eclipse and validate it.
  6. If there are conflicts which you can't resolve please don't hesitate to contact fesa-support@gsi.de

Step 2 - Update the source-code

There is not much to change during this migration. Please take care of the following regarding the detailed status fields:
// Instead of filling the detailedStatus like that:
uint32_t index = 4;
bool myNewValue
(*device)->detailedStatus.setCell(myNewValue,index,pEvt->getMultiplexingContext());

// The following new methods can be used now:
(*device)->detailedStatus.lower(0,pEvt->getMultiplexingContext());
(*device)->detailedStatus.raise(1,pEvt->getMultiplexingContext());
(*device)->detailedStatus.lower("MyLabelBit4",pEvt->getMultiplexingContext());
(*device)->detailedStatus.raise("MyLabelBit5",pEvt->getMultiplexingContext());

  • If all changes were performed in the right way the class and the deploy-unit should compile and link without problems.
  • If there are conflicts which you can't resolve please don't hesitate to contact fesa-support@gsi.de

Attention: New start-script for fesa v1.3.1 will not be generated during version-update. In order to get an up-to-date start-script, just create some non-existing FEC (click "add FEC" + "add Instance" ) and copy generated startscript to your FEC-folder.
I Attachment Action Size Date Who Comment
migrate_1.0.0-1.3.1.shsh migrate_1.0.0-1.3.1.sh manage 3 K 07 Jul 2014 - 12:24 AlexanderSchwinn Migration script
migrate_1.0.0-1.3.1.xslxsl migrate_1.0.0-1.3.1.xsl manage 5 K 12 May 2014 - 09:29 SolveighMatthies Migration xsl transformation file
Topic revision: r5 - 07 Jul 2014, AlexanderSchwinn
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback