1 package net.sourceforge.blogentis.plugins.base;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import net.sourceforge.blogentis.plugins.IExtension;
26 import net.sourceforge.blogentis.turbine.BlogRunData;
27
28 /***
29 * This extension wil be invoked for each HTTP request. At the time of
30 * invocation the BlogRunData will have been initialized and the properties will
31 * have been read.
32 * <ul>
33 * <li>doBuildBeforeAction will be called everytime.</li>
34 * <li>doBuildAfterAction will be called after the action completes
35 * successfully. If the request has be redirected by the action, this and the
36 * other steps will be skipped, and invoked for the actual page.</li>
37 * <li>doPostBuild will have been called after the page completes successfully.
38 * </li>
39 * </ul>
40 *
41 * @author abas
42 */
43 public interface IPageExtension
44 extends IExtension {
45 /***
46 * Called before the action is executed.
47 *
48 * @param data
49 * the BlogRunData of the request.
50 */
51 public void doBeforeAction(BlogRunData data);
52
53 /***
54 * Will be called after the action and before the Screen will be executed.
55 * Skipped if the action marked a redirect.
56 *
57 * @param data
58 * the BlogRunData of the request.
59 */
60 public void doAfterAction(BlogRunData data);
61
62 /***
63 * Called after the screen has been executed and before cleanup. skipped if
64 * the action has sent a redirect.
65 *
66 * @param data
67 * the BlogRunData of the request.
68 */
69 public void doPostBuild(BlogRunData data);
70 }