# File lib/fog/profitbricks/models/compute/datacenter.rb, line 40
        def save
          requires :name, :location

          options = {}
          options[:name] = name
          options[:location] = location
          options[:description] = description if description
          options[:servers] = servers if servers
          options[:volumes] = volumes if volumes
          options[:loadbalancers] = loadbalancers if loadbalancers
          options[:lans] = lans if lans

          entities = {}

          # Retrieve servers collection if present and generate appropriate JSON.
          if options.key?(:servers)
            entities[:servers] = collect_entities(options.delete(:servers))
          end

          # Retrieve volumes collection if present and generate appropriate JSON.
          if options.key?(:volumes)
            entities[:volumes] = collect_entities(options.delete(:volumes))
          end

          # Retrieve volumes collection if present and generate appropriate JSON.
          if options.key?(:loadbalancers)
            entities[:loadbalancers] = collect_entities(options.delete(:loadbalancers))
          end

          # Retrieve volumes collection if present and generate appropriate JSON.
          if options.key?(:lans)
            entities[:lans] = collect_entities(options.delete(:lans))
          end

          data = service.create_datacenter(options, entities)
          merge_attributes(flatten(data.body))
          true
        end