keycloak-service
公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.theme.ClassLoaderTheme クラス
org.keycloak.theme.ClassLoaderTheme の継承関係図
Inheritance graph
org.keycloak.theme.ClassLoaderTheme 連携図
Collaboration graph

公開メンバ関数

 ClassLoaderTheme (String name, Type type, ClassLoader classLoader) throws IOException
 
void init (String name, Type type, ClassLoader classLoader) throws IOException
 
String getName ()
 
String getParentName ()
 
String getImportName ()
 
Type getType ()
 
URL getTemplate (String name)
 
InputStream getResourceAsStream (String path)
 
Properties getMessages (Locale locale) throws IOException
 
Properties getMessages (String baseBundlename, Locale locale) throws IOException
 
Properties getProperties ()
 

非公開変数類

String name
 
String parentName
 
String importName
 
Type type
 
ClassLoader classLoader
 
String templateRoot
 
String resourceRoot
 
String messageRoot
 
Properties properties
 

詳解

著者
Stian Thorgersen

構築子と解体子

◆ ClassLoaderTheme()

org.keycloak.theme.ClassLoaderTheme.ClassLoaderTheme ( String  name,
Type  type,
ClassLoader  classLoader 
) throws IOException
inline
52  {
54  }
ClassLoader classLoader
Definition: ClassLoaderTheme.java:42
void init(String name, Type type, ClassLoader classLoader)
Definition: ClassLoaderTheme.java:56
Type type
Definition: ClassLoaderTheme.java:40
String name
Definition: ClassLoaderTheme.java:34

関数詳解

◆ getImportName()

String org.keycloak.theme.ClassLoaderTheme.getImportName ( )
inline
93  {
94  return importName;
95  }
String importName
Definition: ClassLoaderTheme.java:38

◆ getMessages() [1/2]

Properties org.keycloak.theme.ClassLoaderTheme.getMessages ( Locale  locale) throws IOException
inline
113  {
114  return getMessages("messages", locale);
115  }
Properties getMessages(Locale locale)
Definition: ClassLoaderTheme.java:113

◆ getMessages() [2/2]

Properties org.keycloak.theme.ClassLoaderTheme.getMessages ( String  baseBundlename,
Locale  locale 
) throws IOException
inline
118  {
119  if(locale == null){
120  return null;
121  }
122  Properties m = new Properties();
123 
124  URL url = classLoader.getResource(this.messageRoot + baseBundlename + "_" + locale.toString() + ".properties");
125  if (url != null) {
126  Charset encoding = PropertiesUtil.detectEncoding(url.openStream());
127  try (Reader reader = new InputStreamReader(url.openStream(), encoding)) {
128  m.load(reader);
129  }
130  }
131  return m;
132  }
ClassLoader classLoader
Definition: ClassLoaderTheme.java:42
String messageRoot
Definition: ClassLoaderTheme.java:48

◆ getName()

String org.keycloak.theme.ClassLoaderTheme.getName ( )
inline
83  {
84  return name;
85  }
String name
Definition: ClassLoaderTheme.java:34

◆ getParentName()

String org.keycloak.theme.ClassLoaderTheme.getParentName ( )
inline
88  {
89  return parentName;
90  }
String parentName
Definition: ClassLoaderTheme.java:36

◆ getProperties()

Properties org.keycloak.theme.ClassLoaderTheme.getProperties ( )
inline
135  {
136  return properties;
137  }
Properties properties
Definition: ClassLoaderTheme.java:50

◆ getResourceAsStream()

InputStream org.keycloak.theme.ClassLoaderTheme.getResourceAsStream ( String  path)
inline
108  {
109  return classLoader.getResourceAsStream(resourceRoot + path);
110  }
ClassLoader classLoader
Definition: ClassLoaderTheme.java:42
String resourceRoot
Definition: ClassLoaderTheme.java:46

◆ getTemplate()

URL org.keycloak.theme.ClassLoaderTheme.getTemplate ( String  name)
inline
103  {
104  return classLoader.getResource(templateRoot + name);
105  }
ClassLoader classLoader
Definition: ClassLoaderTheme.java:42
String name
Definition: ClassLoaderTheme.java:34
String templateRoot
Definition: ClassLoaderTheme.java:44

◆ getType()

Type org.keycloak.theme.ClassLoaderTheme.getType ( )
inline
98  {
99  return type;
100  }
Type type
Definition: ClassLoaderTheme.java:40

◆ init()

void org.keycloak.theme.ClassLoaderTheme.init ( String  name,
Type  type,
ClassLoader  classLoader 
) throws IOException
inline
56  {
57  this.name = name;
58  this.type = type;
59  this.classLoader = classLoader;
60 
61  String themeRoot = "theme/" + name + "/" + type.toString().toLowerCase() + "/";
62 
63  this.templateRoot = themeRoot;
64  this.resourceRoot = themeRoot + "resources/";
65  this.messageRoot = themeRoot + "messages/";
66  this.properties = new Properties();
67 
68  URL p = classLoader.getResource(themeRoot + "theme.properties");
69  if (p != null) {
70  Charset encoding = PropertiesUtil.detectEncoding(p.openStream());
71  try (Reader reader = new InputStreamReader(p.openStream(), encoding)) {
72  properties.load(reader);
73  }
74  this.parentName = properties.getProperty("parent");
75  this.importName = properties.getProperty("import");
76  } else {
77  this.parentName = null;
78  this.importName = null;
79  }
80  }
ClassLoader classLoader
Definition: ClassLoaderTheme.java:42
Properties properties
Definition: ClassLoaderTheme.java:50
String resourceRoot
Definition: ClassLoaderTheme.java:46
String parentName
Definition: ClassLoaderTheme.java:36
Type type
Definition: ClassLoaderTheme.java:40
String name
Definition: ClassLoaderTheme.java:34
String messageRoot
Definition: ClassLoaderTheme.java:48
String importName
Definition: ClassLoaderTheme.java:38
String templateRoot
Definition: ClassLoaderTheme.java:44

メンバ詳解

◆ classLoader

ClassLoader org.keycloak.theme.ClassLoaderTheme.classLoader
private

◆ importName

String org.keycloak.theme.ClassLoaderTheme.importName
private

◆ messageRoot

String org.keycloak.theme.ClassLoaderTheme.messageRoot
private

◆ name

String org.keycloak.theme.ClassLoaderTheme.name
private

◆ parentName

String org.keycloak.theme.ClassLoaderTheme.parentName
private

◆ properties

Properties org.keycloak.theme.ClassLoaderTheme.properties
private

◆ resourceRoot

String org.keycloak.theme.ClassLoaderTheme.resourceRoot
private

◆ templateRoot

String org.keycloak.theme.ClassLoaderTheme.templateRoot
private

◆ type

Type org.keycloak.theme.ClassLoaderTheme.type
private

このクラス詳解は次のファイルから抽出されました: