Module: Yoda::Server::Providers::ReportableProgress

Included in:
LifecycleHandler, WorkspaceSymbol
Defined in:
lib/yoda/server/providers/reportable_progress.rb

Defined Under Namespace

Classes: ProgressReporter

Instance Method Summary collapse

Instance Method Details

#in_progress(params, title:) ⇒ Object

Parameters:

  • params (Hash)

    The parameter of the request



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/yoda/server/providers/reportable_progress.rb', line 6

def in_progress(params, title:)
  begin
    reporter = ProgressReporter.new(
      work_done_token: params[:work_done_token],
      partial_result_token: params[:partial_result_token],
      notifier: notifier,
    )

    reporter.send_begin(title: title)
    yield reporter

   reporter.results
  ensure
    reporter.send_end
  end
end