C/ALM Event Handling
description
Transcript of C/ALM Event Handling
![Page 1: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/1.jpg)
C/ALM Event Handling
Kai
![Page 2: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/2.jpg)
Scenario
![Page 3: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/3.jpg)
Scenario
RTC
ProjectArea
ProjectArea
RQM
Iteration Plan Approved
Create Test Casesor
Create Task to Create Test Casesor
Do other smart things
![Page 4: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/4.jpg)
Observation
• Types of issued events are application specific• Events are issued in the context of projects• Event handling is project or even team specific• End users configure event handlers
• This is really just “remote listeners”
![Page 5: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/5.jpg)
Context
• Use Webhooks over Atom feeds
• “Listeners” are URLs the subject POSTs the event to
• The listener may be remote to interested application
![Page 6: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/6.jpg)
Flow (stylized)
Subject
ProjectArea
ProjectArea
Consumer
Listener H1 (Service)
knows
registers H1
POST eventoperates on
![Page 7: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/7.jpg)
Tasks (subject side)
• Define resource format of events• Make issued events discoverable• Define protocol for webhook registry• POST to registered webhooks
• Utilize existing process events
![Page 8: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/8.jpg)
Tasks (consumer side)• Define a way to register webhooks
– [label, description, URL]
• Allow end users to configure webhooks– allow to browse configured friends for available events– allow to directly enter URL– allow to configure parameters for webhook – support on project area and team area level– take Web UI perspective
• Persist webhook configuration in the Foundation Storage Service
• Register configured webhook with subject’s registry
• Find reasonable integration in eclipse client
![Page 9: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/9.jpg)
Open Issues
• Authentication
• Licensing
• When does the registration happen?
• How do we represent cross app event handling in process templates? In what kind of process templates?
![Page 10: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/10.jpg)
Potential Points of Authentication
Subject
ProjectArea
ProjectArea
Consumer
Listener H1 (Service)
knows
registers H1
POST eventoperates on
![Page 11: C/ALM Event Handling](https://reader036.fdocuments.us/reader036/viewer/2022082712/56813bdc550346895da507a7/html5/thumbnails/11.jpg)
Interesting Points of License Enforcement
• User needs licenses to register webhook, number of webhooks a user can register could be limited
• The total number of webhooks on a server could be limited
• The number of webhooks that can be called by the server for any given event could be limited.
• …