01: /*
02: * This file is part of PFIXCORE.
03: *
04: * PFIXCORE is free software; you can redistribute it and/or modify
05: * it under the terms of the GNU Lesser General Public License as published by
06: * the Free Software Foundation; either version 2 of the License, or
07: * (at your option) any later version.
08: *
09: * PFIXCORE is distributed in the hope that it will be useful,
10: * but WITHOUT ANY WARRANTY; without even the implied warranty of
11: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12: * GNU Lesser General Public License for more details.
13: *
14: * You should have received a copy of the GNU Lesser General Public License
15: * along with PFIXCORE; if not, write to the Free Software
16: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17: */
18:
19: package de.schlund.pfixxml.config;
20:
21: import java.util.List;
22:
23: /**
24: * Provides configuration for {@link de.schlund.pfixxml.DirectOutputServlet}.
25: *
26: * @author Sebastian Marsching <sebastian.marsching@1und1.de>
27: */
28: public interface DirectOutputServletConfig extends ServletManagerConfig {
29:
30: /**
31: * Returns the name of the corresponding {@link de.schlund.pfixxml.ContextXMLServlet}
32: * instance. This instance is used in order to retrieve a {@link de.schlund.pfixcore.workflow.Context}
33: * object for the session.
34: *
35: * @return name of the corresponding servlet
36: */
37: String getExternalServletName();
38:
39: /**
40: * If <code>true</code> the servlet synchronizes on the session (more precisely
41: * on the context). This can be used to run not thread-safe application code.
42: *
43: * @return flag indicating whether to synchronize on the user session
44: */
45: boolean isSynchronized();
46:
47: /**
48: * Returns a list of pages configured for this servlet.
49: *
50: * @return list of page configurations
51: */
52: List<? extends DirectOutputPageRequestConfig> getPageRequests();
53:
54: /**
55: * Returns the page configuration for the page of the specified name.
56: *
57: * @param page name of the page
58: * @return configuration for <code>page</code> or <code>null</code> if
59: * no page with the specified name is present
60: */
61: DirectOutputPageRequestConfig getPageRequest(String page);
62:
63: }
|