Class ChEmedEprDocValidator<T extends ChEmedEprDocument>

java.lang.Object
org.projecthusky.fhir.emed.ch.epr.validator.logicvalidator.ChEmedEprDocValidator<T>
Direct Known Subclasses:
ChEmedEprDocDisValidator, ChEmedEprDocMtpValidator, ChEmedEprDocPadvValidator, ChEmedEprDocPmlcValidator, ChEmedEprDocPmlValidator, ChEmedEprDocPreValidator

public abstract class ChEmedEprDocValidator<T extends ChEmedEprDocument> extends Object
  • Field Details

  • Constructor Details

    • ChEmedEprDocValidator

      protected ChEmedEprDocValidator(T document)
    • ChEmedEprDocValidator

      protected ChEmedEprDocValidator(T document, List<@NonNull ValidationIssue> issues)
  • Method Details

    • validate

      public abstract List<@NonNull ValidationIssue> validate()
    • clearIssues

      public void clearIssues()
    • getIssues

      public List<@NonNull ValidationIssue> getIssues()
    • validateDosages

      protected void validateDosages(ChEmedEprDosage baseDosage, List<@NonNull ChEmedEprDosage> additionalDosages)
    • validateDosageQuantities

      protected void validateDosageQuantities(ChEmedEprDosage dosage)
      Validates that the usage of the RegularUnitCodeAmbu value set are respected.
      Parameters:
      dosage - The dosage to be validated.
    • resolveQuantity

      protected void resolveQuantity(Supplier supplier, String errorMessage)
      Convenience method to test that a received supplier method does not throw an IllegalArgumentException. If it does, an issue with the specified errorMessage plus the IllegalArgumentException message is added to the list of issues.
      Parameters:
      supplier - The supplier method to be executed.
      errorMessage - The error message to use as prefix if new issues are found.
    • createError

      protected ValidationIssue createError(String message)
    • getSource

      protected String getSource()