Class: OvirtSDK4::UserService

Inherits:
Service
  • Object
show all
Defined in:
lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb

Instance Method Summary collapse

Methods inherited from Service

#inspect, #to_s

Instance Method Details

#event_subscriptions_serviceEventSubscriptionsService

List of event-subscriptions for this user.

Returns:


28917
28918
28919
# File 'lib/ovirtsdk4/services.rb', line 28917

def event_subscriptions_service
  @event_subscriptions_service ||= EventSubscriptionsService.new(self, 'eventsubscriptions')
end

#get(opts = {}) ⇒ User

Gets the system user information.

Usage:

GET /ovirt-engine/api/users/1234

Will return the user information:

<user href="/ovirt-engine/api/users/1234" id="1234">
  <name>admin</name>
  <link href="/ovirt-engine/api/users/1234/sshpublickeys" rel="sshpublickeys"/>
  <link href="/ovirt-engine/api/users/1234/roles" rel="roles"/>
  <link href="/ovirt-engine/api/users/1234/permissions" rel="permissions"/>
  <link href="/ovirt-engine/api/users/1234/tags" rel="tags"/>
  <department></department>
  <domain_entry_id>23456</domain_entry_id>
  <email>[email protected]</email>
  <last_name>Lastname</last_name>
  <namespace>*</namespace>
  <principal>user1</principal>
  <user_name>[email protected]</user_name>
  <domain href="/ovirt-engine/api/domains/45678" id="45678">
    <name>domain-authz</name>
  </domain>
</user>

Parameters:

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :follow (String)

    Indicates which inner links should be followed. The objects referenced by these links will be fetched as part of the current request. See here for details.

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.

Returns:


28828
28829
28830
# File 'lib/ovirtsdk4/services.rb', line 28828

def get(opts = {})
  internal_get(GET, opts)
end

#groups_serviceDomainUserGroupsService

Locates the groups service.

Returns:


28926
28927
28928
# File 'lib/ovirtsdk4/services.rb', line 28926

def groups_service
  @groups_service ||= DomainUserGroupsService.new(self, 'groups')
end

#permissions_serviceAssignedPermissionsService

Locates the permissions service.

Returns:


28935
28936
28937
# File 'lib/ovirtsdk4/services.rb', line 28935

def permissions_service
  @permissions_service ||= AssignedPermissionsService.new(self, 'permissions')
end

#remove(opts = {}) ⇒ Object

Removes the system user.

Usage:

DELETE /ovirt-engine/api/users/1234

Parameters:

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :async (Boolean)

    Indicates if the remove should be performed asynchronously.

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.


28859
28860
28861
# File 'lib/ovirtsdk4/services.rb', line 28859

def remove(opts = {})
  internal_remove(REMOVE, opts)
end

#roles_serviceAssignedRolesService

Locates the roles service.

Returns:


28944
28945
28946
# File 'lib/ovirtsdk4/services.rb', line 28944

def roles_service
  @roles_service ||= AssignedRolesService.new(self, 'roles')
end

#service(path) ⇒ Service

Locates the service corresponding to the given path.

Parameters:

  • path (String)

    The path of the service.

Returns:

  • (Service)

    A reference to the service.

Raises:


28973
28974
28975
28976
28977
28978
28979
28980
28981
28982
28983
28984
28985
28986
28987
28988
28989
28990
28991
28992
28993
28994
28995
28996
28997
28998
28999
29000
29001
29002
29003
29004
29005
29006
29007
29008
29009
29010
29011
29012
29013
29014
# File 'lib/ovirtsdk4/services.rb', line 28973

def service(path)
  if path.nil? || path == ''
    return self
  end
  if path == 'eventsubscriptions'
    return event_subscriptions_service
  end
  if path.start_with?('eventsubscriptions/')
    return event_subscriptions_service.service(path[19..-1])
  end
  if path == 'groups'
    return groups_service
  end
  if path.start_with?('groups/')
    return groups_service.service(path[7..-1])
  end
  if path == 'permissions'
    return permissions_service
  end
  if path.start_with?('permissions/')
    return permissions_service.service(path[12..-1])
  end
  if path == 'roles'
    return roles_service
  end
  if path.start_with?('roles/')
    return roles_service.service(path[6..-1])
  end
  if path == 'sshpublickeys'
    return ssh_public_keys_service
  end
  if path.start_with?('sshpublickeys/')
    return ssh_public_keys_service.service(path[14..-1])
  end
  if path == 'tags'
    return tags_service
  end
  if path.start_with?('tags/')
    return tags_service.service(path[5..-1])
  end
  raise Error.new("The path \"#{path}\" doesn't correspond to any service")
end

#ssh_public_keys_serviceSshPublicKeysService

Locates the ssh_public_keys service.

Returns:


28953
28954
28955
# File 'lib/ovirtsdk4/services.rb', line 28953

def ssh_public_keys_service
  @ssh_public_keys_service ||= SshPublicKeysService.new(self, 'sshpublickeys')
end

#tags_serviceAssignedTagsService

Locates the tags service.

Returns:


28962
28963
28964
# File 'lib/ovirtsdk4/services.rb', line 28962

def tags_service
  @tags_service ||= AssignedTagsService.new(self, 'tags')
end

#update(user, opts = {}) ⇒ User

Updates information about the user.

Only the user_options field can be updated.

For example, to update user options:

PUT /ovirt-engine/api/users/123

With a request body like this:

<user>
   <user_options>
      <property>
         <name>test</name>
         <value>test1</value>
      </property>
   </user_options>
</user>

Parameters:

  • user (User)

    The user to update.

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.

Returns:


28908
28909
28910
# File 'lib/ovirtsdk4/services.rb', line 28908

def update(user, opts = {})
  internal_update(user, User, UPDATE, opts)
end