Configuration implementation class.
More...
#include <SdoConfiguration.h>
|
static std::string | getUUID () |
| Generate UUID.
|
|
Configuration implementation class.
Configuration interface provides operations to add or remove data specified in resource data model. These operations provide functions to change DeviceProfile, ServiceProfile, ConfigurationProfile, and Organization. This SDO specification does not address access control or security aspects.
Different configurations can be stored for simple and quick activation. Different predefined configurations are stored as different ConfigurationSets or configuration profile. A ConfigurationSet stores the value of all properties assigned for the particular configuration along with its unique id and description to identify and describe the configuration respectively. Operations in the configuration interface help manage these ConfigurationSets.
- ConfigurationSet: id, description, one configuration set to consist of NVList
- ConfigurationSetList: List of ConfigurationSet
- Parameter: Parameter definition consist of name, type and allowed_values
- ActiveConfigurationSet: One set of configuration set that is valid.
The following functions do processing to ParameterList.
The following functions do processing to active ConfigurationSet
The following functions do processing to ConfigurationSetList
- Since
- 0.4.0
◆ Configuration_impl()
Constructor.
Constructor
- Parameters
-
configAdmin | ConfigurationSetList |
◆ ~Configuration_impl()
SDOPackage::Configuration_impl::~Configuration_impl |
( |
| ) |
|
|
override |
Virtual destractor.
Virtual destractor.
◆ activate_configuration_set()
CORBA::Boolean SDOPackage::Configuration_impl::activate_configuration_set |
( |
const char * | id | ) |
|
|
override |
[CORBA interface] Activate ConfigurationSet
This operation activates one of the stored ConfigurationSets in the ConfigurationProfile. This operation activates the specified stored ConfigurationSets. This means that the configuration properties of the SDO are changed as the values of these properties specified in the stored ConfigurationSet. In other words, values of the specified ConfigurationSet are now copied to the active configuration.
- Parameters
-
config_id | Identifier of ConfigurationSet to be activated. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The argument ("configID") is null or there is no configuration set with identifier specified by the argument. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ add_configuration_set()
CORBA::Boolean SDOPackage::Configuration_impl::add_configuration_set |
( |
const ConfigurationSet & | configuration_set | ) |
|
|
override |
[CORBA interface] Add ConfigurationSet
This operation adds a ConfigurationSet to the ConfigurationProfile.
- Parameters
-
configuration_set | The ConfigurationSet that is added. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The argument "configurationSet" is null, or one of the attributes defining "configurationSet" is invalid, or the specified identifier of the configuration set already exists. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ add_organization()
CORBA::Boolean SDOPackage::Configuration_impl::add_organization |
( |
Organization_ptr | org | ) |
|
|
override |
[CORBA interface] Add Organization
This operation adds reference of an Organization object.
- Parameters
-
org | Organization to be added. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InvalidParameter | The argument “organization” is null. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ add_service_profile()
CORBA::Boolean SDOPackage::Configuration_impl::add_service_profile |
( |
const ServiceProfile & | sProfile | ) |
|
|
override |
[CORBA interface] Set SDO's ServiceProfile
This operation adds ServiceProfile to the target SDO that navigates this Configuration interface. If the id in argument ServiceProfile is null, new id is created and the ServiceProfile is stored. If the id is not null, the target SDO searches for ServiceProfile in it with the same id. It adds the ServiceProfile if not exist, or overwrites if exist.
- Parameters
-
sProfile | ServiceProfile to be added. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InvalidParameter | The argument "sProfile" is null. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_active_configuration_set()
ConfigurationSet * SDOPackage::Configuration_impl::get_active_configuration_set |
( |
| ) |
|
|
override |
[CORBA interface] Get active ConfigurationSet
This operation returns the current active ConfigurationSet of an SDO (i.e., if the current configuration of the SDO was set using predefined configuration set). ConfigurationSet cannot be considered active if the:
- Current configuration of the SDO was not set using any predefined ConfigurationSet, or
- Configuration of the SDO was changed after it has been active, or
- ConfigurationSet that was used to configure the SDO was modified.
Empty ConfigurationSet is returned in these cases.
- Returns
- The active ConfigurationSet.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_configuration_parameter_value()
CORBA::Any * SDOPackage::Configuration_impl::get_configuration_parameter_value |
( |
const char * | name | ) |
|
|
override |
[CORBA interface] Get the value of configuration parameter
This operation returns a value of parameter that is specified by argument "name."
- Parameters
-
name | Name of the parameter whose value is requested. |
- Returns
- The value of the specified parameter.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The value of the argument "name" is empty String, or null, or the parameter that is specified by argument "name" does not exist. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_configuration_parameter_values()
NVList * SDOPackage::Configuration_impl::get_configuration_parameter_values |
( |
| ) |
|
|
override |
[CORBA interface] Get a list of the value of configuration parameters
This operation returns all configuration parameters and their values.
- Returns
- List of all configuration parameters and their values.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_configuration_parameters()
ParameterList * SDOPackage::Configuration_impl::get_configuration_parameters |
( |
| ) |
|
|
override |
[CORBA interface] Get a list of configuration parameters
This operation returns a list of Parameters. An empty list is returned if the SDO does not have any configurable parameter.
- Returns
- The list with definitions of parameters characterizing the configuration.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_configuration_set()
ConfigurationSet * SDOPackage::Configuration_impl::get_configuration_set |
( |
const char * | id | ) |
|
|
override |
[CORBA interface] Get a ConfigurationSet
This operation returns the ConfigurationSet specified by the parameter configurationSetID.
- Parameters
-
config_id | Identifier of ConfigurationSet requested. |
- Returns
- The configuration set specified by the parameter config_id.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The parameter 'config_id' is null or there are no ConfigurationSets stored with such id. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ get_configuration_sets()
ConfigurationSetList * SDOPackage::Configuration_impl::get_configuration_sets |
( |
| ) |
|
|
override |
[CORBA interface] Get a list of ConfigurationSet
This operation returns a list of ConfigurationSets that the ConfigurationProfile has. An empty list is returned if the SDO does not have any ConfigurationSets. This operation returns a list of all ConfigurationSets of the SDO. If no predefined ConfigurationSets exist, then empty list is returned.
- Returns
- The list of stored configuration with their current values.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ getDeviceProfile()
DeviceProfile SDOPackage::Configuration_impl::getDeviceProfile |
( |
| ) |
|
Get the DeviceProfile of SDO.
Get the DeviceProfile of SDO.
- Returns
- DeviceProfile of SDO
◆ getObjRef()
Configuration_ptr SDOPackage::Configuration_impl::getObjRef |
( |
| ) |
|
Get object reference.
Get the target object reference.
- Returns
- Object reference
◆ getOrganizations()
OrganizationList SDOPackage::Configuration_impl::getOrganizations |
( |
| ) |
|
Get a list of Organization of SDO.
Get a list of Organization of SDO.
- Returns
- List of Organization of SDO
◆ getUUID()
static std::string SDOPackage::Configuration_impl::getUUID |
( |
| ) |
|
|
staticprotected |
Generate UUID.
Generate UUID.
- Returns
- UUID that has been generated
◆ remove_configuration_set()
CORBA::Boolean SDOPackage::Configuration_impl::remove_configuration_set |
( |
const char * | id | ) |
|
|
override |
[CORBA interface] Remove ConfigurationSet
This operation removes a ConfigurationSet from the ConfigurationProfile.
- Parameters
-
config_id | The id of ConfigurationSet which is removed. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The arguments "configurationSetID" is null, or the object specified by the argument "configurationSetID" does not exist. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ remove_organization()
CORBA::Boolean SDOPackage::Configuration_impl::remove_organization |
( |
const char * | organization_id | ) |
|
|
override |
[CORBA interface] Remove the reference of Organization
This operation removes the reference of an Organization object.
- Parameters
-
organization_id | Unique id of the organization to be removed. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The argument "organizationID" is null, or the object which is specified by argument "organizationID" does not exist. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ remove_service_profile()
CORBA::Boolean SDOPackage::Configuration_impl::remove_service_profile |
( |
const char * | id | ) |
|
|
override |
[CORBA interface] Remove ServiceProfile
This operation removes ServiceProfile object to the SDO that has this Configuration interface. The ServiceProfile object to be removed is specified by argument.
- Parameters
-
id | serviceID of a ServiceProfile to be removed. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The argument "sProfile" is null, or if the object that is specified by argument "sProfile" does not exist. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ set_configuration_parameter()
CORBA::Boolean SDOPackage::Configuration_impl::set_configuration_parameter |
( |
const char * | name, |
|
|
const CORBA::Any & | value ) |
|
override |
[CORBA interface] Modify the configuration parameter value
This operation sets a parameter to a value that is specified by argument "value." The parameter to be modified is specified by argument " name."
- Parameters
-
name | The name of parameter to be modified. |
value | New value of the specified parameter. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
InvalidParameter | The arguments ("name" and/or "value") is null, or the parameter that is specified by the argument "name" does not exist. |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ set_configuration_set_values()
CORBA::Boolean SDOPackage::Configuration_impl::set_configuration_set_values |
( |
const ConfigurationSet & | configuration_set | ) |
|
|
override |
[CORBA interface] Set ConfigurationSet
This operation modifies the specified ConfigurationSet of an SDO.
Note: The number of parameters differs between spec and IDL!!
- Parameters
-
config_id | The ID of ConfigurationSet to be modified. |
configuration_set | ConfigurationSet to be replaced. |
- Returns
- A flag indicating if the ConfigurationSet was modified successfully. "true" - The ConfigurationSet was modified successfully. "false" - The ConfigurationSet could not be modified successfully.
- Exceptions
-
InvalidParameter | The parameter 'configurationSetID' is null or there is no ConfigurationSet stored with such id. This exception is also raised if one of the attributes defining ConfigurationSet is not valid. |
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ set_device_profile()
CORBA::Boolean SDOPackage::Configuration_impl::set_device_profile |
( |
const DeviceProfile & | dProfile | ) |
|
|
override |
[CORBA interface] Set DeviceProfile of SDO
This operation sets the DeviceProfile of an SDO. If the SDO does not have DeviceProfile, the operation will create a new DeviceProfile, otherwise it will replace the existing DeviceProfile.
- Parameters
-
dProfile | The device profile that is to be assigned to this SDO. |
- Returns
- If the operation was successfully completed.
- Exceptions
-
SDONotExists | The target SDO does not exist.(This exception is mapped to CORBA standard system exception OBJECT_NOT_EXIST.) |
NotAvailable | The target SDO is reachable but cannot respond. |
InvalidParameter | The argument "dProfile" is null. |
InternalError | The target SDO cannot execute the operation completely due to some internal error. |
◆ m_config_mutex
std::mutex SDOPackage::Configuration_impl::m_config_mutex |
|
protected |
◆ m_configsets
SDO ConfigurationSetList with mutex lock .
◆ m_deviceProfile
DeviceProfile SDOPackage::Configuration_impl::m_deviceProfile |
|
protected |
SDO DeviceProfile with mutex lock .
◆ m_dprofile_mutex
std::mutex SDOPackage::Configuration_impl::m_dprofile_mutex |
|
protected |
◆ m_objref
Configuration_var SDOPackage::Configuration_impl::m_objref |
|
protected |
The reference to CORBA object .
◆ m_org_mutex
std::mutex SDOPackage::Configuration_impl::m_org_mutex |
|
protected |
◆ m_organizations
OrganizationList SDOPackage::Configuration_impl::m_organizations |
|
protected |
SDO OrganizationList with mutex lock .
◆ m_parameters
ParameterList SDOPackage::Configuration_impl::m_parameters |
|
protected |
SDO Parameter.
Data structure to define a variable (parameter) independently of implementation technologies. The Parameter structure defines the name and type of a variable. Attributes defined in Parameter.
- name : Parameter’s name.
- type : Name of parameter's type. The original value scope of parameter data type can be constrained by definitions allocated in the attribute allowedValues.
allowedValues : Values that the parameter can accept. This attribute is used only when the value scope inherent to the parameter type must be constrained. For example, the values allowed for a string parameter may be constrained by an enumeration, or the values allowed for a numeric parameter may be constrained by a range. The values allowed for a parameter can be defined in enumeration, range, or interval structures. The value of attribute allowedValues is null if there is no constraint on a parameter value, that is, any value can be assigned to the parameter as far as it follows the value scope inherent to the parameter’s type.
struct Parameter { string name; TypeCode type; AllowedValues allowed_values; };
SDO ParameterList with mutex lock
◆ m_params_mutex
std::mutex SDOPackage::Configuration_impl::m_params_mutex |
|
protected |
◆ m_sdoservice
SDO Service admin object with mutex lock .
◆ m_sdoservice_mutex
std::mutex SDOPackage::Configuration_impl::m_sdoservice_mutex |
|
protected |
◆ rtclog
The documentation for this class was generated from the following file: