Sha256: 486887a0883fe7f7eefc025616a2bda1adf07386176b8c1c69ef5a3bddd97eb0
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
require_relative_all 'repositories' module Locomotive module Steam class Repositories < Struct.new(:current_site, :locale, :configuration) include Morphine register :adapter do build_adapter(configuration.adapter) end register :site do SiteRepository.new(adapter, nil, locale) end register :page do PageRepository.new(adapter, current_site, locale) end register :snippet do SnippetRepository.new(adapter, current_site, locale) end register :content_type do ContentTypeRepository.new(adapter, current_site, locale) end register :content_entry do ContentEntryRepository.new(adapter, current_site, locale, content_type) end register :theme_asset do ThemeAssetRepository.new(adapter, current_site, locale) end register :translation do TranslationRepository.new(adapter, current_site, locale) end def build_adapter(options) name = ((options || {})[:name] || :filesystem).to_s require_relative "adapters/#{name}" klass = "Locomotive::Steam::#{name.camelize}Adapter".constantize klass.new(options) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
locomotivecms_steam-1.0.0.pre.alpha | lib/locomotive/steam/repositories.rb |