Sha256: 5c831b6301e3cc65c50fe36d832e0c343a09b842f25ce3e58e339e4d2f617603

Contents?: true

Size: 702 Bytes

Versions: 4

Compression:

Stored size: 702 Bytes

Contents

module Brightbox
  class User < Api
    def attributes
      fog_model.attributes
    end

    def to_row
      attributes.merge({ :accounts => accounts.size })
    end

    def self.all
      conn.users
    end

    def self.get(id)
      u = conn.users.get id
      (u.nil? or u.id != id) ? nil : u
    end

    def self.default_field_order
      [:id, :name, :email_address, :accounts]
    end

    def accounts
      @accounts ||= fog_model.accounts.collect { |a| Account.new(a["id"]) }
    end

    def to_s
      @id
    end

    def save
      fog_model.save
    end

    def ssh_key_set?
      !ssh_key.to_s.strip.empty?
    end

    def render_cell
      handle if fog_model
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
brightbox-cli-1.1.0 lib/brightbox-cli/users.rb
brightbox-cli-1.0.0 lib/brightbox-cli/users.rb
brightbox-cli-1.0.0.rc2 lib/brightbox-cli/users.rb
brightbox-cli-1.0.0.rc1 lib/brightbox-cli/users.rb