Module: Gearhead

Defined in:
lib/gearhead.rb,
lib/gearhead/gear.rb,
lib/gearhead/utils.rb,
lib/gearhead/engine.rb,
lib/gearhead/router.rb,
lib/gearhead/gearbox.rb,
lib/gearhead/version.rb,
lib/gearhead/registry.rb,
lib/gearhead/gear_lookup.rb,
lib/gearhead/actions/show.rb,
lib/gearhead/actions/index.rb,
lib/gearhead/configuration.rb,
lib/gearhead/actions/create.rb,
lib/gearhead/actions/update.rb,
lib/gearhead/params_builder.rb,
lib/gearhead/resource_finder.rb,
lib/gearhead/gears_controller.rb,
lib/gearhead/extensions/finder.rb,
lib/gearhead/paginators/lookup.rb,
lib/gearhead/extensions/actions.rb,
lib/gearhead/extensions/scoping.rb,
lib/gearhead/serializers/lookup.rb,
lib/gearhead/extensions/querying.rb,
lib/gearhead/paginators/paginator.rb,
lib/gearhead/extensions/attributes.rb,
lib/gearhead/extensions/pagination.rb,
lib/gearhead/extensions/associations.rb,
lib/gearhead/extensions/serialization.rb,
lib/gearhead/extensions/custom_actions.rb,
lib/gearhead/paginators/pagy_paginator.rb,
lib/gearhead/extensions/enabled_actions.rb,
lib/gearhead/extensions/permitted_params.rb,
lib/generators/gearhead/gear/gear_generator.rb,
lib/gearhead/paginators/will_paginate_paginator.rb,
lib/generators/gearhead/install/install_generator.rb,
lib/gearhead/serializers/invalid_request_serializer.rb,
lib/gearhead/serializers/invalid_resource_serializer.rb,
lib/gearhead/serializers/fast_jsonapi/resource_serializer.rb,
lib/gearhead/serializers/fast_jsonapi/collection_serializer.rb,
lib/gearhead/serializers/fast_jsonapi/invalid_request_serializer.rb,
lib/gearhead/serializers/fast_jsonapi/invalid_resource_serializer.rb,
lib/gearhead/serializers/active_model_serializers/resource_serializer.rb,
lib/gearhead/serializers/active_model_serializers/collection_serializer.rb,
lib/gearhead/serializers/active_model_serializers/invalid_request_serializer.rb,
lib/gearhead/serializers/active_model_serializers/invalid_resource_serializer.rb

Defined Under Namespace

Modules: Actions, Extensions, Generators, Paginators, Serializers, Settings, Utils Classes: AutomountConfiguration, Configuration, Engine, Gear, GearLookup, Gearbox, GearsController, PaginationConfiguration, ParamsBuilder, RansackConfiguration, Registry, ResourceFinder, Router, SerializationConfiguration

Constant Summary collapse

VERSION =
'0.4.0'

Class Method Summary collapse

Class Method Details

.configObject



15
16
17
# File 'lib/gearhead.rb', line 15

def self.config
  @config ||= Configuration.new
end

.gear_for(request) ⇒ Object



35
36
37
# File 'lib/gearhead.rb', line 35

def self.gear_for(request)
  GearLookup.for(request)
end

.gearboxObject



7
8
9
# File 'lib/gearhead.rb', line 7

def self.gearbox
  @gearbox ||= Gearbox.new
end

.register(resource_class, options = {}, &block) ⇒ Object



25
26
27
28
29
# File 'lib/gearhead.rb', line 25

def self.register(resource_class, options = {}, &block)
  gear = Gear.new(resource_class, options)
  gear.instance_exec(&block)
  registry.register(gear)
end

.registryObject



31
32
33
# File 'lib/gearhead.rb', line 31

def self.registry
  @registry ||= Registry.new
end

.routes(rails_router) ⇒ Object



11
12
13
# File 'lib/gearhead.rb', line 11

def self.routes(rails_router)
  gearbox.routes(rails_router)
end

.setup {|config| ... } ⇒ Object

Yields:



19
20
21
22
23
# File 'lib/gearhead.rb', line 19

def self.setup
  gearbox.setup!
  yield config
  gearbox.prepare!
end