BalanceComputationResult.java
/*
* Copyright (c) 2019, RTE (http://www.rte-france.com)
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
package com.powsybl.balances_adjustment.balance_computation;
import java.beans.ConstructorProperties;
import java.util.HashMap;
import java.util.Map;
/**
* @author Ameni Walha {@literal <ameni.walha at rte-france.com>}
* @author Sebastien Murgey {@literal <sebastien.murgey at rte-france.com>}
*/
public class BalanceComputationResult {
/**
* Status of balance computation
*/
public enum Status {
FAILED,
SUCCESS
}
private final Status status;
/**
* Number of iteration for this balance computation result (optional)
*/
private final int iterationCount;
/**
* Values of scaling power applied for each area to reach the target net position
*/
private final Map<BalanceComputationArea, Double> balancedScalingMap;
@ConstructorProperties("status")
public BalanceComputationResult(Status status) {
this(status, 0);
}
public BalanceComputationResult(Status status, int iterationCount) {
this(status, iterationCount, new HashMap<>());
}
public BalanceComputationResult(Status status, int iterationCount, Map<BalanceComputationArea, Double> scalingMap) {
this.status = status;
this.iterationCount = iterationCount;
this.balancedScalingMap = scalingMap;
}
public Status getStatus() {
return status;
}
public int getIterationCount() {
return iterationCount;
}
public Map<BalanceComputationArea, Double> getBalancedScalingMap() {
return balancedScalingMap;
}
}