Como passar um Enum como parâmetro

Tenho duas classes que chamam seus respectivos Enum para realizar a validação dos parâmetros de entrada de um método.
Quero unificar essas duas classes em uma só, para isso pensei acrescentar o parâmetro de Enum especifico que quero
que seja acionado dentro da classe mas não conseguir fazer isso, alguma ideia de como fazer isso ?

public void metodoQualquer1 (Resource resource) {
		
		// Instância a Classe Validador.   
	    ValidateParameterUm validator = new ValidateParameterUm();
		
		// É criar uma variável do Enum que pretendo chamar na classe de Validador
	    ValidatorParameterUmEnum vParameterUm;
	    
		// Chama a Classe Validador passando o objeto e a variavel de Enum
		validator.UmValidator(resource);		
	   
	    
	    if (validator.isValid()) { 
			// Faça alguma coisa
		}
}

public void metodoQualquer2 (Resource resource) {
		
		// Instância a Classe Validador.   
	    ValidateParameterDois validator = new ValidateParameterDois();
		
		// É criar uma variável do Enum que pretendo chamar na classe de Validador
	    ValidatorParameterDoisEnum vParameterDois;
	    
		// Aqui a ideia é chamar a Classe Validador passando o objeto e a variavel de Enum
		validator.DoisValidator(resource, ParameterDois);		
	   
	    
	    if (validator.isValid()) { 
			// Faça alguma coisa
		}
}

// Dessa forma consigo unificar as duas classes Validate abaixo em uma só.
public class ValidateParameterUm {

	private final List<String> errors = new ArrayList<String>();
	
	// Aqui precisaria receber o Enum como parâmetro 
	public void UmValidator(Resource resource ) {
		
		// Aqui acionar o for com o enum recebido no parâmetro, dessa forma teria a Classe fléxivel podendo ser acionada
		// para validar enums diferentes.
		for(ValidatorParameterUmEnum validator : ValidatorParameterUmEnum.values() ) {
			if(!validator.validate(resource)) {
					errors.add(validator.errorMessage);
			}
		}
	}
	
	public boolean isValid() {
		return errors.isEmpty();
	}
	
	public Collection<String> getErrors() {
		return errors;
	}
	
}

public class ValidateParameterDois {

	private final List<String> errors = new ArrayList<String>();
	
	public void PathValidator(Resource resource ) {
			
		for(ValidatorParameterDoisEnum validator : ValidatorParameterDoisEnum.values() ) {
			if(!validator.validate(resource)) {
					errors.add(validator.errorMessage);
			}
		}
	}
	
	public boolean isValid() {
		return errors.isEmpty();
	}
	
	public Collection<String> getErrors() {
		return errors;
	}
	
}

// Enums de validação
public enum ValidatorParameterUmEnum {
	
	NOT_NULL_CAMPO1("Campo não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getName().isEmpty();
		}
	};
	
	public final String errorMessage;
	
	private ValidatorParameterPathEnum(String errorMessage) {
		this.errorMessage = errorMessage;
	}
	
	public abstract boolean validate(Resource resource );

}

public enum ValidatorParameterDoisEnum {
	
	NOT_NULL_CAMPO_ABC("Campo não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getTipo().isEmpty();
		}
	},
		NOT_NULL_CAMPO_XYZ("Campo não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getDescricao().isEmpty();
		}
	};
	
	public final String errorMessage;
	
	private ValidatorParameterPathEnum(String errorMessage) {
		this.errorMessage = errorMessage;
	}
	
	public abstract boolean validate(Resource resource );

}

Cria uma interface que declare o método boolean validate (Resource resource) e que ambas as enum implementem. Assim o teu método do Validator recebe como argumento essa interface.

Dê nomes mais significativos pro objetivo do programa. Evite essa mistura, deixa cada validação separada, evitando impacto quando precisar dar manutenção em uma delas.

Pmlm obrigado pelo retorno, segui sua orientação mas ainda fiquei com dúvida de como atribuir o Enum no método validator já que esse método deverá acionar os diferentes Enum e portanto o Enum do for precisará ser genérico conforme o código abaixo:

Desde já obrigado.

public interface InterfaceParameterValidator {
	boolean validate(Resource resource);
}


public class ParameterValidate {

	private final List<String> errors = new ArrayList<String>();

	public void GenericValidator( Resource resource, Enum??? vParameterUm ) {
		
		// Como receber o Enum Genérico que será usado no for abaixo 
		for( GenericEnum validator : GenericEnum.values() ) {
			if(!validator.validate(resource)) {
					errors.add(validator.errorMessage);
			}
		}
	}
	
	public boolean isValid() {
		return errors.isEmpty();
	}
	
	public Collection<String> getErrors() {
		return errors;
	}
	
}



public void metodoQualquer1 (Resource resource) {
		
		// Instância a Classe Validador.   
	     ParameterValidate validator = new  ParameterValidate();
		
		// A ideia é criar uma variável do Enum que pretendo chamar na classe de Validador
	    ValidatorParameterUmEnum vParameterUm;
	    
		// Chama a Classe Validador passando o objeto e a variavel de Enum
		validator.UmValidator(resource, vParameterUm);		
	   
	    
	    if (validator.isValid()) { 
			// Faça alguma coisa
		}
}



// Enums de validação
public enum ValidatorParameterUmEnum implements InterfaceParameterValidator {
	
	NOT_NULL_CAMPO1("Campo não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getName().isEmpty();
		}
	};
	
	public final String errorMessage;
	
	private ValidatorParameterPathEnum(String errorMessage) {
		this.errorMessage = errorMessage;
	}
	
	boolean validate(Resource resource );

}

public enum ValidatorParameterDoisEnum implements InterfaceParameterValidator {
	
	NOT_NULL_CAMPO_ABC("CampoABC não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getTipo().isEmpty();
		}
	},
		NOT_NULL_CAMPO_XYZ("CampoXYZ não pode ser null") {
		@Override
		public boolean validate(Resource resource) {
			return !resource.getDescricao().isEmpty();
		}
	};
	
	public final String errorMessage;
	
	private ValidatorParameterPathEnum(String errorMessage) {
		this.errorMessage = errorMessage;
	}
	
	boolean validate(Resource resource );

}

Para aceder ao values de um enum qualquer genérico penso que so por reflection

public <T extends Enum<T> & GenericEnum> void GenericValidator( Resource resource, Class<T> vParameterUm ) {
	
	for( GenericEnum validator : getEnumValues(vParameterUm)) {
		if(!validator.validate(resource)) {
			errors.add(validator.errorMessage);
		}
	}
}

private static <T extends Enum & MyInterface> T[] getEnumValues(Class<T> enumClass) {
  try {
     Field f = enumClass.getDeclaredField("$VALUES");
     f.setAccessible(true);
     return (T[]) f.get(null);
   } catch (NoSuchFieldException | IllegalAccessException e) {
       e.printStackTrace();
      return null;
   }
 }