Sha256: 1625489eae0ac4b624b21fe236c4c81698b62bc170c19df5a898e6b1f1e9dd0a

Contents?: true

Size: 1.58 KB

Versions: 32

Compression:

Stored size: 1.58 KB

Contents

module ForemanTasks
  module Api
    class RecurringLogicsController < ::Api::V2::BaseController
      include ::Api::Version2
      include Concerns::Parameters::RecurringLogic

      resource_description do
        resource_id 'recurring_logics'
        api_version 'v2'
        api_base_url '/foreman_tasks/api'
      end

      before_action :find_resource, :only => %w[show cancel update]

      api :GET, '/recurring_logics', N_('List recurring logics')
      param_group :search_and_pagination, ::Api::V2::BaseController
      def index
        @recurring_logics = resource_scope_for_index
      end

      api :GET, '/recurring_logics/:id', N_('Show recurring logic details')
      param :id, :identifier, desc: 'ID of the recurring logic', required: true
      def show; end

      api :PUT, '/recurring_logics/:id', N_('Update recurring logic')
      param :id, :identifier, desc: 'ID of the recurring logic', required: true
      param :enabled, :boolean, desc: 'Whether the recurring logic is enabled or disabled.', required: false
      def update
        process_response @recurring_logic.update(recurring_logic_params)
      end

      api :POST, '/recurring_logics/:id/cancel', N_('Cancel recurring logic')
      param :id, :identifier, desc: 'ID of the recurring logic', required: true
      def cancel
        process_response @recurring_logic.cancel
      end

      def resource_class
        ForemanTasks::RecurringLogic
      end

      def action_permission
        case params[:action]
        when 'cancel'
          'edit'
        else
          super
        end
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
foreman-tasks-0.17.6 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-1.0.1 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-1.0.0 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.5 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.4 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.3 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.2 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.16.3 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.1 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.11 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.16.2 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.10 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.16.1 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.17.0 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.9 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.8 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.14.6 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.7 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.16.0 app/controllers/foreman_tasks/api/recurring_logics_controller.rb
foreman-tasks-0.15.6 app/controllers/foreman_tasks/api/recurring_logics_controller.rb