# File lib/puppet/rails/host.rb, line 149
149:   def build_rails_resource_from_parser_resource(resource)
150:     db_resource = nil
151:     accumulate_benchmark("Added resources", :initialization) {
152:       args = Puppet::Rails::Resource.rails_resource_initial_args(resource)
153: 
154:       db_resource = self.resources.build(args)
155: 
156:       # Our file= method does the name to id conversion.
157:       db_resource.file = resource.file
158:     }
159: 
160: 
161:     accumulate_benchmark("Added resources", :parameters) {
162:       resource.each do |param, value|
163:         Puppet::Rails::ParamValue.from_parser_param(param, value).each do |value_hash|
164:           db_resource.param_values.build(value_hash)
165:         end
166:       end
167:     }
168: 
169:     accumulate_benchmark("Added resources", :tags) {
170:       resource.tags.each { |tag| db_resource.add_resource_tag(tag) }
171:     }
172: 
173:     db_resource.save
174: 
175:     db_resource
176:   end