Module: ZendeskAPI

Defined in:
lib/zendesk_api/track_changes.rb,
lib/zendesk_api.rb,
lib/zendesk_api/verbs.rb,
lib/zendesk_api/client.rb,
lib/zendesk_api/rescue.rb,
lib/zendesk_api/actions.rb,
lib/zendesk_api/helpers.rb,
lib/zendesk_api/trackie.rb,
lib/zendesk_api/version.rb,
lib/zendesk_api/resource.rb,
lib/zendesk_api/lru_cache.rb,
lib/zendesk_api/collection.rb,
lib/zendesk_api/association.rb,
lib/zendesk_api/sideloading.rb,
lib/zendesk_api/configuration.rb,
lib/zendesk_api/resources/misc.rb,
lib/zendesk_api/resources/user.rb,
lib/zendesk_api/resources/forum.rb,
lib/zendesk_api/resources/ticket.rb,
lib/zendesk_api/middleware/request/retry.rb,
lib/zendesk_api/middleware/response/gzip.rb,
lib/zendesk_api/middleware/request/upload.rb,
lib/zendesk_api/middleware/response/logger.rb,
lib/zendesk_api/middleware/response/deflate.rb,
lib/zendesk_api/middleware/response/callback.rb,
lib/zendesk_api/middleware/request/etag_cache.rb,
lib/zendesk_api/middleware/response/parse_iso_dates.rb

Overview

Shamelessly stolen and modified from github.com/archan937/dirty_hashy

Defined Under Namespace

Modules: Associations, Create, Destroy, Helpers, Middleware, Read, Rescue, Save, Search, Sideloading, TrackChanges, Update, Verbs Classes: Activity, Association, Attachment, Bookmark, CRMData, CRMDataStatus, Category, Client, Collection, Configuration, CreateResource, CustomRole, Data, DataResource, DeleteResource, Forum, ForumSubscription, GroupMembership, LRUCache, Locale, Macro, MobileDevice, Organization, ReadResource, Request, Resource, SatisfactionRating, Setting, SingularResource, SuspendedTicket, Ticket, TicketComment, TicketField, TicketMetric, Topic, TopicSubscription, Trackie, UpdateResource, Upload, User, View, ViewExecution, ViewRow

Constant Summary collapse

VERSION =
"0.1.6"

Class Method Summary collapse

Class Method Details

.const_missing(*args) ⇒ Object

Make sure Rails’ overwriting of const_missing doesn’t cause trouble



314
315
316
# File 'lib/zendesk_api/association.rb', line 314

def const_missing(*args)
  Object.const_missing(*args)
end

.get_class(resource) ⇒ Object

Allows using has and has_many without having class defined yet Guesses at Resource, if it’s anything else and the class is later reopened under a different superclass, an error will be thrown



321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
# File 'lib/zendesk_api/association.rb', line 321

def get_class(resource)
  return false if resource.nil?
  res = ZendeskAPI::Helpers.modulize_string(resource.to_s).split("::")

  begin
    res[1..-1].inject(ZendeskAPI.const_get(res[0])) do |iter, k|
      begin
        iter.const_get(k)
      rescue
        iter.const_set(k, Class.new(Resource))
      end
    end
  rescue NameError
    ZendeskAPI.const_set(res[0], Class.new(Resource))
  end
end