# File lib/fog/core/attributes.rb, line 167
      def requires(*args)
        missing = []
        for arg in [:connection] | args
          unless send("#{arg}") || attributes.has_key?(arg)
            missing << arg
          end
        end
        unless missing.empty?
          if missing.length == 1
            raise(ArgumentError, "#{missing.first} is required for this operation")
          else
            raise(ArgumentError, "#{missing[0...-1].join(", ")} and #{missing[-1]} are required for this operation")
          end
        end
      end