require_relative "stack_base" require_relative "stack_openstack" require_relative "stack_aws" module Devops module Model class StackFactory def self.create(provider, attrs, out) klass = case provider # when ::Provider::Openstack::PROVIDER # StackOpenstack when ::Provider::Aws::PROVIDER StackAws else raise InvalidRecord.new "Invalid provider: '#{provider}'" end klass.create(attrs, out) end end end end