01: /* *************************************************************************
02:
03: Millstone(TM)
04: Open Sourced User Interface Library for
05: Internet Development with Java
06:
07: Millstone is a registered trademark of IT Mill Ltd
08: Copyright (C) 2000-2005 IT Mill Ltd
09:
10: *************************************************************************
11:
12: This library is free software; you can redistribute it and/or
13: modify it under the terms of the GNU Lesser General Public
14: license version 2.1 as published by the Free Software Foundation.
15:
16: This library is distributed in the hope that it will be useful,
17: but WITHOUT ANY WARRANTY; without even the implied warranty of
18: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19: Lesser General Public License for more details.
20:
21: You should have received a copy of the GNU Lesser General Public
22: License along with this library; if not, write to the Free Software
23: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24:
25: *************************************************************************
26:
27: For more information, contact:
28:
29: IT Mill Ltd phone: +358 2 4802 7180
30: Ruukinkatu 2-4 fax: +358 2 4802 7181
31: 20540, Turku email: info@itmill.com
32: Finland company www: www.itmill.com
33:
34: Primary source for MillStone information and releases: www.millstone.org
35:
36: ********************************************************************** */
37:
38: package org.millstone.base.terminal;
39:
40: import java.util.Map;
41:
42: /** Interface implemented by all the classes capable of handling external parameters.
43: *
44: * <p>Some terminals can provide external parameters for application. For example
45: * GET and POST parameters are passed to application as external parameters on
46: * Web Adapter. The parameters can be received at any time during the application
47: * lifecycle. All the parameter handlers implementing this interface and registered
48: * to {@link org.millstone.base.ui.Window} receive all the parameters got from
49: * the terminal in the given window.</p>
50: *
51: * @author IT Mill Ltd.
52: * @version 3.1.1
53: * @since 3.0
54: */
55: public interface ParameterHandler {
56:
57: /** Handle parameters.
58: *
59: * <p>Handle the given parameters. The parameters are given as inmodifieable
60: * name to value map. All parameters names are of type: {@link java.lang.String}.
61: * All the parameter values are arrays of strings.</p>
62: *
63: * @param parameters Inmodifiable name to value[] mapping.
64: *
65: */
66: public void handleParameters(Map parameters);
67:
68: /** ParameterHandler error event */
69: public interface ErrorEvent extends Terminal.ErrorEvent {
70:
71: /** Get the source ParameterHandler. */
72: public ParameterHandler getParameterHandler();
73:
74: }
75:
76: }
|