Class: MzID::ParserSax::DBSequenceHandler

Inherits:
Ox::Sax
  • Object
show all
Defined in:
lib/mzid/parser_sax.rb

Overview

handler for DBSequence elements

Constant Summary collapse

ATTR =
[:DBSequence]

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(num_dbseq = nil) ⇒ DBSequenceHandler

Returns a new instance of DBSequenceHandler.



46
47
48
49
# File 'lib/mzid/parser_sax.rb', line 46

def initialize(num_dbseq=nil)
  @dbseq_h = Hash.new
  @pbar = num_dbseq.nil? ? nil : ProgressBar.new("DBSeq", num_dbseq)
end

Instance Attribute Details

#dbseq_hObject

Returns the value of attribute dbseq_h.



51
52
53
# File 'lib/mzid/parser_sax.rb', line 51

def dbseq_h
  @dbseq_h
end

#pbarObject

Returns the value of attribute pbar.



51
52
53
# File 'lib/mzid/parser_sax.rb', line 51

def pbar
  @pbar
end

Instance Method Details

#attr(name, value) ⇒ Object



58
59
60
61
# File 'lib/mzid/parser_sax.rb', line 58

def attr(name, value)
  return unless ATTR.include?(@curr_node)
  @h[name] = value if name == :accession || name == :id
end

#end_element(name) ⇒ Object



67
68
69
70
71
# File 'lib/mzid/parser_sax.rb', line 67

def end_element(name)
  return unless name == :DBSequence
  @pbar.inc if !@pbar.nil?
  @dbseq_h[@h[:id].to_sym] = @h[:accession]
end

#start_element(name) ⇒ Object



53
54
55
56
# File 'lib/mzid/parser_sax.rb', line 53

def start_element(name)
  @h = {} if name == :DBSequence
  @curr_node = name
end

#value(value) ⇒ Object



63
64
65
# File 'lib/mzid/parser_sax.rb', line 63

def value(value)
  return unless ATTR.include?(@curr_node)
end