# File lib/puppet/indirector/catalog/active_record.rb, line 24
24:   def save(request)
25:     catalog = request.instance
26: 
27:     host = ar_model.find_by_name(catalog.name) || ar_model.create(:name => catalog.name)
28: 
29:     host.railsmark "Saved catalog to database" do
30:       host.merge_resources(catalog.vertices)
31:       host.last_compile = Time.now
32: 
33:       if node = Puppet::Node.find(catalog.name)
34:         host.ip = node.parameters["ipaddress"]
35:         host.environment = node.environment.to_s
36:       end
37: 
38:       host.save
39:     end
40:   end