Allow adding InstanceIds durning runtime #351
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
To allow creating services instances during runtime it was necessary to
provide the necessary ports used for communictation. Therefore new
parameters for the service configuration in the vsomeip.json were
created. "dynamic_instance_unrealiable" and "dynamic_instance_reliable"
both are defining a port range that can be used for instances created
during runtime. Also an service that has no predefined instance is
marked with the parameter dynamic_instance = "true". In this case its
not necessary to define a instance in the configuration.
Example Service Definition:
{
"service" : "1010",
"dynamic_instance" : "true",
"dynamic_instance_unreliable":
{
"first":30005,
"last": 30010
},
...
}
The port list is handled by the configuration module. The configuration
offers new methods (claim_port_reliable and claim_port_unreliable) to
claim a port for a new instance. For each dynamic service a template
service is kept.
Additionally the routing_manager was extended so that dynamic instances
are created by using the template service when an offer_service for an
unknown instance on a dynamic service is called and a port for the
instance is claimed.