Class MadrDecisionImporter

java.lang.Object
com.structurizr.importer.documentation.AbstractDecisionImporter
com.structurizr.importer.documentation.MadrDecisionImporter
All Implemented Interfaces:
DocumentationImporter

public class MadrDecisionImporter extends AbstractDecisionImporter
Imports architecture decision records in MADR format (see https://adr.github.io/madr).
  • Constructor Details

    • MadrDecisionImporter

      public MadrDecisionImporter()
  • Method Details

    • importDocumentation

      public void importDocumentation(com.structurizr.documentation.Documentable documentable, File path)
      Imports Markdown files from the specified path, one per decision.
      Parameters:
      documentable - the item that decisions should be associated with
      path - the path to import decisions from
    • importDecision

      protected com.structurizr.documentation.Decision importDecision(File file) throws Exception
      Throws:
      Exception
    • extractIntegerIDFromFileName

      protected String extractIntegerIDFromFileName(File file)
    • extractTitle

      protected String extractTitle(String[] lines)
    • extractDate

      protected Date extractDate(File file) throws Exception
      Throws:
      Exception
    • extractDate

      protected Date extractDate(String[] lines) throws Exception
      Throws:
      Exception
    • extractStatus

      protected String extractStatus(String[] lines)
    • extractLinks

      protected void extractLinks(com.structurizr.documentation.Decision decision, Map<String,com.structurizr.documentation.Decision> decisionsByFilename)
    • calculateUrl

      protected String calculateUrl(com.structurizr.documentation.Decision decision) throws Exception
      Throws:
      Exception
    • urlEncode

      protected String urlEncode(String value) throws Exception
      Throws:
      Exception