01: /*
02: * $Id: IComponentResolver.java 458447 2006-01-01 23:19:44Z jonl $
03: * $Revision: 458447 $ $Date: 2006-01-02 00:19:44 +0100 (Mon, 02 Jan 2006) $
04: *
05: * ==============================================================================
06: * Licensed under the Apache License, Version 2.0 (the "License"); you may not
07: * use this file except in compliance with the License. You may obtain a copy of
08: * the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing, software
13: * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14: * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15: * License for the specific language governing permissions and limitations under
16: * the License.
17: */
18: package wicket.markup.resolver;
19:
20: import java.io.Serializable;
21:
22: import wicket.MarkupContainer;
23: import wicket.markup.ComponentTag;
24: import wicket.markup.MarkupStream;
25:
26: /**
27: * ApplicationSettings maintains a list of IComponentResolvers.
28: * IComponentResolvers are responsible for mapping component names to Wicket
29: * components.
30: *
31: * @author Juergen Donnerstag
32: */
33: public interface IComponentResolver extends Serializable {
34: /**
35: * Try to resolve the tag, then create a component, add it to the
36: * container and render it.
37: *
38: * @param container
39: * The container parsing its markup
40: * @param markupStream
41: * The current markupStream
42: * @param tag
43: * The current component tag while parsing the markup
44: * @return True if component-id was handled by the resolver, false otherwise.
45: */
46: public boolean resolve(final MarkupContainer container,
47: final MarkupStream markupStream, final ComponentTag tag);
48: }
|