]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/aviator/lib/puppet/feature/aviator/core/request.rb
Revert "add aimonb/aviator to 3rdparty"
[dsa-puppet.git] / 3rdparty / modules / aviator / lib / puppet / feature / aviator / core / request.rb
diff --git a/3rdparty/modules/aviator/lib/puppet/feature/aviator/core/request.rb b/3rdparty/modules/aviator/lib/puppet/feature/aviator/core/request.rb
deleted file mode 100644 (file)
index ed9c6ce..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-module Aviator
-
-  class Request
-
-    class ApiVersionNotDefinedError < StandardError
-      def initialize
-        super "api_version is not defined."
-      end
-    end
-
-    class EndpointTypeNotDefinedError < StandardError
-      def initialize
-        super "endpoint_type is not defined."
-      end
-    end
-
-    class PathNotDefinedError < StandardError
-      def initialize
-        super "path is not defined."
-      end
-    end
-
-
-    def initialize(session_data=nil)
-      @session_data = session_data
-
-      params = self.class.params_class.new if self.class.params_class
-
-      if params
-        yield(params) if block_given?
-        validate_params(params)
-      end
-
-      @params = params
-    end
-
-
-    def anonymous?
-      self.class.anonymous?
-    end
-
-
-    def body?
-      self.class.body?
-    end
-
-
-    def headers?
-      self.class.headers?
-    end
-
-
-    def links
-      self.class.links
-    end
-
-
-    def optional_params
-      self.class.optional_params
-    end
-
-
-    def params
-      @params.dup
-    end
-
-
-    def required_params
-      self.class.required_params
-    end
-
-
-    def session_data
-      @session_data
-    end
-
-
-    def session_data?
-      !session_data.nil?
-    end
-
-
-    def querystring?
-      self.class.querystring?
-    end
-
-
-    def url?
-      self.class.url?
-    end
-
-
-    private
-
-
-    def validate_params(params)
-      required_params = self.class.required_params
-
-      required_params.each do |name|
-        raise ArgumentError.new("Missing parameter #{ name }.") if params.send(name).nil?
-      end
-    end
-
-
-    # NOTE that, because we are defining the following as class methods, when they
-    # are called, all 'instance' variables are actually defined in the descendant class,
-    # not in the instance/object. This is by design since we want to keep these attributes
-    # within the class and because they don't change between instances anyway.
-    class << self
-
-      def anonymous?
-        respond_to?(:anonymous) && anonymous == true
-      end
-
-
-      def body?
-        instance_methods.include? :body
-      end
-
-
-      def headers?
-        instance_methods.include? :headers
-      end
-
-
-      def links
-        @links ||= []
-      end
-
-
-      def param_aliases
-        @param_aliases ||= {}
-      end
-
-
-      def params_class
-        all_params = required_params + optional_params
-
-        if all_params.length > 0 && @params_class.nil?
-          @params_class = build_params_class(all_params, self.param_aliases)
-        end
-
-        @params_class
-      end
-
-
-      def optional_params
-        @optional_params ||= []
-      end
-
-
-      def querystring?
-        instance_methods.include? :querystring
-      end
-
-
-      def required_params
-        @required_params ||= []
-      end
-
-
-      def url?
-        instance_methods.include? :url
-      end
-
-
-      private
-
-
-      def build_params_class(all_params, param_aliases)
-        Struct.new(*all_params) do
-          alias :param_getter :[]
-          alias :param_setter :[]=
-
-          define_method :[] do |key|
-            key = param_aliases[key.to_sym] if param_aliases.keys.include? key.to_sym
-            param_getter(key)
-          end
-
-          define_method :[]= do |key, value|
-            key = param_aliases[key.to_sym] if param_aliases.keys.include? key.to_sym
-            param_setter(key, value)
-          end
-
-          param_aliases.each do |param_alias, param_name|
-            define_method param_alias do
-              param_getter(param_name)
-            end
-
-            define_method "#{ param_alias }=" do |value|
-              param_setter(param_name, value)
-            end
-          end
-        end
-      end
-
-
-      def link(rel, href)
-        links << { :rel => rel, :href => href }
-      end
-
-
-      def meta(attr_name, attr_value)
-        eigenclass = class << self; self; end
-        eigenclass.send(:define_method, attr_name) do
-          attr_value
-        end
-
-        define_method(attr_name) do
-          self.class.send(attr_name)
-        end
-      end
-
-
-      def param(param_name, opts={})
-        opts  = Hashish.new(opts)
-        list  = (opts[:required] == false ? optional_params : required_params)
-        list << param_name unless optional_params.include?(param_name)
-
-        if opts[:alias]
-          self.param_aliases[opts[:alias]] = param_name
-        end
-      end
-
-    end
-
-  end
-
-end