class GoodData::Bricks::FsProjectDownloadMiddleware
Public Instance Methods
call(params)
click to toggle source
# File lib/gooddata/bricks/middleware/fs_download_middleware.rb, line 12 def call(params) params = params.to_hash (params['gdc_files_to_download'] || []).each do |source| case source[:type].to_s when 'ads' CSV.open(source[:to], 'w') do |csv| header_written = false header = nil dwh = params['ads_client'] dwh.execute_select(source[:query]) do |row| unless header_written header_written = true header = row.keys csv << header end csv << row.values_at(*header) end end when 'staging' webdav_uri = GoodData.project_webdav_path dav = Net::DAV.new(webdav_uri, curl: false) dav.verify_server = false dav.credentials(params['GDC_USERNAME'], params['GDC_PASSWORD']) dav.find(path, recursive: true, suppress_errors: true) do |item| GoodData.logger.info('Checking: ' + item.url.to_s) name = (item.uri - webdav_uri).to_s File.open(name, 'w') do |f| f << item.content end end end end @app.call(params) end