001package org.hl7.fhir.r5.terminologies.expansion;
002
003import java.util.ArrayList;
004import java.util.List;
005
006import org.hl7.fhir.exceptions.FHIRException;
007import org.hl7.fhir.r5.model.CodeSystem;
008import org.hl7.fhir.r5.model.CodeSystem.ConceptDefinitionComponent;
009import org.hl7.fhir.utilities.MarkedToMoveToAdjunctPackage;
010
011@MarkedToMoveToAdjunctPackage
012public abstract class ConceptFilter {
013
014  private List<String> allErrors;
015  
016
017  protected FHIRException fail(String msg) {
018    allErrors.add(msg);
019    return new FHIRException(msg);
020  }
021  
022  public ConceptFilter(List<String> allErrors) {
023    super();
024    this.allErrors = allErrors;
025  }
026
027
028  public abstract boolean includeConcept(CodeSystem cs, ConceptDefinitionComponent def);
029
030}