Interface ChangeLogParser

All Superinterfaces:
LiquibaseParser, PrioritizedService
All Known Implementing Classes:
AbstractChangeLogParser, AbstractFormattedChangeLogParser, FormattedSqlChangeLogParser, JsonChangeLogParser, SqlChangeLogParser, XMLChangeLogSAXParser, YamlChangeLogParser

public interface ChangeLogParser extends LiquibaseParser
Defines the methods a class which is able to parse a Liquibase changelog file must support. Different parsers are able to parse different file formats (e.g. XML, YAML, JSON, ...)
  • Method Details

    • parse

      DatabaseChangeLog parse(String physicalChangeLogLocation, ChangeLogParameters changeLogParameters, ResourceAccessor resourceAccessor) throws ChangeLogParseException
      Parses a Liquibase database changelog and returns the parsed form as an object.
      Parameters:
      physicalChangeLogLocation - the physical location of the changelog. The exact file formats and locations where can load changelog files from depend on the implementations and capabilities of the implementing parsers.
      changeLogParameters - parameters given by the end user that should be applied while parsing the changelog (i.e. replacement of ${placeholders} inside the changelogs with user-defined content)
      resourceAccessor - a Java resource accessor
      Returns:
      the parsed ChangeLog in object form
      Throws:
      ChangeLogParseException - if an error occurs during parsing of the ChangeLog
    • supports

      boolean supports(String changeLogFile, ResourceAccessor resourceAccessor)
      Checks if the file format is supported by an implementing ChangeLogParser and returns true if that is the case.
      Parameters:
      changeLogFile - the location of the changelog file
      resourceAccessor - the resource accessor
      Returns:
      true if the file format is supported, false if it is not.