----------------------------------------------
Baleen\\Cli\\CommandBus\\Config\\StatusHandler
----------------------------------------------

.. php:namespace: Baleen\\Cli\\CommandBus\\Config

.. php:class:: StatusHandler

    Handles the config:status command.

    .. php:attr:: output

        protected OutputInterface

    .. php:attr:: message

        protected StatusMessage

    .. php:method:: handle(StatusMessage $message)

        Handles a StatusMessage, which prints the status of the migrations system
        in a developer-friendly format
        (inspired by "git status").

        :type $message: StatusMessage
        :param $message:

    .. php:method:: printPendingVersion(Version $version, $style)

        Formats and prints a pending version with the given style.

        :type $version: Version
        :param $version: The Version to print.
        :type $style: string
        :param $style: One of the STYLE_* constants.

    .. php:method:: getRelativePath($from, $to)

        Returns the relative path between two known paths.

        :param $from:
        :param $to:
        :returns: string

    .. php:method:: printDiff($versions, $message, $style = self::STYLE_INFO)

        Prints an array (group) of Versions all with the given style. If the array
        is empty then it prints nothing.

        :type $versions: array
        :param $versions:
        :type $message: string|string[]
        :param $message: Message(s) to print before the group of versions.
        :type $style: string
        :param $style: One of the STYLE_* constants.

    .. php:method:: splitDiff($diff, $comparator, Version $head)

        Splits an array of Versions into two arrays and returns them. The first
        one contains all versions before the HEAD
        (latest migrated) Version, and the second one contains all Versions after
        HEAD. Head is never included in either
        of the arrays.

        :type $diff: Version[]
        :param $diff: The array of Versions that should be split.
        :type $comparator: callable
        :param $comparator: The comparator used to sort Versions.
        :type $head: Version
        :param $head: The HEAD version.
        :returns: array
