Class: OoxmlParser::Parser

Inherits:
Object
  • Object
show all
Defined in:
lib/ooxml_parser/common_parser/parser.rb

Class Method Summary collapse

Class Method Details

.parse(path_to_file) ⇒ CommonDocumentStructure

Base method to parse document of any type

Parameters:

  • path_to_file (String)

    file

Returns:



6
7
8
9
10
11
12
13
14
15
# File 'lib/ooxml_parser/common_parser/parser.rb', line 6

def self.parse(path_to_file)
  return nil if OOXMLDocumentObject.encrypted_file?(path_to_file)
  path_to_zip_file = OOXMLDocumentObject.copy_file_and_rename_to_zip(path_to_file)
  OOXMLDocumentObject.path_to_folder = path_to_zip_file.sub(File.basename(path_to_zip_file), '')
  OOXMLDocumentObject.unzip_file(path_to_zip_file, OOXMLDocumentObject.path_to_folder)
  model = yield
  model.file_path = path_to_file
  FileUtils.remove_dir(OOXMLDocumentObject.path_to_folder)
  model
end