01: /*
02: * $Id: ComponentStringResourceLoader.java,v 1.5 2005/01/19 08:07:57
03: * jonathanlocke Exp $ $Revision: 459041 $ $Date: 2006-02-07 08:30:33 +0100 (Tue, 07 Feb 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.resource;
19:
20: import java.util.Locale;
21:
22: import wicket.Application;
23:
24: /**
25: * Interface to be implemented by properties loaders
26: *
27: * @author Juergen Donnerstag
28: */
29: public interface IPropertiesFactory {
30: /**
31: * Add a listener which will be called after properties have been reloaded
32: *
33: * @param listener
34: */
35: void addListener(final IPropertiesReloadListener listener);
36:
37: /**
38: * Get the properties for ...
39: *
40: * @param application
41: * The application object
42: * @param clazz
43: * The class that resources are bring loaded for
44: * @param style
45: * The style to load resources for (see {@link wicket.Session})
46: * @param locale
47: * The locale to load reosurces for
48: * @return The properties
49: */
50: Properties get(final Application application, final Class clazz,
51: final String style, final Locale locale);
52:
53: /**
54: * Remove all cached properties
55: */
56: abstract void clearCache();
57: }
|