Community
Participate
Working Groups
1) When a part is deployed, locate the rununit.properties file in the target project and add a key/value pair for the DD file being used to deploy the part: a) If the rununit.properties file does not exist, create one and add the key/value pair b) If the rununit.properties file exists, and a value does not exist for the current key, append the key/value pair to the file c) If the rununit.properties file exists, and a value exists for the current key, and the value matches the DD file currently being used, do nothing. d) If the rununit.properties file exists, and a value exists for the current key, and the value does not match the DD file currently being used, append the key/value pair to the file. 2) The key to use in the file is "egl.application.property.file.partname", where "partname" is the name of the part being deployed. 3) The value to use is the name of the generated bnd.xml file for the DD file being used to deploy the part. 3) At runtime, if binding information is not specified (e.g. hard coded binding information, properties file named in the source, etc), the rununit.properties file is used to locate the name of the properties file. This file should first be resolved using "egl.application.property.file.partname", where "partname" is the name of the part that started the current rununit, followed by ""egl.application.property.file". 4) When resolving information from a resource being created in a Library, the name of the part that started the rununit should be used when resolving the key specified in #3.
Additional comments: 1) The part name specified in the key should be the qualified part name of the generated file, in case the part name is aliased.
Created attachment 207066 [details] Runtime support for the default DD changes This is the runtime portion of the change. It does not include the deployment work to add/update rununit.properties.
An egldd has entry for Services being deployed, thus, we can set the dd name for these services. However, for Programs, there's no entry in egldd so we can not set one for a Program part. Programs will have to use egl.application.property.file setting.
Justin will take care of this. Justin, thanks a lot.
*** Bug 363792 has been marked as a duplicate of this bug. ***
Justin, is this enhancement in?
Not yet
Created attachment 207371 [details] Deployment and runtime support
Note: To minimize the impact this late in the game, as long as there is at least 1 RUI Handler being deployed we will set the property "egl.application.property.file" to the current DD, in support of dedicated services. The only way to find out which services are being invoked as dedicated is to walk the IRs of all referenced parts being deployed, looking for @DedicatedService on service or interface variable declarations. We can look into doing this in the next release. For now, our default configuration will have dedicated services all use the egl.application.property.file property and REST services (since the DD tells us which are REST) are configured to use "egl.application.property.file.partname". Users are free to edit this file to add application-specific keys for their dedicated services.
Created attachment 207375 [details] Deployment and runtime support (with Matt's suggestions)
Patch has been applied