Sha256: 1cbc0afa2c274901f2d12c10a52f9a76d626c5de1722fafdcab981cbdf8d857e

Contents?: true

Size: 1.3 KB

Versions: 16

Compression:

Stored size: 1.3 KB

Contents

require "fog/brightbox/models/compute/collaboration"

module Fog
  module Compute
    class Brightbox
      class Collaborations < Fog::Collection
        model Fog::Compute::Brightbox::Collaboration

        def all
          data = service.list_collaborations
          load(data)
        end

        def get(identifier)
          return nil if identifier.nil? || identifier == ""
          data = service.get_collaboration(identifier)
          new(data)
        rescue Excon::Errors::NotFound
          nil
        end

        # Invites a user (via an email) to collaborate on the currently scoped
        # account at the +role+ level.
        #
        # @param [String] email The email address to use for the invitation
        # @param [String] role The role being granted. Only (+admin+ is
        #   currently supported
        # @return [Fog::Compute::Brightbox::Collaboration]
        #
        def invite(email, role)
          return nil if email.nil? || email == ""
          return nil if role.nil? || role == ""
          options = { :email => email, :role => role }
          data = service.create_collaboration(options)
          new(data)
        end

        def destroy
          requires :identity
          service.destroy_collaboration(identity)
          true
        end
      end
    end
  end
end

Version data entries

16 entries across 14 versions & 3 rubygems

Version Path
fog-brightbox-1.0.0.rc1 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.16.1 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.16.0 lib/fog/brightbox/models/compute/collaborations.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-brightbox-0.15.0/lib/fog/brightbox/models/compute/collaborations.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-brightbox-0.15.0/lib/fog/brightbox/models/compute/collaborations.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-brightbox-0.15.0/lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.15.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.14.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.13.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.12.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.11.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.10.1 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.10.0 lib/fog/brightbox/models/compute/collaborations.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-brightbox-0.9.0/lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.9.0 lib/fog/brightbox/models/compute/collaborations.rb
fog-brightbox-0.8.0 lib/fog/brightbox/models/compute/collaborations.rb