class Platform::Generators::ProxyGenerator

Public Instance Methods

create_proxy_file() click to toggle source
# File lib/generators/platform/proxy_generator.rb, line 33
      def create_proxy_file
        create_file "#{Platform::Config.api_proxies_path}/#{file_name}_proxy_#{version}.rb", %Q{module Api
  module Proxy
    class #{class_name}Proxy_#{version} < Platform::Api::Proxy::Base
      proxy_for(#{proxy_class})

      def to_api_hash(options={})
        {#{attributes}}
      end

    end
  end
end
      }        
      end

Private Instance Methods

attributes() click to toggle source
# File lib/generators/platform/proxy_generator.rb, line 65
def attributes
  if proxy_class_provided?
    klass = proxy_class.constantize
    return klass.attribute_names.collect{|attr| ":#{attr} => instance.#{attr}"}.join(", ")
  end
  
  return ":id => instance.id" if options[:attributes].blank? or options[:attributes] == "attributes"
  options[:attributes].split(",").collect{|attr| ":#{attr.strip} => instance.#{attr.strip}"}.join(", ")
end
proxy_class() click to toggle source
# File lib/generators/platform/proxy_generator.rb, line 60
def proxy_class
  return class_name unless proxy_class_provided?
  options[:class]
end
proxy_class_provided?() click to toggle source
# File lib/generators/platform/proxy_generator.rb, line 55
def proxy_class_provided?
  return false if options[:class].blank?
  options[:class] != "class"
end
version() click to toggle source
# File lib/generators/platform/proxy_generator.rb, line 51
def version
  options[:version] || '0'
end