Class: RelatonBib::Place

Inherits:
Object show all
Defined in:
lib/relaton_bib/place.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, uri: nil, region: nil) ⇒ Place

Returns a new instance of Place.

Parameters:

  • name (String)
  • uri (String, NilClass) (defaults to: nil)
  • region (String, NilClass) (defaults to: nil)


12
13
14
15
16
# File 'lib/relaton_bib/place.rb', line 12

def initialize(name:, uri: nil, region: nil)
  @name   = name
  @uri    = uri
  @region = region
end

Instance Attribute Details

#nameString (readonly)

Returns:

  • (String)


4
5
6
# File 'lib/relaton_bib/place.rb', line 4

def name
  @name
end

#regionString, NilClass (readonly)

Returns:

  • (String, NilClass)


7
8
9
# File 'lib/relaton_bib/place.rb', line 7

def region
  @region
end

#uriString, NilClass (readonly)

Returns:

  • (String, NilClass)


7
8
9
# File 'lib/relaton_bib/place.rb', line 7

def uri
  @uri
end

Instance Method Details

#to_hashHash

Returns:

  • (Hash)


26
27
28
29
30
31
32
33
34
35
# File 'lib/relaton_bib/place.rb', line 26

def to_hash
  if uri || region
    hash = { name: name }
    hash["uri"] = uri if uri
    hash["region"] = region if region
    hash
  else
    name
  end
end

#to_xml(builder) ⇒ Object

Parameters:

  • builder (Nologiri::XML::Builder)


19
20
21
22
23
# File 'lib/relaton_bib/place.rb', line 19

def to_xml(builder)
  xml = builder.place name
  xml[:uri] = uri if uri
  xml[:region] = region if region
end