return (uiComponent instanceof CoreOutputLabel);
}
protected void initCoreOutputLabel(FacesContext facesContext, CoreOutputLabel coreOutputLabel)
{
ValidationStrategy validationStrategy;
MetaDataTransformer metaDataTransformer;
MetaDataExtractor annotationExtractor = ExtValContext.getContext().getFactoryFinder().getFactory(
FactoryNames.COMPONENT_META_DATA_EXTRACTOR_FACTORY, ComponentMetaDataExtractorFactory.class).create();
UIComponent targetComponent = TrinidadUtils.findLabeledEditableComponent(coreOutputLabel);
if(targetComponent == null || !isComponentEditable(targetComponent))
{
return;
}
Boolean skipInitialization = false;
Map<String, Object> metaData;
for (MetaDataEntry entry : annotationExtractor.extract(facesContext, targetComponent).getMetaDataEntries())
{
validationStrategy = ExtValUtils.getValidationStrategyForMetaData(entry.getKey());
if (validationStrategy != null)
{
metaDataTransformer = ExtValUtils.getMetaDataTransformerForValidationStrategy(validationStrategy);
if(metaDataTransformer != null)
{
metaData = metaDataTransformer.convertMetaData(entry);
}
else
{
metaData = null;
}
if(metaData == null)
{
metaData = new HashMap<String, Object>();
}
else if(metaData.containsKey(CommonMetaDataKeys.SKIP_VALIDATION))
{
//execute skip validation strategy -> skip validation y/n in entry
validationStrategy.validate(facesContext, targetComponent, entry, null);
skipInitialization = entry.getProperty(CommonMetaDataKeys.SKIP_VALIDATION, Boolean.class);
continue;
}
if(Boolean.TRUE.equals(skipInitialization) && !metaData.isEmpty() &&
ExtValUtils.isSkipableValidationStrategy(validationStrategy.getClass()))
{
metaData.put(CommonMetaDataKeys.SKIP_VALIDATION, true);
}
if(!metaData.isEmpty())