Class: OmnifocusMcp::Tools::Operations::AddOmniFocusTask

Inherits:
Object
  • Object
show all
Defined in:
lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb

Constant Summary collapse

Created =
Generators::AddOmniFocusTask::Created

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(script_runner: Infrastructure::ScriptRunner, generator: Generators::AddOmniFocusTask) ⇒ AddOmniFocusTask

Returns a new instance of AddOmniFocusTask.



33
34
35
36
# File 'lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb', line 33

def initialize(script_runner: Infrastructure::ScriptRunner, generator: Generators::AddOmniFocusTask)
  @script_runner = script_runner
  @generator = generator
end

Class Method Details

.call(params = nil, script_runner: Infrastructure::ScriptRunner, **kwargs) ⇒ Object



16
17
18
# File 'lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb', line 16

def call(params = nil, script_runner: Infrastructure::ScriptRunner, **kwargs)
  merge_params(params, kwargs).then { new(script_runner:).call(it) }
end

.generate_apple_scriptObject



20
# File 'lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb', line 20

def generate_apple_script(...) = Generators::AddOmniFocusTask.generate_apple_script(...)

.generate_bulk_apple_scriptObject



21
# File 'lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb', line 21

def generate_bulk_apple_script(...) = Generators::AddOmniFocusTask.generate_bulk_apple_script(...)

Instance Method Details

#call(params) ⇒ Object



38
39
40
41
42
43
44
# File 'lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb', line 38

def call(params)
  params = Params::McpBoundary.coerce(Params::AddTaskParams, params)
  generator.generate_apple_script(params).then { |script| run_script(script) }
rescue StandardError => e
  OmnifocusMcp.logger.warn("[add_omnifocus_task] Error: #{e}")
  OmnifocusMcp::Result.error(e.message || "Unknown error in add_omnifocus_task")
end