main
1module Agents
2 class EventsController < ApplicationController
3 before_action :load_agent
4
5 def index
6 @events = @agent.events.order(created_at: :desc)
7 end
8
9 def new
10 @event = Event.new
11 end
12
13 def create
14 publish(EventMessage.new(
15 agent_id: @agent.id,
16 event_type: event_params[:type],
17 data: event_params[:data]
18 ))
19 redirect_to agent_events_url, notice: 'Event was successfully created.'
20 end
21
22 def destroy
23 @event = Event.find(params[:id])
24 @event.destroy
25 redirect_to agent_events_url(@agent), notice: 'Event was successfully destroyed.'
26 end
27
28 private
29
30 def event_params
31 params[:event]
32 end
33
34 def load_agent
35 @agent = Agent.find(params[:agent_id])
36 end
37 end
38end