blob: 95116370942944e908444bdc1ec07fcfb5e7fe1b [file] [log] [blame]
Stuart McCullochbb014372012-06-07 21:57:32 +00001package aQute.bnd.service;
2
3import aQute.bnd.build.*;
4
5/**
Stuart McCulloch2286f232012-06-15 13:27:53 +00006 * A plugin that makes it possible to
7 *
Stuart McCullochbb014372012-06-07 21:57:32 +00008 * @author aqute
Stuart McCullochbb014372012-06-07 21:57:32 +00009 */
10public interface CommandPlugin {
Stuart McCulloch2286f232012-06-15 13:27:53 +000011 /**
12 * Is run before a command is executed. These plugins are called in the
13 * order of declaration.
14 *
15 * @param project
16 * The project for which the command runs
17 * @param command
18 * the command name
19 */
20 void before(Project project, String command);
21
22 /**
23 * Is run after a command is executed. These plugins are called in the
24 * reverse order of declaration.
25 *
26 * @param project
27 * The project for which the command runs
28 * @param command
29 * the command name
30 */
31 void after(Project project, String command, Throwable outcome);
Stuart McCullochbb014372012-06-07 21:57:32 +000032}