# File lib/jira/resource/field.rb, line 20
      def self.map_fields(client)
        field_map = {}
        field_map_reverse = {}
        fields = client.Field.all

        # two pass approach, so that a custom field with the same name
        # as a system field can't take precedence
        fields.each do |f|
          next if f.custom
          name = safe_name(f.name)
          field_map_reverse[f.id] = [f.name, name] # capture both the official name, and the mapped name
          field_map[name] = f.id
        end

        fields.each do |f|
          next unless f.custom
          name = if field_map.key? f.name
            renamed = safer_name(f.name, f.id)
            warn "Duplicate Field name #{f.name} #{f.id} - renaming as #{renamed}"
            renamed
          else
            safe_name(f.name)
          end
          field_map_reverse[f.id] = [f.name, name] # capture both the official name, and the mapped name
          field_map[name] = f.id
        end

        client.cache.field_map_reverse = field_map_reverse   # not sure where this will be used yet, but sure to be useful
        client.cache.field_map = field_map
      end