| /* | |
| * Copyright 2008 Google Inc. | |
| * | |
| * Licensed under the Apache License, Version 2.0 (the "License"); you may not | |
| * use this file except in compliance with the License. You may obtain a copy of | |
| * the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software | |
| * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |
| * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |
| * License for the specific language governing permissions and limitations under | |
| * the License. | |
| */ | |
| package com.google.gwt.i18n.client; | |
| import java.util.Map; | |
| import java.util.MissingResourceException; | |
| /** | |
| * Like {@link com.google.gwt.i18n.client.Constants}, a tag interface that | |
| * facilitates locale-sensitive, compile-time binding of constant values | |
| * supplied from properties files with the added ability to look up constants at | |
| * runtime with a string key. | |
| * | |
| * <p> | |
| * <code>ConstantsWithLookup</code> extends | |
| * {@link com.google.gwt.i18n.client.Constants} and is identical in behavior, | |
| * adding only a family of special-purpose lookup methods such as | |
| * {@link ConstantsWithLookup#getString(String)}. | |
| * </p> | |
| * | |
| * <p> | |
| * It is generally preferable to extend <code>Constants</code> rather than | |
| * <code>ConstantsWithLookup</code> because <code>ConstantsWithLookup</code> | |
| * forces all constants to be retained in the compiled script, preventing the | |
| * GWT compiler from pruning unused constant accessors. | |
| * </p> | |
| * | |
| * <h3>Required Module</h3> | |
| * Modules that use this interface should inherit | |
| * <code>com.google.gwt.i18n.I18N</code>. | |
| * | |
| * {@gwt.include com/google/gwt/examples/i18n/InheritsExample.gwt.xml} | |
| * | |
| * <h3>Note</h3> | |
| * You should not directly implement this interface or interfaces derived from | |
| * it since an implementation is generated automatically when message interfaces | |
| * are created using {@link com.google.gwt.core.client.GWT#create(Class)}. | |
| * | |
| * @see com.google.gwt.i18n.client.Constants | |
| */ | |
| public interface ConstantsWithLookup extends Constants { | |
| /** | |
| * Look up <code>boolean</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return boolean returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| boolean getBoolean(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>double</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return double returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| double getDouble(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>float</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return float returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| float getFloat(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>int</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return int returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| int getInt(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>Map</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return Map returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| Map<String, String> getMap(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>String</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return String returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| String getString(String methodName) throws MissingResourceException; | |
| /** | |
| * Look up <code>String[]</code> by method name. | |
| * | |
| * @param methodName method name | |
| * @return String[] returned by method | |
| * @throws MissingResourceException if methodName is not valid | |
| */ | |
| String[] getStringArray(String methodName) throws MissingResourceException; | |
| } |