Class: Abbu::Parsers::SqliteParser

Inherits:
Object
  • Object
show all
Defined in:
lib/abbu/parsers/sqlite_parser.rb

Overview

rubocop:disable Metrics/ClassLength

Constant Summary collapse

RECORD_FIELD_MAP =

Column-name → attr_accessor mapping for flat fields on ZABCDRECORD

{
  'ZFIRSTNAME' => :first_name, 'ZLASTNAME' => :last_name,
  'ZNICKNAME' => :nickname, 'ZTITLE' => :prefix,
  'ZSUFFIX' => :suffix, 'ZORGANIZATION' => :company,
  'ZJOBTITLE' => :job_title, 'ZDEPARTMENT' => :department,
  'ZMAIDENNAME' => :maiden_name,
  'ZPHONETICFIRSTNAME' => :phonetic_first_name,
  'ZPHONETICLASTNAME' => :phonetic_last_name,
  'ZPHONETICORGANIZATION' => :phonetic_company,
  'ZPRONOUNS' => :pronouns,
  'ZRINGTONE' => :ringtone, 'ZTEXTTONE' => :texttone
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(db_paths) ⇒ SqliteParser

Returns a new instance of SqliteParser.



24
25
26
# File 'lib/abbu/parsers/sqlite_parser.rb', line 24

def initialize(db_paths)
  @db_paths = Array(db_paths)
end

Instance Method Details

#contactsObject



28
29
30
31
32
# File 'lib/abbu/parsers/sqlite_parser.rb', line 28

def contacts
  @db_paths.flat_map do |db_path|
    parse_db(db_path)
  end
end