keycloak-scim/server-spi/src/main/java/org/keycloak/theme/Theme.java

73 lines
2.3 KiB
Java
Raw Normal View History

2016-02-03 10:20:22 +00:00
/*
* Copyright 2016 Red Hat, Inc. and/or its affiliates
* and other contributors as indicated by the @author tags.
*
* 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.
*/
2016-01-19 16:33:59 +00:00
package org.keycloak.theme;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) admin gui for localization support (cherry picked from commit c157cc3) added locale support to ClassLoaderTheme and FolderTheme (cherry picked from commit 764960a) rename localizatin to internationalization (cherry picked from commit 74a0658) fallback if no message can be found (cherry picked from commit 2d54e6f) fallback if no message can be found (cherry picked from commit 2d54e6f) add HttpHeaders (cherry picked from commit be921c8) add HttpHeaders (cherry picked from commit be921c8) NPE fix (cherry picked from commit 148158b) improve locale helper (cherry picked from commit 57a805a) write cookie fix npe (cherry picked from commit 33398b3) dropdown to choose language (cherry picked from commit 9e2eb60) added dropdown to choose locale to the account page. fixed the path of the cookie. (cherry picked from commit 871469a) remove debug info (cherry picked from commit c3ea6b1) added dropdown to change locale for user. (cherry picked from commit 1575bea) add i18n for emails (cherry picked from commit b6280e9) i18n for emails (cherry picked from commit 6118c51) set default locale to english (cherry picked from commit 386447b) change locale type form String to Locale (cherry picked from commit 8dcc595) change file encoding (cherry picked from commit 2cce96d) added parameters to setSuccess, setWarning, setError (cherry picked from commit 64ea438) i18n for error messages (cherry picked from commit e75d5ef) i18n for error message in login (cherry picked from commit 8b60c96) add i18n for messages in account pages (cherry picked from commit 9849d94) fix unit test (cherry picked from commit a70a1c7) fix unit test (cherry picked from commit 008744b) locale localization :) (cherry picked from commit f3a2144) locale localization :) (cherry picked from commit 21f6384) messages refactoring (cherry picked from commit 08f1ae7) messages refactoring (cherry picked from commit 3b4b53a) messages refactoring (cherry picked from commit 69146d4) messages refactoring (cherry picked from commit cd3db1d) messages refactoring (cherry picked from commit 715583f) fix unit tests after message refactoring (cherry picked from commit a82c9ff) fix unit tests after message refactoring (cherry picked from commit 5662d83) fix unit tests after message refactoring (cherry picked from commit 1188de6) fix unit tests after message refactoring (cherry picked from commit 90ded07) German translations (cherry picked from commit 9822b99) removed newliines (cherry picked from commit 34ca1d8) removed java 8 dependency (cherry picked from commit 3a23f4f) typo (cherry picked from commit a818122) typo (cherry picked from commit a818122) forgotten properties unit test fixes unit test fixes fixes after rebase add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) admin gui for localization support (cherry picked from commit c157cc3) added locale support to ClassLoaderTheme and FolderTheme (cherry picked from commit 764960a) rename localizatin to internationalization (cherry picked from commit 74a0658) fallback if no message can be found (cherry picked from commit 2d54e6f) fallback if no message can be found (cherry picked from commit 2d54e6f) add HttpHeaders (cherry picked from commit be921c8) add HttpHeaders (cherry picked from commit be921c8) NPE fix (cherry picked from commit 148158b) improve locale helper (cherry picked from commit 57a805a) write cookie fix npe (cherry picked from commit 33398b3) dropdown to choose language (cherry picked from commit 9e2eb60) added dropdown to choose locale to the account page. fixed the path of the cookie. (cherry picked from commit 871469a) remove debug info (cherry picked from commit c3ea6b1) added dropdown to change locale for user. (cherry picked from commit 1575bea) add i18n for emails (cherry picked from commit b6280e9) i18n for emails (cherry picked from commit 6118c51) set default locale to english (cherry picked from commit 386447b) change locale type form String to Locale (cherry picked from commit 8dcc595) change file encoding (cherry picked from commit 2cce96d) added parameters to setSuccess, setWarning, setError (cherry picked from commit 64ea438) i18n for error messages (cherry picked from commit e75d5ef) i18n for error message in login (cherry picked from commit 8b60c96) add i18n for messages in account pages (cherry picked from commit 9849d94) fix unit test (cherry picked from commit a70a1c7) fix unit test (cherry picked from commit 008744b) locale localization :) (cherry picked from commit f3a2144) locale localization :) (cherry picked from commit 21f6384) messages refactoring (cherry picked from commit 08f1ae7) messages refactoring (cherry picked from commit 3b4b53a) messages refactoring (cherry picked from commit 69146d4) messages refactoring (cherry picked from commit cd3db1d) messages refactoring (cherry picked from commit 715583f) fix unit tests after message refactoring (cherry picked from commit a82c9ff) fix unit tests after message refactoring (cherry picked from commit 5662d83) fix unit tests after message refactoring (cherry picked from commit 1188de6) fix unit tests after message refactoring (cherry picked from commit 90ded07) German translations (cherry picked from commit 9822b99) removed newliines (cherry picked from commit 34ca1d8) removed java 8 dependency (cherry picked from commit 3a23f4f) typo (cherry picked from commit a818122) typo (cherry picked from commit a818122) forgotten properties unit test fixes unit test fixes fixes after rebase fixes after rebase fixes after rebase fixes after rebase
2015-02-21 16:36:47 +00:00
import java.util.Locale;
import java.util.Properties;
/**
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
*/
public interface Theme {
public enum Type { LOGIN, ACCOUNT, ADMIN, EMAIL, WELCOME, COMMON };
public String getName();
public String getParentName();
public String getImportName();
public Type getType();
public URL getTemplate(String name) throws IOException;
public InputStream getTemplateAsStream(String name) throws IOException;
public URL getResource(String path) throws IOException;
public InputStream getResourceAsStream(String path) throws IOException;
/**
* Same as getMessages(baseBundlename, locale), but uses a default baseBundlename
* such as "messages".
*
* @param locale The locale of the desired message bundle.
* @return The localized messages from the bundle.
* @throws IOException If bundle can not be read.
*/
add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) admin gui for localization support (cherry picked from commit c157cc3) added locale support to ClassLoaderTheme and FolderTheme (cherry picked from commit 764960a) rename localizatin to internationalization (cherry picked from commit 74a0658) fallback if no message can be found (cherry picked from commit 2d54e6f) fallback if no message can be found (cherry picked from commit 2d54e6f) add HttpHeaders (cherry picked from commit be921c8) add HttpHeaders (cherry picked from commit be921c8) NPE fix (cherry picked from commit 148158b) improve locale helper (cherry picked from commit 57a805a) write cookie fix npe (cherry picked from commit 33398b3) dropdown to choose language (cherry picked from commit 9e2eb60) added dropdown to choose locale to the account page. fixed the path of the cookie. (cherry picked from commit 871469a) remove debug info (cherry picked from commit c3ea6b1) added dropdown to change locale for user. (cherry picked from commit 1575bea) add i18n for emails (cherry picked from commit b6280e9) i18n for emails (cherry picked from commit 6118c51) set default locale to english (cherry picked from commit 386447b) change locale type form String to Locale (cherry picked from commit 8dcc595) change file encoding (cherry picked from commit 2cce96d) added parameters to setSuccess, setWarning, setError (cherry picked from commit 64ea438) i18n for error messages (cherry picked from commit e75d5ef) i18n for error message in login (cherry picked from commit 8b60c96) add i18n for messages in account pages (cherry picked from commit 9849d94) fix unit test (cherry picked from commit a70a1c7) fix unit test (cherry picked from commit 008744b) locale localization :) (cherry picked from commit f3a2144) locale localization :) (cherry picked from commit 21f6384) messages refactoring (cherry picked from commit 08f1ae7) messages refactoring (cherry picked from commit 3b4b53a) messages refactoring (cherry picked from commit 69146d4) messages refactoring (cherry picked from commit cd3db1d) messages refactoring (cherry picked from commit 715583f) fix unit tests after message refactoring (cherry picked from commit a82c9ff) fix unit tests after message refactoring (cherry picked from commit 5662d83) fix unit tests after message refactoring (cherry picked from commit 1188de6) fix unit tests after message refactoring (cherry picked from commit 90ded07) German translations (cherry picked from commit 9822b99) removed newliines (cherry picked from commit 34ca1d8) removed java 8 dependency (cherry picked from commit 3a23f4f) typo (cherry picked from commit a818122) typo (cherry picked from commit a818122) forgotten properties unit test fixes unit test fixes fixes after rebase add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) add localization support to realm (cherry picked from commit b00764b) admin gui for localization support (cherry picked from commit c157cc3) added locale support to ClassLoaderTheme and FolderTheme (cherry picked from commit 764960a) rename localizatin to internationalization (cherry picked from commit 74a0658) fallback if no message can be found (cherry picked from commit 2d54e6f) fallback if no message can be found (cherry picked from commit 2d54e6f) add HttpHeaders (cherry picked from commit be921c8) add HttpHeaders (cherry picked from commit be921c8) NPE fix (cherry picked from commit 148158b) improve locale helper (cherry picked from commit 57a805a) write cookie fix npe (cherry picked from commit 33398b3) dropdown to choose language (cherry picked from commit 9e2eb60) added dropdown to choose locale to the account page. fixed the path of the cookie. (cherry picked from commit 871469a) remove debug info (cherry picked from commit c3ea6b1) added dropdown to change locale for user. (cherry picked from commit 1575bea) add i18n for emails (cherry picked from commit b6280e9) i18n for emails (cherry picked from commit 6118c51) set default locale to english (cherry picked from commit 386447b) change locale type form String to Locale (cherry picked from commit 8dcc595) change file encoding (cherry picked from commit 2cce96d) added parameters to setSuccess, setWarning, setError (cherry picked from commit 64ea438) i18n for error messages (cherry picked from commit e75d5ef) i18n for error message in login (cherry picked from commit 8b60c96) add i18n for messages in account pages (cherry picked from commit 9849d94) fix unit test (cherry picked from commit a70a1c7) fix unit test (cherry picked from commit 008744b) locale localization :) (cherry picked from commit f3a2144) locale localization :) (cherry picked from commit 21f6384) messages refactoring (cherry picked from commit 08f1ae7) messages refactoring (cherry picked from commit 3b4b53a) messages refactoring (cherry picked from commit 69146d4) messages refactoring (cherry picked from commit cd3db1d) messages refactoring (cherry picked from commit 715583f) fix unit tests after message refactoring (cherry picked from commit a82c9ff) fix unit tests after message refactoring (cherry picked from commit 5662d83) fix unit tests after message refactoring (cherry picked from commit 1188de6) fix unit tests after message refactoring (cherry picked from commit 90ded07) German translations (cherry picked from commit 9822b99) removed newliines (cherry picked from commit 34ca1d8) removed java 8 dependency (cherry picked from commit 3a23f4f) typo (cherry picked from commit a818122) typo (cherry picked from commit a818122) forgotten properties unit test fixes unit test fixes fixes after rebase fixes after rebase fixes after rebase fixes after rebase
2015-02-21 16:36:47 +00:00
public Properties getMessages(Locale locale) throws IOException;
/**
* Retrieve localized messages from a message bundle.
*
* @param baseBundlename The base name of the bundle, such as "messages" in
* messages_en.properties.
* @param locale The locale of the desired message bundle.
* @return The localized messages from the bundle.
* @throws IOException If bundle can not be read.
*/
public Properties getMessages(String baseBundlename, Locale locale) throws IOException;
public Properties getProperties() throws IOException;
}