Grand Project Overview

Minion minion-automaticrollbackresult-925bacd1c60a

Status: Unknown

Workstream: None

Short Task: AutomaticRollbackResult

Result summary: <?php declare(strict_types=1); namespace TheGrandProject\Framework\Updates; final class AutomaticRollbackResult { /** * @param array<int, string> $restoredComponents * @param array<string, mixed> $metadata */ public function __construct( private readonly UpdateReleaseState $releaseState, private readonly RestorePointRecord $restorePoint, private readonly bool $rollbackSucceeded, private readonly bool $databaseRestoreUsed, private

<?php

declare(strict_types=1);

namespace TheGrandProject\Framework\Updates;

final class AutomaticRollbackResult
{
    /**
     * @param array<int, string> $restoredComponents
     * @param array<string, mixed> $metadata
     */
    public function __construct(
        private readonly UpdateReleaseState $releaseState,
        private readonly RestorePointRecord $restorePoint,
        private readonly bool $rollbackSucceeded,
        private readonly bool $databaseRestoreUsed,
        private readonly array $restoredComponents = [],
        private readonly array $metadata = [],
    ) {
    }

    public function releaseState(): UpdateReleaseState
    {
        return $this->releaseState;
    }

    public function restorePoint(): RestorePointRecord
    {
        return $this->restorePoint;
    }

    public function rollbackSucceeded(): bool
    {
        return $this->rollbackSucceeded;
    }

    public function databaseRestoreUsed(): bool
    {
        return $this->databaseRestoreUsed;
    }

    /**
     * @return array<int, string>
     */
    public function restoredComponents(): array
    {
        return $this->restoredComponents;
    }

    /**
     * @return array<string, mixed>
     */
    public function metadata(): array
    {
        return $this->metadata;
    }

    /**
     * @return array<string, mixed>
     */
    public function toArray(): array
    {
        return [
            'release_state' => $this->releaseState->toArray(),
            'restore_point' => $this->restorePoint->toArray(),
            'rollback_succeeded' => $this->rollbackSucceeded,
            'database_restore_used' => $this->databaseRestoreUsed,
            'restored_components' => $this->restoredComponents,
            'metadata' => $this->metadata,
        ];
    }
}

Warnings: None