Class: UU::OperationRegistry::Domain

Inherits:
BaseMethods
  • Object
show all
Defined in:
lib/uu/operation_registry/domain.rb

Overview

Domain.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(session = nil) ⇒ Domain

Creates a new instance of Domain.

Parameters:

  • session (UU::OS::Security::Session) (defaults to: nil)

    Session to use for remote calls.



18
19
20
# File 'lib/uu/operation_registry/domain.rb', line 18

def initialize(session = nil)
  super
end

Class Method Details

.create(cloud_uri, attributes) ⇒ UU::OS::UESURI

Creates a new domain. This method is a convenience shortcut for the #create instance method.

Parameters:

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

    Cloud URI.

  • attributes (Hash)

    Domain attributes.

Returns:

  • (UU::OS::UESURI)

    UESURI of the created domain.



# File 'lib/uu/operation_registry/domain.rb', line 33

.delete(domain_uri, parameters = {}) ⇒ void

This method returns an undefined value.

Deletes the specified domain from the registry. This method is a convenience shortcut for the #delete instance method.

Parameters:

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

    Domain URI.



91
92
93
# File 'lib/uu/operation_registry/domain.rb', line 91

def self.delete(domain_uri, parameters = {})
  self.new(UU::OS::Security::Session.current_session).delete(domain_uri, parameters)
end

.get_attributes(domain_uri) ⇒ Hash

Gets the attributes of the domain specified by domain URI and returns its detail. This method is a convenience shortcut for the #get_attributes instance method.

Parameters:

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

    Domain URI.

Returns:

  • (Hash)

    Domain attributes.



# File 'lib/uu/operation_registry/domain.rb', line 46

.get_domain_list(cloud_uri, criteria = {}) ⇒ UU::OS::Persistence::PagedResult<Hash>

Returns list of domains. This method is a convenience shortcut for the #get_domain_list instance method.

Returns:

  • (UU::OS::Persistence::PagedResult<Hash>)

    Paged result set.

See Also:



117
118
119
# File 'lib/uu/operation_registry/domain.rb', line 117

def self.get_domain_list(cloud_uri, criteria = {})
  self.new(UU::OS::Security::Session.current_session).get_domain_list(cloud_uri, criteria)
end

.set_attributes(domain_uri, attributes) ⇒ UU::OS::UESURI

Sets attributes of an domain. This method is a convenience shortcut for the #set_attributes instance method.

Parameters:

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

    Domain URI.

Returns:

  • (UU::OS::UESURI)

    UESURI of the updated domain.



# File 'lib/uu/operation_registry/domain.rb', line 62

Instance Method Details

#create(cloud_uri, attributes) ⇒ UU::OS::UESURI

Creates a new domain.

Parameters:

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

    Cloud URI.

  • attributes (Hash)

    Domain attributes.

Options Hash (attributes):

  • name (String)

    Domain name. May be nil.

  • code (String)

    Domain code. May be nil.

  • description (String)

    Domain description. May be nil.

  • type (String, UU::OperationRegistry::DomainType)

    Domain type.

Returns:

  • (UU::OS::UESURI)

    UESURI of the created domain.



# File 'lib/uu/operation_registry/domain.rb', line 22

#delete(domain_uri, parameters = {}) ⇒ void

This method returns an undefined value.

Deletes the specified domain from the registry.

Domain can be successfully deleted if all these conditions are met:

  1. no GatewayDomainLink exists referencing this domain (via domainUri)

Examples:

Domain deletion

require "uu_operation_registry"

UU::OS::Security::Session.("operation_registry_authority")

domain = UU::OperationRegistry::Domain.new(UU::OS::Security::Session.current_session)
domain.delete("ues:OT-BT[99923616732452117]:PLUS4U[5819e14581e8a357881e5996]")


83
84
85
# File 'lib/uu/operation_registry/domain.rb', line 83

def delete(domain_uri, parameters = {})
  client.invoke(:delete, domain_uri, parameters: parameters)
end

#get_attributes(domain_uri) ⇒ Hash

Gets the attributes of the domain specified by domain URI and returns its detail.

Parameters:

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

    Domain URI.

Returns:

  • (Hash)

    Domain attributes.



# File 'lib/uu/operation_registry/domain.rb', line 40

#get_domain_list(cloud_uri, criteria = {}) ⇒ UU::OS::Persistence::PagedResult<Hash>

Returns a list of domains at the given cloud. Command does not return all domains, only a sublist. The list of returned domains could be filtered using Mongo Query.

Parameters:

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

    Cloud URI.

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

    Criteria for listing domains.

Options Hash (criteria):

  • query (String)

    Mongo Query to filter the result set. See Mongo Query tutorial. Allowed query filter document fields: code, type

  • pageIndex (Fixnum)

    Result set page index.

  • pageSize (Fixnum)

    Result set page size.

Returns:

  • (UU::OS::Persistence::PagedResult<Hash>)

    Paged result set.



108
109
110
# File 'lib/uu/operation_registry/domain.rb', line 108

def get_domain_list(cloud_uri, criteria = {})
  @client.invoke(:getDomainList, cloud_uri, parameters: criteria)
end

#set_attributes(domain_uri, attributes) ⇒ UU::OS::UESURI

Sets attributes of an domain.

Parameters:

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

    Domain URI.

  • attributes (Hash)

    Domain attributes.

Options Hash (attributes):

  • code (String)

    Domain code. May be nil.

  • description (String)

    Domain description. May be nil.

Returns:

  • (UU::OS::UESURI)

    UESURI of the updated domain.



# File 'lib/uu/operation_registry/domain.rb', line 53