Module: Airbnb::Service::Hongbao::Api::UserRequestSmartclientModule::GenerateInstanceMethods

Defined in:
lib/airbnb/service/hongbao/api/hongbao_data_smartclient_modules.rb

Constant Summary collapse

JSON_NAME_OVERRIDES =
{
}.freeze

Instance Method Summary collapse

Instance Method Details

#to_hash(options = nil) ⇒ Object Also known as: to_h

options:

case_from_idl: use the exact case from IDL file to when generating the hash key. Default is false.
ignore_nil_field: do not generate key in the hash, if the value is nil. Useful for inspect or data transport. Default is false.


274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
# File 'lib/airbnb/service/hongbao/api/hongbao_data_smartclient_modules.rb', line 274

def to_hash(options = nil)
  res = {}
  options ||= {}
  case_from_idl = options.nil? ? false : options[:case_from_idl]
  ignore_nil_field = options.nil? ? false : options[:ignore_nil_field]
  if case_from_idl
    if !(ignore_nil_field && user_id.nil?)
      _json_key_name = JSON_NAME_OVERRIDES.key?(:userId) ? JSON_NAME_OVERRIDES[:userId] : :userId
      res[_json_key_name] = user_id
    end
  else # enforcing to use snake case
    if !(ignore_nil_field && user_id.nil?)
      _json_key_name = JSON_NAME_OVERRIDES.key?(:userId) ?  JSON_NAME_OVERRIDES[:userId] : :user_id
      res[_json_key_name] = user_id
    end
  end
  res
end

#to_json(options = nil) ⇒ Object



267
268
269
# File 'lib/airbnb/service/hongbao/api/hongbao_data_smartclient_modules.rb', line 267

def to_json(options = nil)
  JSON.generate(to_hash(options))
end

#user_idObject



265
# File 'lib/airbnb/service/hongbao/api/hongbao_data_smartclient_modules.rb', line 265

def user_id; @userId; end