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