Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*
* Copyright (c) 2025, 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 org.gridsuite.modification.server;

import com.powsybl.iidm.modification.topology.DefaultNamingStrategy;
import com.powsybl.iidm.modification.topology.NamingStrategiesServiceLoader;
import com.powsybl.iidm.modification.topology.NamingStrategy;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
* @author Joris Mancini <joris.mancini_externe at rte-france.com>
*/
@Configuration
public class NamingStrategyConfiguration {

private final NamingStrategiesServiceLoader namingStrategiesServiceLoader = new NamingStrategiesServiceLoader();

@Value("${naming-strategy:Default}")
private String namingStrategy;

@Bean
public NamingStrategy getNamingStrategy() {
return namingStrategiesServiceLoader.findNamingStrategyByName(namingStrategy).orElse(new DefaultNamingStrategy());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,21 @@
import java.util.UUID;

/**
* This object is used as entrypoint for NetworkModificationApplicator,
* then it forces to contain only applicable modifications. Otherwise, it would not make sense.
*
* @author Slimane Amar <slimane.amar at rte-france.com>
*/
public record ModificationApplicationGroup(UUID groupUuid, List<ModificationEntity> modifications, ReportInfos reportInfos) {
public record ModificationApplicationGroup(
UUID groupUuid,
List<ModificationEntity> modifications,
ReportInfos reportInfos
) {
public ModificationApplicationGroup(UUID groupUuid, List<ModificationEntity> modifications, ReportInfos reportInfos) {
this.groupUuid = groupUuid;
this.modifications = modifications.stream()
.filter(m -> m.getActivated() && !m.getStashed())
.toList();
this.reportInfos = reportInfos;
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
/**
* Copyright (c) 2024, RTE (http://www.rte-france.com)
/*
* Copyright (c) 2025, 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 org.gridsuite.modification.server.service;
package org.gridsuite.modification.server.modifications;

import jakarta.annotation.PreDestroy;
import lombok.NonNull;
import org.gridsuite.modification.server.service.NetworkModificationObserver;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

Expand All @@ -21,12 +22,12 @@
* @author Slimane Amar <slimane.amar at rte-france.com>
*/
@Service
public class LargeNetworkModificationExecutionService {
class LargeNetworkModificationExecutionService {

private ThreadPoolExecutor executorService;
private final ThreadPoolExecutor executorService;

public LargeNetworkModificationExecutionService(@Value("${max-large-concurrent-applications}") int maxConcurrentLargeModifications,
@NonNull NetworkModificationObserver networkModificationObserver) {
LargeNetworkModificationExecutionService(@Value("${max-large-concurrent-applications}") int maxConcurrentLargeModifications,
@NonNull NetworkModificationObserver networkModificationObserver) {
executorService = (ThreadPoolExecutor) Executors.newFixedThreadPool(maxConcurrentLargeModifications);
networkModificationObserver.createThreadPoolMetric(executorService);
}
Expand Down
Loading