Interface CompileProcessor
-
public interface CompileProcessorПроцессор сборки метаданных
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description <D extends Compiled>
voidaddRoute(java.lang.String route, CompileContext<D,?> context)Зарегистрировать новый маршрут метаданных под контекст<D extends Compiled>
voidaddRoute(CompileContext<D,?> context)Зарегистрировать новый маршрут метаданных под контекстdefault <T> Tcast(T value, T defaultValue1, java.lang.Object... otherDefaultValues)Привести значение к значению по умолчанию, если оно null.<D extends Compiled,S>
Dcompile(S source, CompileContext<?,?> context, java.lang.Object... scopes)Собрать объект<D extends Compiled>
DgetCompiled(CompileContext<D,?> context)Получить собранный объект по идентификаторуjava.lang.StringgetMessage(java.lang.String messageCode, java.lang.Object... arguments)Получить локализованное сообщение по коду и аргументам<D> DgetScope(java.lang.Class<D> scopeClass)Получить метаданную, оказывающую влияние на сборку<S extends SourceMetadata>
SgetSource(java.lang.String id, java.lang.Class<S> sourceClass)Получить исходный объект по идентификаторуjava.util.Map<java.lang.String,java.lang.Object>mapAttributes(ExtensionAttributesAware source)Собрать дополнительные атрибутыjava.lang.Objectresolve(java.lang.String placeholder)Заменить плейсхолдер на значение и конвертировать с автоподбором типа<T> Tresolve(java.lang.String placeholder, java.lang.Class<T> clazz)Заменить плейсхолдер на значение и конвертировать в классjava.lang.Objectresolve(java.lang.String placeholder, java.lang.String domain)Заменить плейсхолдер на значение конвертировать по доменуdefault java.lang.StringresolveJS(java.lang.String text)Превратить текст с ссылками в JS кодjava.lang.ObjectresolveJS(java.lang.String text, java.lang.Class<?> clazz)Превратить текст с ссылками в JS код
-
-
-
Method Detail
-
compile
<D extends Compiled,S> D compile(S source, CompileContext<?,?> context, java.lang.Object... scopes)
Собрать объект- Type Parameters:
S- Тип исходного объектаD- Тип собранного объекта- Parameters:
source- Исходный объектcontext- Контекст сборкиscopes- Объекты, влияющие на последующую сборку. Должны быть разных классов.- Returns:
- Собранный объект
-
mapAttributes
java.util.Map<java.lang.String,java.lang.Object> mapAttributes(ExtensionAttributesAware source)
Собрать дополнительные атрибуты- Parameters:
source- исходный объект с атрибутами- Returns:
- собранные атрибуты
-
getScope
<D> D getScope(java.lang.Class<D> scopeClass)
Получить метаданную, оказывающую влияние на сборку- Type Parameters:
D- Тип скоупа- Parameters:
scopeClass- Класс метаданной- Returns:
- Метаданная, оказывающая влияние на сборку, или null
-
getCompiled
<D extends Compiled> D getCompiled(CompileContext<D,?> context)
Получить собранный объект по идентификатору- Type Parameters:
D- Тип собранного объекта- Parameters:
context- Контекст сборки- Returns:
- Собранный объект
-
getSource
<S extends SourceMetadata> S getSource(java.lang.String id, java.lang.Class<S> sourceClass)
Получить исходный объект по идентификатору- Type Parameters:
S- Тип исходного объекта- Parameters:
id- ИдентификаторsourceClass- Класс исходного объекта- Returns:
- Исходный объект
-
addRoute
<D extends Compiled> void addRoute(CompileContext<D,?> context)
Зарегистрировать новый маршрут метаданных под контекст- Parameters:
context- Контекст сборки
-
addRoute
<D extends Compiled> void addRoute(java.lang.String route, CompileContext<D,?> context)
Зарегистрировать новый маршрут метаданных под контекст- Parameters:
route- Шаблон URLcontext- Контекст сборки
-
resolve
<T> T resolve(java.lang.String placeholder, java.lang.Class<T> clazz)Заменить плейсхолдер на значение и конвертировать в класс- Type Parameters:
T- Тип значения- Parameters:
placeholder- Плейсхолдер- Returns:
- Значение
-
resolve
java.lang.Object resolve(java.lang.String placeholder, java.lang.String domain)Заменить плейсхолдер на значение конвертировать по домену- Parameters:
placeholder- значение для конвертацииdomain- Домен значения- Returns:
- значение
-
resolve
java.lang.Object resolve(java.lang.String placeholder)
Заменить плейсхолдер на значение и конвертировать с автоподбором типа- Parameters:
placeholder- значение для конвертации- Returns:
- значение
-
resolveJS
java.lang.Object resolveJS(java.lang.String text, java.lang.Class<?> clazz)Превратить текст с ссылками в JS код- Parameters:
text- Текстclazz- Тип значения, если это не JS код- Returns:
- JS код или объект типа clazz
-
resolveJS
default java.lang.String resolveJS(java.lang.String text)
Превратить текст с ссылками в JS код- Parameters:
text- Текст- Returns:
- JS код или исходная строка
-
getMessage
java.lang.String getMessage(java.lang.String messageCode, java.lang.Object... arguments)Получить локализованное сообщение по коду и аргументам- Parameters:
messageCode- Код сообщенияarguments- Аргументы сообщения- Returns:
- Локализованное сообщение
-
cast
default <T> T cast(T value, T defaultValue1, java.lang.Object... otherDefaultValues)Привести значение к значению по умолчанию, если оно null. Если первое значение по умолчанию тоже null, берется следующее и т.д.- Type Parameters:
T- Тип значения- Parameters:
value- Исходное значениеdefaultValue1- Первое значения по умолчаниюotherDefaultValues- Следующие значения по умолчанию- Returns:
- Значение приведенное к значению по умолчанию
-
-