Module: ElasticGraph::Support::OpaqueID

Defined in:
elasticgraph-support/lib/elastic_graph/support/opaque_id.rb

Overview

Builds X-Opaque-Id header values from a finite set of readable parts.

Class Method Summary collapse

Class Method Details

.build_header(parts) ⇒ String?

Builds an X-Opaque-Id header value from the provided opaque-id parts.

Parameters:

  • parts (Array<String, nil>)

    opaque-id parts to normalize and join.

Returns:

  • (String, nil)

    a semicolon-delimited opaque-id header value, or nil if no meaningful opaque-id parts remain after normalization.



18
19
20
21
22
23
24
25
26
27
# File 'elasticgraph-support/lib/elastic_graph/support/opaque_id.rb', line 18

def self.build_header(parts)
  header = parts.filter_map do |part|
    normalized = part.to_s.strip
    next if normalized.empty?

    normalized.gsub(/[;\r\n]/, ",")
  end.join(";")

  header.empty? ? nil : header
end