All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.mike10004.containment.lifecycle.LifecycleStackCommissionUnwindException Maven / Gradle / Ivy

The newest version!
package io.github.mike10004.containment.lifecycle;

/**
 * Exception class for cases where the commission stage of a lifecycle stack failed
 * and one or more exceptions were thrown while unwinding the stack.
 */
class LifecycleStackCommissionUnwindException extends LifecycleStackCommissionException {

    /**
     * Component lifecycle that threw the exception.
     */
    public final LifecycleStage commissionExceptionThrower;

    /**
     * Exception thrown during the commission stage.
     */
    public final Exception commissionException;

    /**
     * Exception thrown during decommission.
     */
    public final LifecycleStackDecommissionException unwindException;

    public LifecycleStackCommissionUnwindException(LifecycleStage commissionExceptionThrower, Exception commissionException, LifecycleStackDecommissionException unwindException) {
        super(String.format("commission failed and %d exceptions were thrown while unwinding", unwindException.exceptionsThrown.size()));
        this.commissionExceptionThrower = commissionExceptionThrower;
        this.commissionException = commissionException;
        this.unwindException = unwindException;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy