82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
# File 'lib/fog/core/service.rb', line 82
def setup_requirements
if superclass.respond_to?(:setup_requirements)
superclass.setup_requirements
end
@required ||= false
unless @required
for collection in collections
require [@model_path, collection].join('/')
constant = collection.to_s.split('_').map {|characters| characters[0...1].upcase << characters[1..-1]}.join('')
service::Collections.module_eval " def \#{collection}(attributes = {})\n \#{service}::\#{constant}.new({:connection => self}.merge(attributes))\n end\n EOS\n end\n for model in models\n require [@model_path, model].join('/')\n end\n for request in requests\n require [@request_path, request].join('/')\n if service::Mock.method_defined?(request)\n mocked_requests << request\n else\n service::Mock.module_eval <<-EOS, __FILE__, __LINE__\n def \#{request}(*args)\n Fog::Mock.not_implemented\n end\n EOS\n end\n end\n @required = true\n end\nend\n", __FILE__, __LINE__
|