protected WidgetDefinition lookupWidget(LayoutDefinition layoutDef, WidgetReference widgetRef) { String widgetName = widgetRef.getName(); WidgetDefinition wDef = null; if (layoutDef != null) { wDef = layoutDef.getWidgetDefinition(widgetName); if (wDef != null && wDef.getType() == null) { // consider it's a reference for a global widget wDef = null; } } if (wDef == null) { // try in global registry wDef = lookupWidget(widgetRef); } return wDef; }
StringBuffer builder = new StringBuffer(); builder.append(widgetDef.getName()).append(";"); builder.append(widgetDef.getType()).append(";"); builder.append(widgetDef.getTypeCategory()).append(";");
jg.writeStartObject(); jg.writeStringField("name", entity.getName()); jg.writeStringField("type", entity.getType()); String typeCategory = entity.getTypeCategory(); if (StringUtils.isNotBlank(typeCategory)) {
@Override public WidgetDefinition getWidgetDefinition(WidgetDefinition widgetDef, LayoutConversionContext ctx) { String wType = widgetDef.getType(); if (isDirectoryWidget(wType)) { String dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinModes.ANY).get(DIR_NAME_PROPERTY); if (dirName == null) { dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinWidgetModes.EDIT).get( DIR_NAME_PROPERTY); } if (dirName == null) { dirName = (String) widgetDef.getProperties(BuiltinModes.ANY, BuiltinWidgetModes.VIEW).get( DIR_NAME_PROPERTY); } if (dirName != null) { WidgetDefinition clone = getClonedWidget(widgetDef); // change select options on new widget WidgetSelectOption[] selectOptions = VocabularyHelper.getVocabularySelectOptions(dirName, ctx.getLanguage()).toArray(new WidgetSelectOption[] {}); clone.setSelectOptions(selectOptions); return clone; } } return widgetDef; } }
@Override public WidgetDefinition getWidgetDefinition(WidgetDefinition widgetDef, LayoutConversionContext ctx) { String wType = widgetDef.getType(); String wName = widgetDef.getName(); if (getAcceptedWidgetNames().contains(wName) && isAccepted(wType)) { WidgetDefinition clone = getClonedWidget(widgetDef); // change select options on new widget WidgetSelectOption[] selectOptions = VocabularyHelper.getChainSelectVocabularySelectOptions( getParentDirectoryName(), getChildDirectoryName(), ctx.getLanguage()).toArray( new WidgetSelectOption[] {}); clone.setSelectOptions(selectOptions); return clone; } return widgetDef; } }