class ChupaText::Decomposers::OfficeOpenXMLDocument

Public Class Methods

new(options={}) click to toggle source
Calls superclass method
# File lib/chupa-text/decomposers/office-open-xml-document.rb, line 24
def initialize(options={})
  super
  @extensions = [
    "docx",
    "docm",
    "dotx",
    "dotm",
  ]
  @mime_types = [
    "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
    "application/vnd.ms-word.document.macroEnabled.12",
    "application/vnd.openxmlformats-officedocument.wordprocessingml.template",
    "application/vnd.ms-word.template.macroEnabled.12",
  ]
  @namespace_uri =
    "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
end

Private Instance Methods

finish_decompose(context) { |text_data| ... } click to toggle source
# File lib/chupa-text/decomposers/office-open-xml-document.rb, line 54
def finish_decompose(context, &block)
  text_data = TextData.new(context[:text], source_data: context[:data])
  context[:attributes].each do |name, value|
    text_data[name] = value
  end
  yield(text_data)
end
log_tag() click to toggle source
# File lib/chupa-text/decomposers/office-open-xml-document.rb, line 62
def log_tag
  "#{super}[document]"
end
process_entry(entry, context) click to toggle source
# File lib/chupa-text/decomposers/office-open-xml-document.rb, line 47
def process_entry(entry, context)
  case entry.zip_path
  when "word/document.xml"
    extract_text(entry, context[:text])
  end
end
start_decompose(context) click to toggle source
# File lib/chupa-text/decomposers/office-open-xml-document.rb, line 43
def start_decompose(context)
  context[:text] = ""
end