Class: Connectors::GitLab::Adapter

Inherits:
Base::Adapter show all
Defined in:
lib/connectors/gitlab/adapter.rb

Class Method Summary collapse

Methods inherited from Base::Adapter

es_document_from_configured_object_base, extension_for_file, fields_to_preserve, generate_id_helpers, mime_type_for_file, normalize_date, normalize_enum, normalize_path, strip_file_extension, url_to_path

Class Method Details

.to_es_document(type, source_doc) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/connectors/gitlab/adapter.rb', line 20

def self.to_es_document(type, source_doc)
  source_doc = source_doc.with_indifferent_access
  result = {}
  case type.to_sym
  when :project
    result.merge!(
      {
        :url => source_doc[:web_url],
        :body => source_doc[:description],
        :title => source_doc[:name],
        :created_at => source_doc[:created_at],
        :last_modified_at => source_doc[:last_activity_at],
        :visibility => source_doc[:visibility],
        :namespace => if source_doc[:namespace].nil?
                        nil
                      else
                        source_doc[:namespace][:name]
                      end
      }
    )
  else
    # don't remap
    result.merge!(source_doc)
  end
  result[:id] = gitlab_id_to_es_id(source_doc[:id])
  result[:type] = type
  result
end