1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/ecloud/models/compute/admin_organization.rb

44 lines
1.7 KiB
Ruby
Raw Normal View History

2012-06-07 12:50:11 -04:00
module Fog
module Compute
class Ecloud
class AdminOrganization < Fog::Ecloud::Model
identity :href
2012-11-27 19:57:16 -05:00
attribute :name, :aliases => :Name
attribute :type, :aliases => :Type
attribute :other_links, :aliases => :Links, :squash => :Link
2012-06-07 12:50:11 -04:00
attribute :multifactor_summary, :aliases => :MultifactorSummary
2012-11-27 19:57:16 -05:00
attribute :support_access, :aliases => :SupportAccess
2012-06-07 12:50:11 -04:00
def ssh_keys
@ssh_keys = Fog::Compute::Ecloud::SshKeys.new(:service => service, :href => "/cloudapi/ecloud/admin/sshKeys/organizations/#{organization.id}")
2012-06-07 12:50:11 -04:00
end
def password_complexity_rules
@password_complexity_rules = Fog::Compute::Ecloud::PasswordComplexityRules.new(:service => service, :href => "/cloudapi/ecloud/admin/organizations/#{organization.id}/passwordComplexityRules")
2012-06-07 12:50:11 -04:00
end
def login_banner
@login_banner = Fog::Compute::Ecloud::LoginBanner.new(:service => service, :href => "/cloudapi/ecloud/admin/organizations/#{organization.id}/loginBanner")
2012-06-07 12:50:11 -04:00
end
def authentication_levels
@authentication_levels = Fog::Compute::Ecloud::AuthenticationLevels.new(:service => service, :href => "/cloudapi/ecloud/admin/organizations/#{organization.id}/authenticationLevels")
2012-06-07 12:50:11 -04:00
end
def id
href.scan(/\d+/)[0]
end
2012-11-27 19:57:16 -05:00
def organization
@organization ||= begin
reload unless other_links
organization_link = other_links.find{|l| l[:type] == "application/vnd.tmrk.cloud.organization"}
self.service.organizations.new(organization_link)
2012-11-27 19:57:16 -05:00
end
2012-06-07 12:50:11 -04:00
end
end
end
end
end