1 /*============LICENSE_START=======================================================
 
   2  * oom-truststore-merger
 
   3  * ================================================================================
 
   4  * Copyright (C) 2020 Nokia. All rights reserved.
 
   5  * ================================================================================
 
   6  * Licensed under the Apache License, Version 2.0 (the "License");
 
   7  * you may not use this file except in compliance with the License.
 
   8  * You may obtain a copy of the License at
 
  10  *      http://www.apache.org/licenses/LICENSE-2.0
 
  12  * Unless required by applicable law or agreed to in writing, software
 
  13  * distributed under the License is distributed on an "AS IS" BASIS,
 
  14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  15  * See the License for the specific language governing permissions and
 
  16  * limitations under the License.
 
  17  * ============LICENSE_END=========================================================
 
  20 package org.onap.oom.certservice.postprocessor.configuration.model;
 
  22 import static org.onap.oom.certservice.postprocessor.configuration.path.validation.ValidationFunctions.doesItContainValidCertificatesPaths;
 
  23 import static org.onap.oom.certservice.postprocessor.configuration.path.validation.ValidationFunctions.doesItContainValidPasswordPaths;
 
  24 import static org.onap.oom.certservice.postprocessor.configuration.path.validation.ValidationFunctions.doesItContainValidPathsToCopy;
 
  26 import java.util.List;
 
  27 import java.util.function.Predicate;
 
  28 import org.onap.oom.certservice.postprocessor.configuration.path.validation.ValidationFunctions;
 
  30 public enum EnvVariable {
 
  31     TRUSTSTORES_PATHS(true, doesItContainValidCertificatesPaths()),
 
  32     TRUSTSTORES_PASSWORDS_PATHS(true, doesItContainValidPasswordPaths()),
 
  33     KEYSTORE_SOURCE_PATHS(false, doesItContainValidPathsToCopy()),
 
  34     KEYSTORE_DESTINATION_PATHS(false, doesItContainValidPathsToCopy());
 
  38     Predicate<List<String>> validationFunction;
 
  40     EnvVariable(boolean isMandatory, Predicate<List<String>> validationFunction) {
 
  41         this.isMandatory = isMandatory;
 
  42         this.validationFunction = validationFunction;
 
  45     public boolean isMandatory() {
 
  49     public Predicate<List<String>> getValidationFunction() {
 
  50         return validationFunction;