Sha256: a207e8935ecb57d711bb72ec50a8cb79c288ac4a887e9d0e17110029d717bb9d

Contents?: true

Size: 1.51 KB

Versions: 660

Compression:

Stored size: 1.51 KB

Contents

require_relative 'portal_base'

module Spaceship
  module Portal
    class Person < PortalBase
      # @return (String) Person Id
      attr_accessor :person_id

      # @return (String) First name
      attr_accessor :firstname

      # @return (String) Last name
      attr_accessor :lastname

      # @return (String) Email Address
      attr_accessor :email_address

      # @return (String) Developer status (active, inactive)
      attr_accessor :developer_status

      # @return (String) Joined Date
      attr_accessor :joined

      # @return (String) Id in Team scope
      attr_accessor :team_member_id

      # @return (String) Role (member, admin or agent)
      attr_accessor :type

      attr_mapping(
        'personId' => :person_id,
        'firstName' => :firstname,
        'lastName' => :lastname,
        'email' => :email_address,
        'developerStatus' => :developer_status,
        'dateJoined' => :joined,
        'teamMemberId' => :team_member_id
      )

      def remove!
        client.team_remove_member!(team_member_id)
      end

      def change_role(role)
        client.team_set_role(team_member_id, role)
      end

      class << self
        def factory(attrs)
          begin
            attrs['dateJoined'] = Time.parse(attrs['dateJoined'])
          rescue TypeError
            # Raised if we start getting integer timestamps
          rescue ArgumentError
            # Raised if the string's format can't be parsed
          end
          return self.new(attrs)
        end
      end
    end
  end
end

Version data entries

660 entries across 660 versions & 5 rubygems

Version Path
fastlane-2.138.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.137.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.136.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.135.2 spaceship/lib/spaceship/portal/person.rb
fastlane-2.135.1 spaceship/lib/spaceship/portal/person.rb
fastlane-2.135.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.134.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.133.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190930200026 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190929200020 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190928200106 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190927200017 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190926200023 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190925200108 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190924200030 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190923200017 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190922200014 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190921200021 spaceship/lib/spaceship/portal/person.rb
fastlane-2.132.0.beta.20190920200012 spaceship/lib/spaceship/portal/person.rb