Class OptionSourceRegistry
java.lang.Object
org.praxisplatform.uischema.options.OptionSourceRegistry
Registro canônico de option-sources expostas por cada recurso.
Option-sources representam superfícies derivadas de opcoes que podem ser consumidas por selects, combos dependentes e outros componentes metadata-driven sem exigir endpoints personalizados por app. Este registry organiza essas fontes por classe de recurso e chave canônica.
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic OptionSourceRegistry.Builderbuilder()Cria um builder para montagem fluente do registry.booleanVerifica se uma chave de option-source esta registrada para o recurso.static OptionSourceRegistryempty()Retorna um registry vazio.booleanisEmpty()Indica se o registry nao possui fontes registradas.static OptionSourceRegistrymerge(OptionSourceRegistry... registries) Combina varios registries em uma unica visao imutavel.static OptionSourceRegistryof(Map<Class<?>, Collection<OptionSourceDescriptor>> descriptorsByResource) Cria um registry imutavel a partir de um mapa por recurso.Resolve uma option-source por classe de recurso e chave canonica.resolveByResourcePathAndField(String resourcePath, String fieldName) Resolve uma option-source pelo path do recurso e pelo campo efetivo de filtro.
-
Method Details
-
empty
Retorna um registry vazio.- Returns:
- registry vazio
-
of
public static OptionSourceRegistry of(Map<Class<?>, Collection<OptionSourceDescriptor>> descriptorsByResource) Cria um registry imutavel a partir de um mapa por recurso.- Parameters:
descriptorsByResource- mapa recurso -> option-sources registradas- Returns:
- registry resultante
-
builder
Cria um builder para montagem fluente do registry.- Returns:
- builder do registry
-
merge
Combina varios registries em uma unica visao imutavel.- Parameters:
registries- registries a combinar- Returns:
- registry resultante da fusao
-
resolve
Resolve uma option-source por classe de recurso e chave canonica.- Parameters:
resourceClass- classe da entidade/recursosourceKey- chave da fonte- Returns:
- descritor correspondente, quando existir
-
resolveByResourcePathAndField
public Optional<OptionSourceDescriptor> resolveByResourcePathAndField(String resourcePath, String fieldName) Resolve uma option-source pelo path do recurso e pelo campo efetivo de filtro.Esse metodo e util para enriquecimentos documentais e para superfícies derivadas que partem do contrato HTTP, e nao necessariamente da classe Java do recurso.
- Parameters:
resourcePath- path do recurso HTTPfieldName- campo de filtro efetivo- Returns:
- descritor correspondente, quando existir
-
contains
Verifica se uma chave de option-source esta registrada para o recurso.- Parameters:
resourceClass- classe da entidade/recursosourceKey- chave da fonte- Returns:
truequando a fonte existir
-
isEmpty
public boolean isEmpty()Indica se o registry nao possui fontes registradas.- Returns:
truequando vazio
-