class Multiwoven::Integrations::Destination::MicrosoftExcel::Client

def discover(connection_config)

def discover(connection_config)
  catalog_json = read_json(CATALOG_SPEC_PATH)
  connection_config = connection_config.with_indifferent_access
  token = connection_config[:token]
  drive_id = create_connection(connection_config)
  records = get_file(token, drive_id)
  records.each do |record|
    file_id = record[:id]
    record[:worksheets] = get_file_data(token, drive_id, file_id)
  end
  catalog = Catalog.new(streams: create_streams(records, catalog_json))
  catalog.to_multiwoven_message
rescue StandardError => e
  handle_exception(e, {
                     context: "MICROSOFT:EXCEL:DISCOVER:EXCEPTION",
                     type: "error"
                   })
end