Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Track upstream changes
iay committed Apr 6, 2023
1 parent 5fe784d commit b16bcfd
Showing 22 changed files with 40 additions and 48 deletions.
@@ -30,7 +30,7 @@
public class AcceptAllValidator<V> extends BaseValidator implements Validator<V> {

@Override
public Action validate(@Nonnull final V e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
public @Nonnull Action validate(@Nonnull final V e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
return Action.DONE;
}

@@ -116,10 +116,10 @@ protected Action applyValidators(@Nonnull final A value, @Nonnull final Item<?>
* @return a value of the new type
* @throws IllegalArgumentException if a conversion can not be performed
*/
protected abstract A convert(@Nonnull final V from) throws IllegalArgumentException;
protected abstract @Nonnull A convert(@Nonnull final V from) throws IllegalArgumentException;

@Override
public Action validate(@Nonnull final V t, @Nonnull final Item<?> item, @Nonnull final String stageId)
public @Nonnull Action validate(@Nonnull final V t, @Nonnull final Item<?> item, @Nonnull final String stageId)
throws StageProcessingException {
try {
final A v = convert(t);
@@ -33,7 +33,7 @@
public class RejectAllValidator<V> extends BaseValidator implements Validator<V> {

@Override
public Action validate(@Nonnull final V e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
public @Nonnull Action validate(@Nonnull final V e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
addErrorMessage(e, item, stageId);
return Action.DONE;
}
@@ -14,21 +14,16 @@

package uk.org.iay.incommon.mda.validate;

import java.util.Collections;
import java.util.List;

import javax.annotation.Nonnull;

import com.google.common.base.Predicates;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;

import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.pipeline.StageProcessingException;
import net.shibboleth.metadata.validate.BaseValidator;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.shared.collection.CollectionSupport;
import net.shibboleth.shared.component.ComponentInitializationException;
import net.shibboleth.shared.component.ComponentSupport;

/**
* A {@link Validator} implementation which encapsulates the functionality of stepping
@@ -44,32 +39,30 @@ public class ValidatorSequence<V> extends BaseValidator implements Validator<V>

/** The list of validators to apply. */
@Nonnull
private List<Validator<V>> validators = Collections.emptyList();
private List<Validator<V>> validators = CollectionSupport.listOf();

/**
* Set the list of validators to apply to each item.
*
* @param newValidators the list of validators to set
*/
public void setValidators(@Nonnull final List<Validator<V>> newValidators) {
ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
checkSetterPreconditions();

validators = ImmutableList.copyOf(Iterables.filter(newValidators, Predicates.notNull()));
validators = CollectionSupport.copyToList(newValidators);
}

/**
* Gets the list of validators being applied to each item.
*
* @return list of validators
*/
@Nonnull
public List<Validator<V>> getValidators() {
return Collections.unmodifiableList(validators);
public @Nonnull List<Validator<V>> getValidators() {
return validators;
}

@Override
public Action validate(@Nonnull final V value, @Nonnull final Item<?> item, @Nonnull final String stageId)
public @Nonnull Action validate(@Nonnull final V value, @Nonnull final Item<?> item, @Nonnull final String stageId)
throws StageProcessingException {
for (final Validator<V> validator: validators) {
final Action action = validator.validate(value, item, stageId);
@@ -80,12 +73,6 @@ public Action validate(@Nonnull final V value, @Nonnull final Item<?> item, @Non
return Action.CONTINUE;
}

@Override
protected void doDestroy() {
validators = null;
super.doDestroy();
}

@Override
protected void doInitialize() throws ComponentInitializationException {
super.doInitialize();
@@ -32,7 +32,7 @@ public class RejectDomainNameNotUnderPublicSuffixValidator extends BaseValidator
implements Validator<InternetDomainName> {

@Override
public Action validate(@Nonnull final InternetDomainName domain, @Nonnull final Item<?> item,
public @Nonnull Action validate(@Nonnull final InternetDomainName domain, @Nonnull final Item<?> item,
@Nonnull final String stageId) {
if (domain.isUnderPublicSuffix()) {
return Action.CONTINUE;
@@ -29,7 +29,7 @@ public class RejectDomainNamePublicSuffixValidator extends BaseValidator
implements Validator<InternetDomainName> {

@Override
public Action validate(@Nonnull final InternetDomainName domain, @Nonnull final Item<?> item,
public @Nonnull Action validate(@Nonnull final InternetDomainName domain, @Nonnull final Item<?> item,
@Nonnull final String stageId) {
if (domain.isPublicSuffix()) {
addErrorMessage(domain, item, stageId);
@@ -30,7 +30,7 @@
public class AcceptStringRegexValidator extends BaseStringRegexValidator implements Validator<String> {

@Override
public Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
public @Nonnull Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
final Matcher matcher = getPattern().matcher(e);
if (matcher.matches()) {
return Action.DONE;
@@ -54,7 +54,7 @@ public void setValue(@Nonnull final String v) {
}

@Override
public Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
public @Nonnull Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
if (e.equals(value)) {
return Action.DONE;
} else {
@@ -35,7 +35,7 @@ public class AsDomainNameStringValidator extends BaseAsValidator<String, Interne
implements Validator<String> {

@Override
protected InternetDomainName convert(@Nonnull final String domain) throws IllegalArgumentException {
protected @Nonnull InternetDomainName convert(@Nonnull final String domain) throws IllegalArgumentException {
return InternetDomainName.from(domain);
}

@@ -84,7 +84,7 @@ public class AsLiteralTailStringValidator extends BaseAsValidator<String, String
private final Pattern pattern = Pattern.compile(".*?\\\\.(([a-zA-Z0-9-]+\\\\.)+[a-zA-Z0-9-]+)\\$");

@Override
protected String convert(@Nonnull final String regex) throws IllegalArgumentException {
protected @Nonnull String convert(@Nonnull final String regex) throws IllegalArgumentException {
// Match against the regular expression
final Matcher matcher = pattern.matcher(regex);

@@ -30,7 +30,7 @@
public class RejectStringRegexValidator extends BaseStringRegexValidator implements Validator<String> {

@Override
public Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
public @Nonnull Action validate(@Nonnull final String e, @Nonnull final Item<?> item, @Nonnull final String stageId) {
final Matcher matcher = getPattern().matcher(e);
if (matcher.matches()) {
addErrorMessage(e, item, stageId);
@@ -10,9 +10,9 @@

import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.ItemId;
import net.shibboleth.metadata.dom.BaseDOMTest;
import net.shibboleth.metadata.dom.DOMElementItem;
import net.shibboleth.metadata.dom.saml.mdrpi.RegistrationAuthority;
import net.shibboleth.metadata.dom.testing.BaseDOMTest;

public class InCommonEntityOrderingStrategyTest extends BaseDOMTest {

@@ -8,7 +8,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

@@ -8,7 +8,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

@@ -9,7 +9,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

@@ -7,7 +7,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator.Action;

public class RejectDomainNameNotUnderPublicSuffixValidatorTest {
@@ -7,7 +7,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator.Action;

public class RejectDomainNamePublicSuffixValidatorTest {
@@ -8,7 +8,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

@@ -8,7 +8,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

@@ -4,15 +4,17 @@
import java.util.ArrayList;
import java.util.List;

import javax.annotation.Nonnull;

import org.testng.Assert;
import org.testng.annotations.Test;

import com.google.common.net.InternetDomainName;

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.pipeline.StageProcessingException;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.BaseValidator;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;
@@ -21,16 +23,17 @@ public class AsDomainNameStringValidatorTest {

private static class CountingValidator extends BaseValidator implements Validator<InternetDomainName> {
public int count;
private final Action action;
private final @Nonnull Action action;

@Override
public Action validate(InternetDomainName e, Item<?> item, String stageId) throws StageProcessingException {
public @Nonnull Action validate(@Nonnull InternetDomainName e, @Nonnull Item<?> item, @Nonnull String stageId)
throws StageProcessingException {
count++;
return action;
}

/** Constructor. */
public CountingValidator(final Action a) {
public CountingValidator(final @Nonnull Action a) {
action = a;
}
}
@@ -6,12 +6,14 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.annotation.Nonnull;

import org.testng.Assert;
import org.testng.annotations.Test;

import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.pipeline.StageProcessingException;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.BaseValidator;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;
@@ -21,17 +23,17 @@ public class AsLiteralTailStringValidatorTest {
private static class CountingCapturingValidator extends BaseValidator implements Validator<String> {
public int count;
public String value;
private final Action action;
private final @Nonnull Action action;

@Override
public Action validate(String e, Item<?> item, String stageId) throws StageProcessingException {
public @Nonnull Action validate(@Nonnull String e, @Nonnull Item<?> item, @Nonnull String stageId) throws StageProcessingException {
count++;
value = e;
return action;
}

/** Constructor. */
public CountingCapturingValidator(final Action a) {
public CountingCapturingValidator(final @Nonnull Action a) {
action = a;
}
}
@@ -8,7 +8,7 @@

import net.shibboleth.metadata.ErrorStatus;
import net.shibboleth.metadata.Item;
import net.shibboleth.metadata.MockItem;
import net.shibboleth.metadata.testing.MockItem;
import net.shibboleth.metadata.validate.Validator;
import net.shibboleth.metadata.validate.Validator.Action;

0 comments on commit b16bcfd

Please sign in to comment.