Class: Google::Apis::JobsV3p1beta1::CompensationEntry

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/jobs_v3p1beta1/classes.rb,
generated/google/apis/jobs_v3p1beta1/representations.rb,
generated/google/apis/jobs_v3p1beta1/representations.rb

Overview

A compensation entry that represents one component of compensation, such as base pay, bonus, or other compensation type. Annualization: One compensation entry can be annualized if

  • it contains valid amount or range.
  • and its expected_units_per_year is set or can be derived. Its annualized range is determined as (amount or range) times expected_units_per_year.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ CompensationEntry

Returns a new instance of CompensationEntry.


508
509
510
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 508

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#amountGoogle::Apis::JobsV3p1beta1::Money

Represents an amount of money with its currency type. Corresponds to the JSON property amount


470
471
472
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 470

def amount
  @amount
end

#descriptionString

Optional. Compensation description. For example, could indicate equity terms or provide additional context to an estimated bonus. Corresponds to the JSON property description

Returns:

  • (String)

477
478
479
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 477

def description
  @description
end

#expected_units_per_yearFloat

Optional. Expected number of units paid each year. If not specified, when Job.employment_types is FULLTIME, a default value is inferred based on unit. Default values:

  • HOURLY: 2080
  • DAILY: 260
  • WEEKLY: 52
  • MONTHLY: 12
  • ANNUAL: 1 Corresponds to the JSON property expectedUnitsPerYear

Returns:

  • (Float)

489
490
491
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 489

def expected_units_per_year
  @expected_units_per_year
end

#rangeGoogle::Apis::JobsV3p1beta1::CompensationRange

Compensation range. Corresponds to the JSON property range


494
495
496
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 494

def range
  @range
end

#typeString

Optional. Compensation type. Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED. Corresponds to the JSON property type

Returns:

  • (String)

500
501
502
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 500

def type
  @type
end

#unitString

Optional. Frequency of the specified amount. Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED. Corresponds to the JSON property unit

Returns:

  • (String)

506
507
508
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 506

def unit
  @unit
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


513
514
515
516
517
518
519
520
# File 'generated/google/apis/jobs_v3p1beta1/classes.rb', line 513

def update!(**args)
  @amount = args[:amount] if args.key?(:amount)
  @description = args[:description] if args.key?(:description)
  @expected_units_per_year = args[:expected_units_per_year] if args.key?(:expected_units_per_year)
  @range = args[:range] if args.key?(:range)
  @type = args[:type] if args.key?(:type)
  @unit = args[:unit] if args.key?(:unit)
end