class PdfEditor::Merge

Attributes

merged_name[R]
resources[R]

Public Instance Methods

call() click to toggle source
# File lib/pdf_editor/merge.rb, line 19
def call
  if resources.empty?
    raise Errors::ResourcesEmptyError, 
          'There must be at least one resource to merge'
  end
  PdfEditor::Resource.new(
    create_tempfile {run_command},
    merged_name
  )
end
post_init() click to toggle source
# File lib/pdf_editor/merge.rb, line 14
def post_init
  @resources   = args.fetch(:resources, [])
  @merged_name = args.fetch(:merged_name, nil)
end

Private Instance Methods

format_command() click to toggle source
# File lib/pdf_editor/merge.rb, line 40
def format_command
  resources.map do |resource|
    {:pdf => resource.path}
  end
end
run_command() click to toggle source
# File lib/pdf_editor/merge.rb, line 32
def run_command
  read_from_io do 
    pdf_runner.cat(format_command)
  end
rescue ::ActivePdftk::CommandError => e 
  raise InvalidInputError, e.message
end