code: public void onConfigurationChanged() {
          final Collection<PropertyWidget<?>> widgets = getWidgets();
  
          if (logger.isDebugEnabled()) {
              final StringBuilder sb = new StringBuilder();
              sb.append("id=");
              sb.append(System.identityHashCode(this));
              sb.append(" - onConfigurationChanged() - notifying widgets:");
              sb.append(widgets.size());
              for (final PropertyWidget<?> widget : widgets) {
                  final String propertyName = widget.getPropertyDescriptor().getName();
                  final String propertyWidgetClassName = widget.getClass().getSimpleName();
                  sb.append("\n - ");
                  sb.append(propertyName);
                  sb.append(": ");
                  sb.append(propertyWidgetClassName);
              }
  
              logger.debug(sb.toString());
          }
  
          for (final PropertyWidget<?> widget : widgets) {
              @SuppressWarnings("unchecked") final PropertyWidget<Object> objectWidget = (PropertyWidget<Object>) widget;
              final ConfiguredPropertyDescriptor propertyDescriptor = objectWidget.getPropertyDescriptor();
              final Object value = _componentBuilder.getConfiguredProperty(propertyDescriptor);
              objectWidget.onValueTouched(value);
          }
      }
docs: Invoked whenever a configured property within this widget factory is
  changed.