class TicketAbstractorClient::Jira::FieldsMeta

Attributes

endpoint[RW]
updated_at[R]

Public Class Methods

new(endpoint) click to toggle source
Calls superclass method
# File lib/ticket_abstractor_client/jira/fields_meta.rb, line 7
def initialize(endpoint)
  super()
  @endpoint = endpoint
  update!
end

Public Instance Methods

expired?() click to toggle source
# File lib/ticket_abstractor_client/jira/fields_meta.rb, line 18
def expired?
  expiration_period = TicketAbstractorClient.configuration.jira_meta_expiration_period
  (Time.now.to_i - @updated_at) > expiration_period
end
update!() click to toggle source
# File lib/ticket_abstractor_client/jira/fields_meta.rb, line 13
def update!
  get_meta_data
  update(@meta_data)
end

Private Instance Methods

filter_meta_data(raw_meta_data) click to toggle source
# File lib/ticket_abstractor_client/jira/fields_meta.rb, line 31
def filter_meta_data(raw_meta_data)
  raw_meta_data.each_with_object({}) { |field, meta| meta[field['id']] = field['schema'] }
end
get_meta_data() click to toggle source
# File lib/ticket_abstractor_client/jira/fields_meta.rb, line 25
def get_meta_data
  raw_meta_data = Client.new(@endpoint).get_all_fields
  @meta_data = filter_meta_data(raw_meta_data)
  @updated_at = Time.now.to_i
end