public class org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext extends org.hibernate.validator.internal.engine.validationcontext.AbstractValidationContext implements org.hibernate.validator.internal.engine.validationcontext.ExecutableValidationContext
{
private final java.lang.reflect.Executable executable;
private final java.lang.Object[] executableParameters;
private final java.util.Optional executableMetaData;
void <init>(org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorManager, jakarta.validation.ConstraintValidatorFactory, org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext, jakarta.validation.TraversableResolver, org.hibernate.validator.constraintvalidation.HibernateConstraintValidatorInitializationContext, java.lang.Object, java.lang.Class, org.hibernate.validator.internal.metadata.aggregated.BeanMetaData, java.lang.reflect.Executable, java.util.Optional, java.lang.Object[])
{
jakarta.validation.ConstraintValidatorFactory v;
java.lang.Object[] v;
org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorManager v;
org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext v;
jakarta.validation.TraversableResolver v;
org.hibernate.validator.constraintvalidation.HibernateConstraintValidatorInitializationContext v;
org.hibernate.validator.internal.metadata.aggregated.BeanMetaData v;
java.lang.reflect.Executable v;
java.util.Optional v;
java.lang.Class v;
java.lang.Object v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
boolean v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v := @parameter: org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorManager;
v := @parameter: jakarta.validation.ConstraintValidatorFactory;
v := @parameter: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext;
v := @parameter: jakarta.validation.TraversableResolver;
v := @parameter: org.hibernate.validator.constraintvalidation.HibernateConstraintValidatorInitializationContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v := @parameter: org.hibernate.validator.internal.metadata.aggregated.BeanMetaData;
v := @parameter: java.lang.reflect.Executable;
v := @parameter: java.util.Optional;
v := @parameter: java.lang.Object[];
v = staticinvoke <org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: boolean buildDisableAlreadyValidatedBeanTracking(java.util.Optional)>(v);
specialinvoke v.<org.hibernate.validator.internal.engine.validationcontext.AbstractValidationContext: void <init>(org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorManager,jakarta.validation.ConstraintValidatorFactory,org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext,jakarta.validation.TraversableResolver,org.hibernate.validator.constraintvalidation.HibernateConstraintValidatorInitializationContext,java.lang.Object,java.lang.Class,org.hibernate.validator.internal.metadata.aggregated.BeanMetaData,boolean)>(v, v, v, v, v, v, v, v, v);
v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.reflect.Executable executable> = v;
v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.util.Optional executableMetaData> = v;
v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Object[] executableParameters> = v;
return;
}
public java.lang.reflect.Executable getExecutable()
{
java.lang.reflect.Executable v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.reflect.Executable executable>;
return v;
}
public java.util.Optional getExecutableMetaData()
{
java.util.Optional v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.util.Optional executableMetaData>;
return v;
}
private static boolean buildDisableAlreadyValidatedBeanTracking(java.util.Optional)
{
org.hibernate.validator.internal.metadata.aggregated.ValidatableParametersMetaData v;
java.util.Optional v;
java.lang.Object v;
boolean v, v, v;
v := @parameter: java.util.Optional;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v != 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData: org.hibernate.validator.internal.metadata.aggregated.ValidatableParametersMetaData getValidatableParametersMetaData()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ValidatableParametersMetaData: boolean hasCascadables()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorContextImpl createConstraintValidatorContextFor(org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl, org.hibernate.validator.internal.engine.path.PathImpl)
{
org.hibernate.validator.internal.engine.path.PathImpl v;
org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel v, v, v, v;
org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl$ConstraintType v, v;
boolean v;
org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext v, v, v, v, v, v, v, v;
org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorContextImpl v;
java.util.List v;
jakarta.validation.ClockProvider v, v;
org.hibernate.validator.internal.engine.constraintvalidation.CrossParameterConstraintValidatorContextImpl v;
java.lang.Object v, v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v := @parameter: org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl;
v := @parameter: org.hibernate.validator.internal.engine.path.PathImpl;
v = <org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl$ConstraintType: org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl$ConstraintType CROSS_PARAMETER>;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl: org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl$ConstraintType getConstraintType()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl$ConstraintType: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.hibernate.validator.internal.engine.constraintvalidation.CrossParameterConstraintValidatorContextImpl;
v = specialinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.util.List getParameterNames()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: jakarta.validation.ClockProvider getClockProvider()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: java.lang.Object getConstraintValidatorPayload()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel getConstraintExpressionLanguageFeatureLevel()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel getCustomViolationExpressionLanguageFeatureLevel()>();
specialinvoke v.<org.hibernate.validator.internal.engine.constraintvalidation.CrossParameterConstraintValidatorContextImpl: void <init>(java.util.List,jakarta.validation.ClockProvider,org.hibernate.validator.internal.engine.path.PathImpl,jakarta.validation.metadata.ConstraintDescriptor,java.lang.Object,org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel,org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel)>(v, v, v, v, v, v, v);
return v;
label:
v = new org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorContextImpl;
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: jakarta.validation.ClockProvider getClockProvider()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: java.lang.Object getConstraintValidatorPayload()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel getConstraintExpressionLanguageFeatureLevel()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel getCustomViolationExpressionLanguageFeatureLevel()>();
specialinvoke v.<org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorContextImpl: void <init>(jakarta.validation.ClockProvider,org.hibernate.validator.internal.engine.path.PathImpl,jakarta.validation.metadata.ConstraintDescriptor,java.lang.Object,org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel,org.hibernate.validator.messageinterpolation.ExpressionLanguageFeatureLevel)>(v, v, v, v, v, v);
return v;
}
protected jakarta.validation.ConstraintViolation createConstraintViolation(java.lang.String, java.lang.String, jakarta.validation.Path, jakarta.validation.metadata.ConstraintDescriptor, org.hibernate.validator.internal.engine.valuecontext.ValueContext, org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext)
{
java.lang.Object[] v;
org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext v;
jakarta.validation.Path v;
java.util.Map v, v;
org.hibernate.validator.internal.engine.valuecontext.ValueContext v;
java.lang.String v, v;
jakarta.validation.ConstraintViolation v;
jakarta.validation.metadata.ConstraintDescriptor v;
java.lang.Class v;
java.lang.Object v, v, v, v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: jakarta.validation.Path;
v := @parameter: jakarta.validation.metadata.ConstraintDescriptor;
v := @parameter: org.hibernate.validator.internal.engine.valuecontext.ValueContext;
v := @parameter: org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext: java.util.Map getMessageParameters()>();
v = virtualinvoke v.<org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext: java.util.Map getExpressionVariables()>();
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Class getRootBeanClass()>();
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Object getRootBean()>();
v = virtualinvoke v.<org.hibernate.validator.internal.engine.valuecontext.ValueContext: java.lang.Object getCurrentBean()>();
v = virtualinvoke v.<org.hibernate.validator.internal.engine.valuecontext.ValueContext: java.lang.Object getCurrentValidatedValue()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Object[] executableParameters>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.constraintvalidation.ConstraintViolationCreationContext: java.lang.Object getDynamicPayload()>();
v = staticinvoke <org.hibernate.validator.internal.engine.ConstraintViolationImpl: jakarta.validation.ConstraintViolation forParameterValidation(java.lang.String,java.util.Map,java.util.Map,java.lang.String,java.lang.Class,java.lang.Object,java.lang.Object,java.lang.Object,jakarta.validation.Path,jakarta.validation.metadata.ConstraintDescriptor,java.lang.Object[],java.lang.Object)>(v, v, v, v, v, v, v, v, v, v, v, v);
return v;
}
private java.util.List getParameterNames()
{
java.util.List v;
org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext v;
java.lang.reflect.Executable v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
org.hibernate.validator.internal.util.ExecutableParameterNameProvider v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext validatorScopedContext>;
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ValidatorScopedContext: org.hibernate.validator.internal.util.ExecutableParameterNameProvider getParameterNameProvider()>();
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.reflect.Executable executable>;
v = virtualinvoke v.<org.hibernate.validator.internal.util.ExecutableParameterNameProvider: java.util.List getParameterNames(java.lang.reflect.Executable)>(v);
return v;
}
public java.lang.String toString()
{
java.lang.Object[] v;
java.lang.reflect.Executable v;
java.util.Optional v;
java.lang.Class v, v;
java.lang.StringBuilder v, v, v, v, v;
org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext v;
java.lang.String v, v, v;
v := @this: org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext;
v = new java.lang.StringBuilder;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(123);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("rootBeanClass=");
v = virtualinvoke v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Class getRootBeanClass()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", executable=");
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.reflect.Executable executable>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", executableParameters=");
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.lang.Object[] executableParameters>;
v = staticinvoke <java.util.Arrays: java.lang.String toString(java.lang.Object[])>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", executableMetaData=");
v = v.<org.hibernate.validator.internal.engine.validationcontext.ParameterExecutableValidationContext: java.util.Optional executableMetaData>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(125);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
}