def extract(options = {})
file_path = options.has_key?(:file_path) ?
options[:file_path].to_s :
@zip_path
restore_permissions = options.has_key?(:permissions) ?
options[:permissions] :
false
restore_ownerships = options.has_key?(:ownerships) ?
options[:ownerships] :
false
restore_times = options.has_key?(:times) ?
options[:times] :
false
FileUtils.mkdir_p(file_path)
::File.chmod(mode, file_path) if restore_permissions
::File.chown(uid, gid, file_path) if restore_ownerships
::File.utime(atime, mtime, file_path) if restore_times
nil
end