protected static void copySourcesAttributes(VLViewComponentXML referenced, VLViewComponentXML resolved) { if(referenced.getVisibleIf() != null) resolved.setVisibleIf(referenced.getVisibleIf()); if(referenced.getCriteria() != null && resolved.getCriteria() == null) resolved.setCriteria(referenced.getCriteria()); if(referenced.getSeparatorAfter() != null) resolved.setSeparatorAfter(referenced.getSeparatorAfter()); if(referenced.getResponsiveOrder() != null) resolved.setResponsiveOrder(referenced.getResponsiveOrder()); if(referenced.getMasterColumn() != null) resolved.setMasterColumn(referenced.getMasterColumn()); if (StringUtils.isNotBlank(referenced.getDefaultButton())) { if(!resolved.getProperties().containsKey("default")) resolved.getProperties().put("default", referenced.getDefaultButton()); } if (referenced.getComponentById(VALIDATOR) != null) { if (resolved.getComponentById(VALIDATOR) != null) { final Optional<VLViewComponentXML> comp = resolved.getComponentById(VALIDATOR); comp.ifPresent(c -> resolved.getSubcomponents().remove(c)); } final Optional<VLViewComponentXML> d = referenced.getComponentById(VALIDATOR); d.ifPresent(f -> resolved.getSubcomponents().add(f)); } }