# File lib/chef/index_queue/indexable.rb, line 50
      def with_indexer_metadata(indexer_metadata={})
        # changing input param symbol keys to strings, as the keys in hash that goes to solr are expected to be strings [cb]
        # Ruby 1.9 hates you, cb [dan]
        with_metadata = {}
        indexer_metadata.each_key do |key|
          with_metadata[key.to_s] = indexer_metadata[key]
        end

        with_metadata["type"]     ||= self.index_object_type
        with_metadata["id"]       ||= self.index_id
        with_metadata["database"] ||= Chef::Config[:couchdb_database]
        with_metadata["item"]     ||= self.to_hash
        with_metadata["enqueued_at"] ||= Time.now.utc.to_i

        raise ArgumentError, "Type, Id, or Database missing in index operation: #{with_metadata.inspect}" if (with_metadata["id"].nil? or with_metadata["type"].nil?)
        with_metadata        
      end