Interface BindProcessor
-
public interface BindProcessorПроцессор связывания метаданных с данными
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description <D extends Compiled>
voidbind(D compiled, Object... scopes)Связать метаданные с даннымиbooleancanResolveParam(String param)Есть ли данные для разрешения параметраDataSetexecuteQuery(String queryId)Получить значение выборки с текущими параметрами запроса<D extends Compiled>
DgetCompiled(CompileContext<D,?> context)Получить собранный объект по идентификаторуStringgetMessage(String messageCode, Object... arguments)Получить локализованное сообщение по коду и аргументам<S extends SourceMetadata>
SgetSource(String id, Class<S> sourceClass)Получить исходный объект по идентификаторуObjectresolve(Object value)Заменить в тексте плейсхолдеры на значения и конвертировать в объект<T> Tresolve(Object value, Class<T> clazz)Заменить в тексте плейсхолдеры на значения и конвертировать в объектObjectresolve(String value)Конвентировать значение в объект<T> Tresolve(String placeholder, Class<T> clazz)Заменить плейсхолдер на значениеObjectresolve(String value, String domain)Конвентировать значение в объект по доменуdefault BindLinkresolveLink(BindLink link)Пытается превратить ссылку в константное значение.BindLinkresolveLink(BindLink link, boolean observable)Пытается превратить ссылку в константное значение, если ссылка не меняется (observable=false)BindLinkresolveLink(BindLink link, boolean observable, boolean strongCompare)Пытается превратить ссылку в константное значение, если ссылка не меняется (observable=false)ObjectresolveLinkValue(ModelLink link)Получение значения параметра из адресной строки по ссылкеModelLinkresolveSubModels(ModelLink link)Попытаться разрешить вложенные модели ссылкиStringresolveText(String text)Заменить в тексте плейсхолдеры на значенияStringresolveText(String text, List<ModelLink> links)Заменить в тексте плейсхолдеры на значения, используя список моделейStringresolveText(String text, ModelLink link)Заменить в тексте плейсхолдеры на значения, используя модельStringresolveTextByParams(String text)Заменить в тексте плейсхолдеры на значения из параметров urlStringresolveUrl(String url)Заменить в строке плейсхолдеры {...} на значения, кроме исключенийStringresolveUrl(String url, List<ModelLink> links)Заменить в адресе параметры, которые ссылаются на переданный список моделейStringresolveUrl(String url, Map<String,? extends BindLink> pathMappings, Map<String,? extends BindLink> queryMappings)Заменить в адресе плейсхолдеры на значенияStringresolveUrl(String url, ModelLink link)Заменить в адресе параметры, которые ссылаются на переданную модель
-
-
-
Method Detail
-
bind
<D extends Compiled> void bind(D compiled, Object... scopes)
Связать метаданные с данными- Type Parameters:
D- Тип метаданной- Parameters:
compiled- Метаданнаяscopes- Объекты, влияющие на последующее связывание
-
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:
- Исходный объект
-
resolve
<T> T resolve(String placeholder, Class<T> clazz)
Заменить плейсхолдер на значение- Type Parameters:
T- Тип значения- Parameters:
placeholder- Плейсхолдер- Returns:
- Значение
-
resolve
Object resolve(String value, String domain)
Конвентировать значение в объект по домену- Parameters:
value- значение для конвертацииdomain- Домен значения- Returns:
- значение
-
resolve
Object resolve(String value)
Конвентировать значение в объект- Parameters:
value- значение для конвертации- Returns:
- значение
-
resolve
Object resolve(Object value)
Заменить в тексте плейсхолдеры на значения и конвертировать в объект- Parameters:
value- значение для конвертации- Returns:
- значение
-
resolve
<T> T resolve(Object value, Class<T> clazz)
Заменить в тексте плейсхолдеры на значения и конвертировать в объект- Type Parameters:
T- Тип значения- Parameters:
value- значение для конвертации- Returns:
- значение
-
resolveText
String resolveText(String text)
Заменить в тексте плейсхолдеры на значения- Parameters:
text- Текст с плейсхолдерами- Returns:
- Текст со значениями вместо плейсхолдеров
-
resolveText
String resolveText(String text, ModelLink link)
Заменить в тексте плейсхолдеры на значения, используя модель- Parameters:
text- Текст с плейсхолдерамиlink- Ссылка на модель, на которую ссылаются плейсхолдеры- Returns:
- Текст со значениями вместо плейсхолдеров
-
resolveText
String resolveText(String text, List<ModelLink> links)
Заменить в тексте плейсхолдеры на значения, используя список моделей- Parameters:
text- Текст с плейсхолдерамиlinks- Список ссылок на модели- Returns:
- Текст со значениями вместо плейсхолдеров
-
resolveTextByParams
String resolveTextByParams(String text)
Заменить в тексте плейсхолдеры на значения из параметров url- Parameters:
text- Текст с плейсхолдерами {}- Returns:
- Текст со значениями вместо плейсхолдеров
-
resolveUrl
String resolveUrl(String url)
Заменить в строке плейсхолдеры {...} на значения, кроме исключений- Parameters:
url- Строка с плейсхолдерами- Returns:
- Строка со значениями вместо плейсхолдеров
-
resolveUrl
String resolveUrl(String url, Map<String,? extends BindLink> pathMappings, Map<String,? extends BindLink> queryMappings)
Заменить в адресе плейсхолдеры на значения- Parameters:
url- АдресpathMappings- path параметрыqueryMappings- query параметры- Returns:
- Адрес со значениями вместо плейсхолдеров
-
resolveUrl
String resolveUrl(String url, ModelLink link)
Заменить в адресе параметры, которые ссылаются на переданную модель- Parameters:
url- Адресlink- Ссылка на модель, по которой определяем какие параметры необходимо заменить- Returns:
- Измененный адрес
-
resolveUrl
String resolveUrl(String url, List<ModelLink> links)
Заменить в адресе параметры, которые ссылаются на переданный список моделей- Parameters:
url- Адресlinks- Список ссылок на модели, по которым определяем какие параметры необходимо заменить- Returns:
- Измененный адрес
-
resolveLink
default BindLink resolveLink(BindLink link)
Пытается превратить ссылку в константное значение.- Parameters:
link- Ссылка
-
resolveLink
BindLink resolveLink(BindLink link, boolean observable)
Пытается превратить ссылку в константное значение, если ссылка не меняется (observable=false)- Parameters:
observable- Превращать ли ссылку в константу, если ссылка может измениться на текущей странице?link- Ссылка
-
resolveLink
BindLink resolveLink(BindLink link, boolean observable, boolean strongCompare)
Пытается превратить ссылку в константное значение, если ссылка не меняется (observable=false)- Parameters:
observable- Превращать ли ссылку в константу, если ссылка может измениться на текущей странице?link- СсылкаstrongCompare- строгое сравнение ссылок
-
resolveLinkValue
Object resolveLinkValue(ModelLink link)
Получение значения параметра из адресной строки по ссылке- Parameters:
link- Ссылка- Returns:
- Значение параметра
-
resolveSubModels
ModelLink resolveSubModels(ModelLink link)
Попытаться разрешить вложенные модели ссылки- Parameters:
link- ссылка на значение
-
executeQuery
DataSet executeQuery(String queryId)
Получить значение выборки с текущими параметрами запроса- Parameters:
queryId- Идентификатор выборки
-
getMessage
String getMessage(String messageCode, Object... arguments)
Получить локализованное сообщение по коду и аргументам- Parameters:
messageCode- Код сообщенияarguments- Аргументы сообщения- Returns:
- Локализованное сообщение
-
canResolveParam
boolean canResolveParam(String param)
Есть ли данные для разрешения параметра- Parameters:
param-- Returns:
-
-