Sha256: 48efe18def547b6c7fc6db62bdcbda279f12469a59b67c1a523af1add84ce3ff

Contents?: true

Size: 886 Bytes

Versions: 1

Compression:

Stored size: 886 Bytes

Contents

module Kangaroo
  module Util
    class Loader
      module RootNamespace
        def oo_to_ruby oo_name
          name + "::" + oo_name.gsub('.','/').camelize
        end

        def ruby_to_oo ruby_name
           ruby_name.sub(name + "::",'').underscore.gsub '/', '.'
        end
        
        def reflection_model
          const_get('Ir').const_get('Model')
        end
        
        def model_exists? name
          name = ruby_to_oo name
          reflection_model.where(:model => name).exists?
        end
        
        def models_in? name
          name = ruby_to_oo name
          
          reflection_model.where("model like #{name}.%").exists?
        end
        
        def load_model model_name
          model_name = ruby_to_oo model_name
          Loader.new([model_name], reflection_model.database, name).load!.first
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
kangaroo-0.0.3 lib/kangaroo/util/loader/root_namespace.rb