Module: UU::OS::PersonalAccessRole

Extended by:
PersonalAccessRole
Included in:
PersonalAccessRole
Defined in:
uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_create.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_attributes.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_set_attributes.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_add_role_interface.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_remove_role_interface.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_get_role_interface_list.rb,
uu_os_client-0.10.6/lib/uu/os/personal_access_role/personal_access_role_get_role_interface_list_item.rb

Defined Under Namespace

Classes: PersonalAccessRoleAddRoleInterface, PersonalAccessRoleAttributes, PersonalAccessRoleCreate, PersonalAccessRoleGetRoleInterfaceList, PersonalAccessRoleGetRoleInterfaceListItem, PersonalAccessRoleRemoveRoleInterface, PersonalAccessRoleSetAttributes

Constant Summary

PATH =

Service path of the REST API.

'uu/os/PersonalAccessRole'

Instance Method Summary (collapse)

Instance Method Details

- (Object) activate_access(personal_access_role_uri)

This command activates a personal access role. The personal access role will have access to its territory.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of a personal access role that the access will be reactivated.



145
146
147
148
149
150
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 145

def activate_access(personal_access_role_uri)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  UU::OS::QoS::QoSHandler.auto_retry do
    svc.post('activateAccess', personal_access_role_uri)
  end
end

- (Object) add_role_interface(personal_access_role_uri, personal_access_role = nil)

This command creates new role interface connection to the specified personal access role. The role interface has to be in an active state and mustn't be already connected. The role interface has to be connected to the one of the authorized roles for this command, or the authorized role has to be casted to the default group of meta model where the role interface is located.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of the personal access role where the role interface will be connected

  • personal_access_role (PersonalAccessRoleAddRoleInterface) (defaults to: nil)

    DTO containing role interface that to be connected



122
123
124
125
126
127
128
129
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 122

def add_role_interface(personal_access_role_uri, personal_access_role = nil)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  payload = UU::OS::PersonalAccessRole::PersonalAccessRoleAddRoleInterface.new(personal_access_role).to_json

  UU::OS::QoS::QoSHandler.auto_retry do
    svc.post('addRoleInterface', personal_access_role_uri, payload)
  end
end

- (UU::OS::UESURI) create(location_uri, personal_access_role = nil)

Creates a new personal access role. The command creates a new personal access role in a specified location. At the very least meta artifact must be specified in PersonalAccessRoleCreate DTO. Competent role for the new role will be selected as the most suitable according to the specified container and meta artifact (executive/authorized role with connected interface), or can be also specified in PersonalAccessRoleCreate DTO.

Parameters:

  • location_uri (String, UU::OS::UESURI)

    UESURI of the folder/org. unit/meta model where the personal access role will be created.

  • personal_access_role (PersonalAccessRoleCreate) (defaults to: nil)

    DTO containing attributes of the new personal access role

Returns:

  • (UU::OS::UESURI)

    UESURI of the new personal access role @raise UESPersonalAccessRoleRTException



65
66
67
68
69
70
71
72
73
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 65

def create(location_uri, personal_access_role = nil)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  payload = UU::OS::PersonalAccessRole::PersonalAccessRoleCreate.new(personal_access_role).to_json

  UU::OS::QoS::QoSHandler.auto_retry do
    res = svc.post('create', location_uri, payload)
    return UU::OS::UESURI.new(res)
  end
end

- (Object) deactivate_access(personal_access_role_uri)

This command deactivates a personal access role. The personal access role will lose access to its territory.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of a personal access role that the access will be canceled.



135
136
137
138
139
140
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 135

def deactivate_access(personal_access_role_uri)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  UU::OS::QoS::QoSHandler.auto_retry do
    svc.post('deactivateAccess', personal_access_role_uri)
  end
end

- (PersonalAccessRoleAttributes) get_attributes(personal_access_role_uri)

This command returns attributes representing the personal access role specified by the personal_access_role_uri parameter. The command does not change the state of the role in the system.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of a personal access role whose attributes are returned

Returns:



29
30
31
32
33
34
35
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 29

def get_attributes(personal_access_role_uri)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  UU::OS::QoS::QoSHandler.auto_retry do
    res = svc.get('getAttributes', personal_access_role_uri)
    return PersonalAccessRole::PersonalAccessRoleAttributes.new(res)
  end
end

- (UU::OS::REST::ResultList<PersonalAccessRole::PersonalAccessRoleGetRoleInterfaceList, PersonalAccessRole::PersonalAccessRoleGetRoleInterfaceListItem>) get_role_interface_list(personal_access_role_uri, criteria = nil)

Returns list of the role interfaces that are connected to the specified access role. 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 by code in case are equal) of an interface by default.

Available parameters are: name and code

See UESQuery Documentation.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of the personal access role for which the connected role interfaces are to be listed

  • criteria (PersonalAccessRoleGetRoleInterfaceList) (defaults to: nil)

    DTO containing criteria for listing personal access role interfaces.

Returns:



88
89
90
91
92
93
94
95
96
97
98
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 88

def get_role_interface_list(personal_access_role_uri, criteria = nil)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  dto = PersonalAccessRole::PersonalAccessRoleGetRoleInterfaceList.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', personal_access_role_uri)
    return UU::OS::REST::ResultList.new(PersonalAccessRole::PersonalAccessRoleGetRoleInterfaceList, PersonalAccessRole::PersonalAccessRoleGetRoleInterfaceListItem, res)
  end
end

- (Object) remove_role_interface(personal_access_role_uri, personal_access_role = nil)

The command removes role interface connection from the specified personal access role. Only connected interfaces can be disconnected from the personal access role.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of the personal access role where the role interface will be disconnected

  • personal_access_role (PersonalAccessRoleRemoveRoleInterface) (defaults to: nil)

    DTO containing role interface that to be disconnected



105
106
107
108
109
110
111
112
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 105

def remove_role_interface(personal_access_role_uri, personal_access_role = nil)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  payload = UU::OS::PersonalAccessRole::PersonalAccessRoleRemoveRoleInterface.new(personal_access_role).to_json

  UU::OS::QoS::QoSHandler.auto_retry do
    svc.post('removeRoleInterface', personal_access_role_uri, payload)
  end
end

- (UU::OS::UESURI) set_attributes(personal_access_role_uri, personal_access_role = nil)

Command for setting attributes of a personal access role. The command can't modify references to objects like location, competent role and so on.

Parameters:

  • personal_access_role_uri (String, UU::OS::UESURI)

    UESURI of the personal access role whose attributes are to be changed

  • personal_access_role (PersonalAccessRoleSetAttributes) (defaults to: nil)

    DTO containing new attributes the personal access role

Returns:



44
45
46
47
48
49
50
51
52
# File 'uu_os_client-0.10.6/lib/uu/os/personal_access_role.rb', line 44

def set_attributes(personal_access_role_uri, personal_access_role = nil)
  svc = UU::OS::REST::RemoteClient.new(PersonalAccessRole)
  payload = UU::OS::PersonalAccessRole::PersonalAccessRoleSetAttributes.new(personal_access_role).to_json

  UU::OS::QoS::QoSHandler.auto_retry do
    res = svc.post('setAttributes', personal_access_role_uri, payload)
    return UU::OS::UESURI.new(res)
  end
end