code: public void validate(final ComponentDescriptor<?> descriptor, final Object component) {
          final Set<ValidateMethodDescriptor> validateDescriptors = descriptor.getValidateMethods();
          for (final ValidateMethodDescriptor validateDescriptor : validateDescriptors) {
              validateDescriptor.validate(component);
          }
      }
docs: Validates a component using any {@link Validate} methods. This is
  typically done after
  {@link #assignProvidedProperties(ComponentDescriptor, Object)} and
  {@link #assignConfiguredProperties(ComponentDescriptor, Object, ComponentConfiguration)}
  
  Usually validation is light-weight, idempotent and quick, as compared to
  {@link #initialize(ComponentDescriptor, Object, boolean)}.
  
  @param descriptor
  @param component