Skip to content

Commit

Permalink
Merge pull request #166 from psiinon/on-event-handler
Browse files Browse the repository at this point in the history
Added example script for listening for internal ZAP events
  • Loading branch information
thc202 authored Aug 13, 2019
2 parents 0f17bd0 + aeeede9 commit bb37ede
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- authentication/DjangoAuthentication.js > Django authentication script.
- standalone/scan_rule_list.js that list details from both active and passive scan rules.
- standalone/Split download extract.rb: Add script to concatenate split file downloads
- extender/ZAP onEvent Handler.js: An example for how to listen for internal ZAP events

### Changed
- Misc maintenance changes.
Expand Down
30 changes: 30 additions & 0 deletions extender/ZAP onEvent Handler.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
// A script which listens for events generated by the ProxyListenerLogEventPublisher.
// You can change this to listen for events generated by any other event publisher

var consumer;

function install(helper) {
var ConsumerClass = Java.extend(Java.type("org.zaproxy.zap.eventBus.EventConsumer"));
consumer = new ConsumerClass({
eventReceived: function(event) {
// Print in one statement to prevent threads interleaving
var target = '---';
if (event.getTarget()) {
target = event.getTarget().getDisplayName();
}
print(
'Event received: \n' +
' Publisher: ' + event.getPublisher().getPublisherName() + '\n' +
' Type: ' + event.getEventType() + '\n' +
' Target: ' + target + '\n' +
' Params: ' + event.getParameters());
}
});

org.zaproxy.zap.ZAP.getEventBus().registerConsumer(consumer,
"org.parosproxy.paros.extension.history.ProxyListenerLogEventPublisher");
}

function uninstall(helper) {
org.zaproxy.zap.ZAP.getEventBus().unregisterConsumer(consumer);
}

0 comments on commit bb37ede

Please sign in to comment.