1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.struts.chain.commands;
22
23 import org.apache.struts.chain.contexts.ActionContext;
24 import org.apache.struts.config.ModuleConfig;
25
26 /**
27 * <p>Check to see if the content type is set, and if so, set it for this
28 * response.</p>
29 *
30 * @version $Rev: 471754 $ $Date: 2005-11-12 13:01:44 -0500 (Sat, 12 Nov 2005)
31 * $
32 */
33 public abstract class AbstractSetContentType extends ActionCommandBase {
34
35
36 /**
37 * <p>Check to see if the content type is set, and if so, set it for this
38 * response.</p>
39 *
40 * @param actionCtx The <code>Context</code> for the current request
41 * @return <code>false</code> so that processing continues
42 * @throws Exception if thrown by the Action class
43 */
44 public boolean execute(ActionContext actionCtx)
45 throws Exception {
46
47 ModuleConfig moduleConfig = actionCtx.getModuleConfig();
48
49
50 String contentType =
51 moduleConfig.getControllerConfig().getContentType();
52
53 if (contentType != null) {
54 setContentType(actionCtx, contentType);
55 }
56
57 return (false);
58 }
59
60
61
62 /**
63 * <p>Request no cache flags are set.</p>
64 *
65 * @param context The <code>Context</code> for this request
66 * @param contentType The content type for the response
67 */
68 protected abstract void setContentType(ActionContext context,
69 String contentType);
70 }