-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNamingStrategyConfiguration.java
More file actions
32 lines (26 loc) · 1.18 KB
/
NamingStrategyConfiguration.java
File metadata and controls
32 lines (26 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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());
}
}