Class: Origen::Specs::Doc_Resource
- Defined in:
- lib/origen/specs/doc_resource.rb
Overview
This class is used to store text information to help with documentation processes
Instance Attribute Summary collapse
-
#after_table ⇒ Object
DITA Formatted Text that appears after the table.
-
#audience ⇒ Object
Audience is part of the 4-D Hash for the Tables.
-
#before_table ⇒ Object
DITA Formatted Text that appears before the table.
-
#doc_options ⇒ Object
Documentation Options that will change the appearance of the output.
-
#exhibit_refs ⇒ Object
Exhibit References that should be referenced within the table title.
-
#mode ⇒ Object
Mode is part of the 4-D Hash for the Tables.
-
#note_refs ⇒ Object
Note References that should be referenced within the table title.
-
#sub_type ⇒ Object
SubType is part of the 4-D Hash for the Tables.
-
#table_title ⇒ Object
Table Title that should appear for the table.
-
#type ⇒ Object
Type is part of the 4-D Hash for the Tables.
Instance Method Summary collapse
-
#initialize(selector = {}, table_title = {}, text = {}, options = {}) ⇒ Doc_Resource
constructor
Initialize the Class.
-
#to_xml ⇒ Object
Converts to an XML file.
Constructor Details
#initialize(selector = {}, table_title = {}, text = {}, options = {}) ⇒ Doc_Resource
Initialize the Class
43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/origen/specs/doc_resource.rb', line 43 def initialize(selector = {}, table_title = {}, text = {}, = {}) @mode = selector[:mode] @type = selector[:type] @sub_type = selector[:sub_type] @audience = selector[:audience] @table_title = table_title[:title] @note_refs = table_title[:note_refs] @exhibit_refs = table_title[:exhibit_refs] @before_table = text[:before] @after_table = text[:after] @doc_options = end |
Instance Attribute Details
#after_table ⇒ Object
DITA Formatted Text that appears after the table
37 38 39 |
# File 'lib/origen/specs/doc_resource.rb', line 37 def after_table @after_table end |
#audience ⇒ Object
Audience is part of the 4-D Hash for the Tables. Corresponds to Spec 4-D Hash
21 22 23 |
# File 'lib/origen/specs/doc_resource.rb', line 21 def audience @audience end |
#before_table ⇒ Object
DITA Formatted Text that appears before the table
34 35 36 |
# File 'lib/origen/specs/doc_resource.rb', line 34 def before_table @before_table end |
#doc_options ⇒ Object
Documentation Options that will change the appearance of the output.
40 41 42 |
# File 'lib/origen/specs/doc_resource.rb', line 40 def @doc_options end |
#exhibit_refs ⇒ Object
Exhibit References that should be referenced within the table title
31 32 33 |
# File 'lib/origen/specs/doc_resource.rb', line 31 def exhibit_refs @exhibit_refs end |
#mode ⇒ Object
Mode is part of the 4-D Hash for the Tables. Corresponds to Spec 4-D Hash
6 7 8 |
# File 'lib/origen/specs/doc_resource.rb', line 6 def mode @mode end |
#note_refs ⇒ Object
Note References that should be referenced within the table title
28 29 30 |
# File 'lib/origen/specs/doc_resource.rb', line 28 def note_refs @note_refs end |
#sub_type ⇒ Object
SubType is part of the 4-D Hash for the Tables. Corresponds to Spec 4-D Hash
18 19 20 |
# File 'lib/origen/specs/doc_resource.rb', line 18 def sub_type @sub_type end |
#table_title ⇒ Object
Table Title that should appear for the table. If blank, generic Table Title will be used Hash is created from mode, type, sub_type, and audience.
25 26 27 |
# File 'lib/origen/specs/doc_resource.rb', line 25 def table_title @table_title end |
#type ⇒ Object
Type is part of the 4-D Hash for the Tables. Corresponds to Spec 4-D Hash Usual values
-
DC -> Direct Current
-
AC -> Alternate Current
-
Temp -> Temperature
-
Supply -> Supply
15 16 17 |
# File 'lib/origen/specs/doc_resource.rb', line 15 def type @type end |
Instance Method Details
#to_xml ⇒ Object
Converts to an XML file.
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
# File 'lib/origen/specs/doc_resource.rb', line 57 def to_xml tmp = {} tmp['mode'] = @mode unless @mode.nil? tmp['type'] = @type unless @type.nil? tmp['sub_type'] = @sub_type unless @sub_type.nil? tmp['audience'] = @audience unless @audience.nil? doc_resource_ml = Nokogiri::XML::Builder.new do |xml| xml.doc_resource(tmp.each do |t, d| "#{t}=\"#{d}\"" # rubocop:disable Lint/Void end) do unless @table_title.nil? && @note_refs.size == 0 && @exhibit_refs.size == 0 unless @note_refs.first.to_s.size == 0 unless @exhibit_refs.first.to_s.size == 0 xml.title do unless @table_title.nil? xml.Text @table_title.to_s end unless @note_refs.size == 0 unless @note_refs.first.to_s.size == 0 xml.noteRefs do @note_refs = [@note_refs] unless @note_refs.is_a? Array @note_refs.each do |note_ref| unless note_ref.to_s.size == 0 xml.noteRef(href: note_ref.to_s) end # unless note_ref.to_s.size == 0 end # @note_refs.each do |note_ref| end # xml.noteRefs do end # unless @note_refs.first.to_s.size == 0 end # unless @note_refs.size == 0 unless @exhibit_refs.size == 0 unless @exhibit_refs.first.to_s.size == 0 xml.exhibitRefs do @exhibit_refs = [@exhibit_refs] unless @exhibit_refs.is_a? Array @exhibit_refs.each do |exhibit_ref| unless exhibit_ref.to_s.size == 0 xml.exhibitRef(href: exhibit_ref.to_s) end # unless exhibit_ref.to_s.size == 0 end # @exhibit_refs.each do |exhibit_ref| end # xml.exhibitRefs do end # unless @exhibit_refs.first.to_s.size == 0 end # unless @exhibit_refs.size == 0 end # xml.title.done end # unless @exhibit_refs.to_s.size == 0 end # unless @note_refs.to_s.size == 0 end # unless @table_title.nil? && @note_refs.size == 0 && @exhibit_refs.size == 0 unless @before_table.nil? && @after_table.nil? xml.paragraphs do unless @before_table.nil? if (@before_table.is_a? Nokogiri::XML::Node) || (@before_table.is_a? Nokogiri::XML::Element) xml.before_table do if @before_table.name == 'body' xml << @before_table.children.to_xml else xml << @before_table.to_xml end end else xml.before_table @before_table end end unless @after_table.nil? if (@after_table.is_a? Nokogiri::XML::Node) || (@after_table.is_a? Nokogiri::XML::Element) xml.after_table do if @after_table.name == 'body' xml << @after_table.children.to_xml else xml << @after_table.to_xml end end else xml.after_table @after_table end end end # xml.paragraphs do end # unless @before_table.nil? && @after_table.nil? end # xml.doc_resource end # doc_resource_ml = Nokogiri:: doc_resource_ml.doc.at_xpath('doc_resource').to_xml end |