class EvilEvents::Core::Events::Serializers::Hash::Factory
@api private @since 0.4.0
Public Instance Methods
build_config()
click to toggle source
@return [Hash::Config]
@api private @since 0.4.0
# File lib/evil_events/core/events/serializers/hash/factory.rb, line 12 def build_config options = EvilEvents::Core::Bootstrap[:config].settings.serializers.hashing Config.new.tap { |conf| conf.settings.options = options } end
build_engine(config)
click to toggle source
@param config [Hash::Config] @raise [EvilEvents::UnrecognizedSerializationEngineError] @return [Base::AbstractEngine]
@api private @since 0.4.0
# File lib/evil_events/core/events/serializers/hash/factory.rb, line 23 def build_engine(config) Engines.resolve(config.settings.options[:engine]).new(config) rescue Dry::Container::Error raise EvilEvents::UnrecognizedSerializationEngineError end
build_packer(engine, _config)
click to toggle source
@param engine [Base::AbstractEngine] @param config [Hash::Config] @return [Hash::Packer]
@api private @since 0.4.0
# File lib/evil_events/core/events/serializers/hash/factory.rb, line 35 def build_packer(engine, _config) Packer.new(engine) end
build_unpacker(engine, _config)
click to toggle source
@param engine [Base::AbstractEngine] @param config [Hash::Config] @return [Hash::Unpacker]
@api private @since 0.4.0
# File lib/evil_events/core/events/serializers/hash/factory.rb, line 45 def build_unpacker(engine, _config) Unpacker.new(engine) end
create_adapter(engine, config, packer, unpacker)
click to toggle source
@param engine [Base::AbstractEngine] @param config [Hash::Config] @param packer [Hash::Packer] @param unpacker [Hash::Unpacker] @return [Hash]
@api private @since 0.4.0
# File lib/evil_events/core/events/serializers/hash/factory.rb, line 57 def create_adapter(engine, config, packer, unpacker) Hash.new(engine, config, packer, unpacker) end