MessageSourceDecorator.java
001 /*
002  * Copyright 2008-2016 the original author or authors.
003  *
004  * Licensed under the Apache License, Version 2.0 (the "License");
005  * you may not use this file except in compliance with the License.
006  * You may obtain a copy of the License at
007  *
008  *     http://www.apache.org/licenses/LICENSE-2.0
009  *
010  * Unless required by applicable law or agreed to in writing, software
011  * distributed under the License is distributed on an "AS IS" BASIS,
012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013  * See the License for the specific language governing permissions and
014  * limitations under the License.
015  */
016 package org.codehaus.griffon.runtime.core.i18n;
017 
018 import griffon.core.i18n.MessageSource;
019 import griffon.core.i18n.NoSuchMessageException;
020 
021 import javax.annotation.Nonnull;
022 import javax.annotation.Nullable;
023 import java.util.List;
024 import java.util.Locale;
025 import java.util.Map;
026 import java.util.ResourceBundle;
027 
028 import static java.util.Objects.requireNonNull;
029 
030 /**
031  @author Andres Almiray
032  @since 2.4.0
033  */
034 public class MessageSourceDecorator implements MessageSource {
035     private final MessageSource delegate;
036 
037     public MessageSourceDecorator(@Nonnull MessageSource delegate) {
038         this.delegate = requireNonNull(delegate, "Argument 'delegate' must not be null");
039     }
040 
041     @Nonnull
042     protected MessageSource getDelegate() {
043         return delegate;
044     }
045 
046     @Nonnull
047     public String getMessage(@Nonnull String keythrows NoSuchMessageException {
048         return getDelegate().getMessage(key);
049     }
050 
051     @Nonnull
052     public String formatMessage(@Nonnull String message, @Nonnull Object[] args) {
053         return getDelegate().formatMessage(message, args);
054     }
055 
056     @Nullable
057     public String getMessage(@Nonnull String key, @Nonnull List<?> args, @Nonnull Locale locale, @Nullable String defaultMessage) {
058         return getDelegate().getMessage(key, args, locale, defaultMessage);
059     }
060 
061     @Nonnull
062     public String getMessage(@Nonnull String key, @Nonnull Object[] args, @Nonnull Locale localethrows NoSuchMessageException {
063         return getDelegate().getMessage(key, args, locale);
064     }
065 
066     @Nonnull
067     public String getMessage(@Nonnull String key, @Nonnull List<?> argsthrows NoSuchMessageException {
068         return getDelegate().getMessage(key, args);
069     }
070 
071     @Nullable
072     public String getMessage(@Nonnull String key, @Nonnull List<?> args, @Nullable String defaultMessage) {
073         return getDelegate().getMessage(key, args, defaultMessage);
074     }
075 
076     @Nullable
077     public String getMessage(@Nonnull String key, @Nonnull Object[] args, @Nonnull Locale locale, @Nullable String defaultMessage) {
078         return getDelegate().getMessage(key, args, locale, defaultMessage);
079     }
080 
081     @Nonnull
082     public String formatMessage(@Nonnull String message, @Nonnull List<?> args) {
083         return getDelegate().formatMessage(message, args);
084     }
085 
086     @Nonnull
087     public String formatMessage(@Nonnull String message, @Nonnull Map<String, Object> args) {
088         return getDelegate().formatMessage(message, args);
089     }
090 
091     @Nonnull
092     public String getMessage(@Nonnull String key, @Nonnull Object[] argsthrows NoSuchMessageException {
093         return getDelegate().getMessage(key, args);
094     }
095 
096     @Nullable
097     public String getMessage(@Nonnull String key, @Nullable String defaultMessage) {
098         return getDelegate().getMessage(key, defaultMessage);
099     }
100 
101     @Nullable
102     public String getMessage(@Nonnull String key, @Nonnull Map<String, Object> args, @Nullable String defaultMessage) {
103         return getDelegate().getMessage(key, args, defaultMessage);
104     }
105 
106     @Nonnull
107     public String getMessage(@Nonnull String key, @Nonnull Locale localethrows NoSuchMessageException {
108         return getDelegate().getMessage(key, locale);
109     }
110 
111     @Nonnull
112     public String getMessage(@Nonnull String key, @Nonnull Map<String, Object> argsthrows NoSuchMessageException {
113         return getDelegate().getMessage(key, args);
114     }
115 
116     @Nullable
117     public String getMessage(@Nonnull String key, @Nonnull Locale locale, @Nullable String defaultMessage) {
118         return getDelegate().getMessage(key, locale, defaultMessage);
119     }
120 
121     @Nullable
122     public String getMessage(@Nonnull String key, @Nonnull Object[] args, @Nullable String defaultMessage) {
123         return getDelegate().getMessage(key, args, defaultMessage);
124     }
125 
126     @Nonnull
127     public String getMessage(@Nonnull String key, @Nonnull Map<String, Object> args, @Nonnull Locale localethrows NoSuchMessageException {
128         return getDelegate().getMessage(key, args, locale);
129     }
130 
131     @Nonnull
132     public ResourceBundle asResourceBundle() {
133         return getDelegate().asResourceBundle();
134     }
135 
136     @Nullable
137     public String getMessage(@Nonnull String key, @Nonnull Map<String, Object> args, @Nonnull Locale locale, @Nullable String defaultMessage) {
138         return getDelegate().getMessage(key, args, locale, defaultMessage);
139     }
140 
141     @Nonnull
142     public String getMessage(@Nonnull String key, @Nonnull List<?> args, @Nonnull Locale localethrows NoSuchMessageException {
143         return getDelegate().getMessage(key, args, locale);
144     }
145 
146     @Nonnull
147     public Object resolveMessageValue(@Nonnull String key, @Nonnull Locale localethrows NoSuchMessageException {
148         return getDelegate().resolveMessageValue(key, locale);
149     }
150 }