Module: UU::OS::MetaGroup
- Extended by:
- MetaGroup
- Included in:
- MetaGroup
- Defined in:
- uu_os-0.29.16/lib/uu/os/meta_group.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_copy.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_export.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_create.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_attributes.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_set_attributes.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_get_export_data.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_add_role_interface.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_remove_role_interface.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_get_role_interface_list.rb,
uu_os-0.29.16/lib/uu/os/meta_group/meta_group_get_role_interface_list_item.rb
Overview
Module Meta Group.
Defined Under Namespace
Classes: MetaGroupAddRoleInterface, MetaGroupAttributes, MetaGroupCopy, MetaGroupCreate, MetaGroupExport, MetaGroupGetExportData, MetaGroupGetRoleInterfaceList, MetaGroupGetRoleInterfaceListItem, MetaGroupRemoveRoleInterface, MetaGroupSetAttributes
Constant Summary
- PATH =
Service path
'ues/core/role/UESMetaGroup'
Instance Method Summary (collapse)
-
- (Object) add_role_interface(meta_group_uri, role_interface = nil)
Creates new role interface connection to the specified meta group.
-
- (UU::OS::UESURI) copy(source_meta_artifact_uri, meta_group = nil)
Copy a meta group.
-
- (UU::OS::UESURI) create(location_uri, meta_group = nil)
deprecated
Deprecated.
The uuCommand MetaGroup.create is used for creating meta group from the XML file temporarily. This feature will be removed in a future version and replaced by the specific uuCommands for creating template objects.
-
- (UU::OS::UESURI) export(meta_group_uri)
Exports a meta group to the XML file, which is saved to the export storage.
-
- (UU::OS::MetaGroup::MetaGroupAttributes) get_attributes(meta_group_uri)
Returns attributes representing the meta group specified by the meta_group_uri parameter.
-
- (UU::OS::REST::BinaryValue) get_export_data(meta_group_uri, meta_group = nil)
Returns a XML file generated by the export command.
-
- (UU::OS::REST::ResultList<MetaGroup::MetaGroupGetRoleInterfaceList, MetaGroup::MetaGroupGetRoleInterfaceListItem>) get_role_interface_list(meta_group_uri, criteria = nil)
Returns list of the role interfaces that are added to the specified meta group.
-
- (Object) remove_role_interface(meta_group_uri, role_interface = nil)
The command removes role interface connection from the specified meta group.
-
- (UU::OS::UESURI) set_attributes(meta_group_uri, meta_group = nil)
Command for setting attributes of a meta group.
Instance Method Details
- (Object) add_role_interface(meta_group_uri, role_interface = nil)
Creates new role interface connection to the specified meta group. The role interface has to be in an active state and must not be already added. The role interface can be added to meta group only provided that role interface is located in the same, child or parent meta model as meta group.
135 136 137 138 139 140 141 142 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 135 def add_role_interface(, role_interface = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) payload = UU::OS::MetaGroup::MetaGroupAddRoleInterface.new(role_interface).to_json UU::OS::QoS::QoSHandler.auto_retry do svc.post('addRoleInterface', , payload) end end |
- (UU::OS::UESURI) copy(source_meta_artifact_uri, meta_group = nil)
Copy a meta group. The command creates a new meta group according to specified source meta group in a specified location. At the very least location meta group and name must be specified in MetaGroupCopy DTO. Competent role for the new meta group copy will be selected as the most suitable according to specified container and meta group (executive/authorized role with connected interface), or can be also specified in MetaGroupCopy DTO.
112 113 114 115 116 117 118 119 120 121 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 112 def copy(, = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) svc.timeout = 120 # may take longer than default 60 seconds payload = UU::OS::MetaGroup::MetaGroupCopy.new().to_json UU::OS::QoS::QoSHandler.auto_retry do res = svc.post('copy', , payload) return UU::OS::UESURI.new(res) end end |
- (UU::OS::UESURI) create(location_uri, meta_group = nil)
The uuCommand MetaGroup.create is used for creating meta group from the XML file temporarily. This feature will be removed in a future version and replaced by the specific uuCommands for creating template objects.
Creates a meta group from an exported XML file in the specified location. Source meta group must be derived (at least indirectly) from a meta group which is a part of UU.OS uuApp. Creation of meta group is divided into synchronous and asynchronous part. During the synchronous part, the meta group is created. During the asynchronous part, the template objects are created. If the asynchronous process fails and the Problem state is set on meta group, it is possible to solve the problem (e.g. add reference_map) and run the command again.
291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 291 def create(location_uri, = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) dto = UU::OS::MetaGroup::MetaGroupCreate.new() payload = dto.to_hash payload.delete(:data) tmpfile = Tempfile.new("MetaGroupCreate") begin if (!dto.data.data.respond_to?(:read)) tmpfile.write(dto.data.data) payload[:data] = tmpfile elsif (dto.data.data.respond_to?(:read) && !dto.data.data.respond_to?(:path)) tmpfile.binmode dto.data.data.rewind tmpfile.write(dto.data.data.read) payload[:data] = tmpfile else payload[:data] = dto.data.to_hash(false) end tmpfile.flush tmpfile.rewind UU::OS::QoS::QoSHandler.auto_retry do res = svc.post('create', location_uri, payload) return UU::OS::UESURI.new(res) end ensure tmpfile.close tmpfile.unlink end end |
- (UU::OS::UESURI) export(meta_group_uri)
Exports a meta group to the XML file, which is saved to the export storage.
The export is an asynchronous process.
It is possible to wait for the
end of the process. More information in Process and
in Future.
To get exported data from the storage
use get_export_data.
211 212 213 214 215 216 217 218 219 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 211 def export() svc = UU::OS::REST::RemoteClient.new(MetaGroup) payload = UU::OS::MetaGroup::MetaGroupExport.new(nil).to_json UU::OS::QoS::QoSHandler.auto_retry do res = svc.post('export', , payload) return UU::OS::UESURI.new(res) end end |
- (UU::OS::MetaGroup::MetaGroupAttributes) get_attributes(meta_group_uri)
Returns attributes representing the meta group specified by the meta_group_uri parameter. The command does not change the state of the meta group in the system.
36 37 38 39 40 41 42 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 36 def get_attributes() svc = UU::OS::REST::RemoteClient.new(MetaGroup) UU::OS::QoS::QoSHandler.auto_retry do res = svc.get('getAttributes', ) return MetaGroup::MetaGroupAttributes.new(res) end end |
- (UU::OS::REST::BinaryValue) get_export_data(meta_group_uri, meta_group = nil)
Returns a XML file generated by the export command.
238 239 240 241 242 243 244 245 246 247 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 238 def get_export_data(, = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) dto = UU::OS::MetaGroup::MetaGroupGetExportData.new() if dto.requested_mime_type svc.add_parameter('requestedMimeType', dto.requested_mime_type) end UU::OS::QoS::QoSHandler.auto_retry do return svc.get_binary('getExportData', ) end end |
- (UU::OS::REST::ResultList<MetaGroup::MetaGroupGetRoleInterfaceList, MetaGroup::MetaGroupGetRoleInterfaceListItem>) get_role_interface_list(meta_group_uri, criteria = nil)
Returns list of the role interfaces that are added to the specified meta group. The list of returned interfaces could be filtered by the name or code. Returned list does not contain any objects filtered out by executed UESQuery. The list is sorted by the name (and codes in case are equal) of an interface by default.
163 164 165 166 167 168 169 170 171 172 173 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 163 def get_role_interface_list(, criteria = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) dto = MetaGroup::MetaGroupGetRoleInterfaceList.new(criteria) svc.add_parameter('pageIndex', dto.page_index) svc.add_parameter('pageSize', dto.page_size) svc.add_parameter('query', dto.query) UU::OS::QoS::QoSHandler.auto_retry do res = svc.get('getRoleInterfaceList', ) return UU::OS::REST::ResultList.new(MetaGroup::MetaGroupGetRoleInterfaceList, MetaGroup::MetaGroupGetRoleInterfaceListItem, res) end end |
- (Object) remove_role_interface(meta_group_uri, role_interface = nil)
The command removes role interface connection from the specified meta group. Only added interfaces can be removed from meta group.
185 186 187 188 189 190 191 192 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 185 def remove_role_interface(, role_interface = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) payload = UU::OS::MetaGroup::MetaGroupRemoveRoleInterface.new(role_interface).to_json UU::OS::QoS::QoSHandler.auto_retry do svc.post('removeRoleInterface', , payload) end end |
- (UU::OS::UESURI) set_attributes(meta_group_uri, meta_group = nil)
Command for setting attributes of a meta group. The command cannot modify references to objects like location, competent role and so on.
68 69 70 71 72 73 74 75 76 |
# File 'uu_os-0.29.16/lib/uu/os/meta_group.rb', line 68 def set_attributes(, = nil) svc = UU::OS::REST::RemoteClient.new(MetaGroup) payload = UU::OS::MetaGroup::MetaGroupSetAttributes.new().to_json UU::OS::QoS::QoSHandler.auto_retry do res = svc.post('setAttributes', , payload) return UU::OS::UESURI.new(res) end end |