set parentAsset (ManagedServer) for ManagedWebspaces and add Bandwidth dummy
This commit is contained in:
parent
ce26f4665f
commit
eefde7443c
@ -16,6 +16,7 @@ class HsCloudServerBookingItemValidator extends HsBookingItemEntityValidator {
|
|||||||
integerProperty("SSD").unit("GB") .min( 0) .max( 1000) .step(25).required(), // (1)
|
integerProperty("SSD").unit("GB") .min( 0) .max( 1000) .step(25).required(), // (1)
|
||||||
integerProperty("HDD").unit("GB") .min( 0) .max( 4000) .step(250).withDefault(0),
|
integerProperty("HDD").unit("GB") .min( 0) .max( 4000) .step(250).withDefault(0),
|
||||||
integerProperty("Traffic").unit("GB") .min(250) .max(10000) .step(250).required(),
|
integerProperty("Traffic").unit("GB") .min(250) .max(10000) .step(250).required(),
|
||||||
|
integerProperty("Bandwidth").unit("GB") .min(250) .max(10000) .step(250).optional(), // TODO.spec
|
||||||
|
|
||||||
enumerationProperty("SLA-Infrastructure").values("BASIC", "EXT8H", "EXT4H", "EXT2H").optional()
|
enumerationProperty("SLA-Infrastructure").values("BASIC", "EXT8H", "EXT4H", "EXT2H").optional()
|
||||||
// @formatter:on
|
// @formatter:on
|
||||||
|
@ -15,6 +15,7 @@ class HsManagedServerBookingItemValidator extends HsBookingItemEntityValidator {
|
|||||||
integerProperty("SSD").unit("GB").min(25).max(1000).step(25).required().asTotalLimit().withThreshold(200),
|
integerProperty("SSD").unit("GB").min(25).max(1000).step(25).required().asTotalLimit().withThreshold(200),
|
||||||
integerProperty("HDD").unit("GB").min(0).max(4000).step(250).withDefault(0).asTotalLimit().withThreshold(200),
|
integerProperty("HDD").unit("GB").min(0).max(4000).step(250).withDefault(0).asTotalLimit().withThreshold(200),
|
||||||
integerProperty("Traffic").unit("GB").min(250).max(10000).step(250).required().asTotalLimit().withThreshold(200),
|
integerProperty("Traffic").unit("GB").min(250).max(10000).step(250).required().asTotalLimit().withThreshold(200),
|
||||||
|
integerProperty("Bandwidth").unit("GB").min(250).max(10000).step(250).optional().asTotalLimit().withThreshold(200), // TODO.spec
|
||||||
enumerationProperty("SLA-Platform").values("BASIC", "EXT8H", "EXT4H", "EXT2H").withDefault("BASIC"),
|
enumerationProperty("SLA-Platform").values("BASIC", "EXT8H", "EXT4H", "EXT2H").withDefault("BASIC"),
|
||||||
booleanProperty("SLA-EMail").falseIf("SLA-Platform", "BASIC").withDefault(false),
|
booleanProperty("SLA-EMail").falseIf("SLA-Platform", "BASIC").withDefault(false),
|
||||||
booleanProperty("SLA-Maria").falseIf("SLA-Platform", "BASIC").optional(),
|
booleanProperty("SLA-Maria").falseIf("SLA-Platform", "BASIC").optional(),
|
||||||
|
@ -26,6 +26,7 @@ class HsManagedWebspaceBookingItemValidator extends HsBookingItemEntityValidator
|
|||||||
integerProperty("SSD").unit("GB").min(1).max(100).step(1).required(),
|
integerProperty("SSD").unit("GB").min(1).max(100).step(1).required(),
|
||||||
integerProperty("HDD").unit("GB").min(0).max(250).step(10).optional(),
|
integerProperty("HDD").unit("GB").min(0).max(250).step(10).optional(),
|
||||||
integerProperty("Traffic").unit("GB").min(10).max(1000).step(10).required(),
|
integerProperty("Traffic").unit("GB").min(10).max(1000).step(10).required(),
|
||||||
|
integerProperty("Bandwidth").unit("GB").min(10).max(1000).step(10).optional(), // TODO.spec
|
||||||
integerProperty("Multi").min(1).max(100).step(1).withDefault(1)
|
integerProperty("Multi").min(1).max(100).step(1).withDefault(1)
|
||||||
.eachComprising( 25, unixUsers())
|
.eachComprising( 25, unixUsers())
|
||||||
.eachComprising( 5, databaseUsers())
|
.eachComprising( 5, databaseUsers())
|
||||||
|
@ -12,6 +12,7 @@ class HsPrivateCloudBookingItemValidator extends HsBookingItemEntityValidator {
|
|||||||
integerProperty("SSD").unit("GB") .min( 25).max( 4000).step(25).required().asTotalLimit(),
|
integerProperty("SSD").unit("GB") .min( 25).max( 4000).step(25).required().asTotalLimit(),
|
||||||
integerProperty("HDD").unit("GB") .min( 0).max(16000).step(250).withDefault(0).asTotalLimit(),
|
integerProperty("HDD").unit("GB") .min( 0).max(16000).step(250).withDefault(0).asTotalLimit(),
|
||||||
integerProperty("Traffic").unit("GB") .min(250).max(40000).step(250).required().asTotalLimit(),
|
integerProperty("Traffic").unit("GB") .min(250).max(40000).step(250).required().asTotalLimit(),
|
||||||
|
integerProperty("Bandwidth").unit("GB") .min(250).max(40000).step(250).optional().asTotalLimit(), // TODO.spec
|
||||||
|
|
||||||
// Alternatively we could specify it similarly to "Multi" option but exclusively counting:
|
// Alternatively we could specify it similarly to "Multi" option but exclusively counting:
|
||||||
// integerProperty("Resource-Points") .min(4).max(100).required()
|
// integerProperty("Resource-Points") .min(4).max(100).required()
|
||||||
|
@ -6,6 +6,7 @@ import net.hostsharing.hsadminng.hs.booking.item.HsBookingItemType;
|
|||||||
import net.hostsharing.hsadminng.hs.hosting.asset.HsHostingAssetEntity;
|
import net.hostsharing.hsadminng.hs.hosting.asset.HsHostingAssetEntity;
|
||||||
import net.hostsharing.hsadminng.hs.hosting.asset.HsHostingAssetType;
|
import net.hostsharing.hsadminng.hs.hosting.asset.HsHostingAssetType;
|
||||||
import net.hostsharing.hsadminng.rbac.test.JpaAttempt;
|
import net.hostsharing.hsadminng.rbac.test.JpaAttempt;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.junit.jupiter.api.MethodOrderer;
|
import org.junit.jupiter.api.MethodOrderer;
|
||||||
import org.junit.jupiter.api.Order;
|
import org.junit.jupiter.api.Order;
|
||||||
import org.junit.jupiter.api.Tag;
|
import org.junit.jupiter.api.Tag;
|
||||||
@ -19,6 +20,7 @@ import org.springframework.test.annotation.DirtiesContext;
|
|||||||
import java.io.Reader;
|
import java.io.Reader;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
|
|
||||||
import static java.util.Arrays.stream;
|
import static java.util.Arrays.stream;
|
||||||
import static java.util.stream.Collectors.toMap;
|
import static java.util.stream.Collectors.toMap;
|
||||||
@ -82,9 +84,7 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
private static final Integer HIVE_ID_OFFSET = 2000000;
|
private static final Integer HIVE_ID_OFFSET = 2000000;
|
||||||
private static final Integer PACKET_ID_OFFSET = 3000000;
|
private static final Integer PACKET_ID_OFFSET = 3000000;
|
||||||
|
|
||||||
record Hive(int hive_id, String hive_name, int inet_addr_id) {}
|
record Hive(int hive_id, String hive_name, int inet_addr_id, AtomicReference<HsHostingAssetEntity> serverRef) {}
|
||||||
|
|
||||||
;
|
|
||||||
|
|
||||||
private static Map<Integer, HsBookingItemEntity> bookingItems = new WriteOnceMap<>();
|
private static Map<Integer, HsBookingItemEntity> bookingItems = new WriteOnceMap<>();
|
||||||
private static Map<Integer, Hive> hives = new WriteOnceMap<>();
|
private static Map<Integer, Hive> hives = new WriteOnceMap<>();
|
||||||
@ -137,11 +137,11 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
// no contacts yet => mostly null values
|
// no contacts yet => mostly null values
|
||||||
assertThat(toFormattedString(first(5, hives))).isEqualToIgnoringWhitespace("""
|
assertThat(toFormattedString(first(5, hives))).isEqualToIgnoringWhitespace("""
|
||||||
{
|
{
|
||||||
2000001=Hive[hive_id=1, hive_name=h01, inet_addr_id=358],
|
2000001=Hive[hive_id=1, hive_name=h01, inet_addr_id=358, serverRef=null],
|
||||||
2000002=Hive[hive_id=2, hive_name=h02, inet_addr_id=359],
|
2000002=Hive[hive_id=2, hive_name=h02, inet_addr_id=359, serverRef=null],
|
||||||
2000004=Hive[hive_id=4, hive_name=h03, inet_addr_id=360],
|
2000004=Hive[hive_id=4, hive_name=h03, inet_addr_id=360, serverRef=null],
|
||||||
2000007=Hive[hive_id=7, hive_name=h04, inet_addr_id=361],
|
2000007=Hive[hive_id=7, hive_name=h04, inet_addr_id=361, serverRef=null],
|
||||||
2000013=Hive[hive_id=13, hive_name=h05, inet_addr_id=430]
|
2000013=Hive[hive_id=13, hive_name=h05, inet_addr_id=430, serverRef=null]
|
||||||
}
|
}
|
||||||
""");
|
""");
|
||||||
}
|
}
|
||||||
@ -164,9 +164,9 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
|
|
||||||
assertThat(firstOfEachType(3, CLOUD_SERVER, MANAGED_SERVER, MANAGED_WEBSPACE)).isEqualToIgnoringWhitespace("""
|
assertThat(firstOfEachType(3, CLOUD_SERVER, MANAGED_SERVER, MANAGED_WEBSPACE)).isEqualToIgnoringWhitespace("""
|
||||||
{
|
{
|
||||||
3000003=HsHostingAssetEntity(MANAGED_WEBSPACE, agu00, HA agu00, D-???????-?:BI agu00),
|
3000003=HsHostingAssetEntity(MANAGED_WEBSPACE, agu00, HA agu00, MANAGED_SERVER:vm1001, D-???????-?:BI agu00),
|
||||||
3000007=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr00, HA ahr00, D-???????-?:BI ahr00),
|
3000007=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr00, HA ahr00, MANAGED_SERVER:vm1005, D-???????-?:BI ahr00),
|
||||||
3000008=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr01, HA ahr01, D-???????-?:BI ahr01),
|
3000008=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr01, HA ahr01, MANAGED_SERVER:vm1003, D-???????-?:BI ahr01),
|
||||||
3000964=HsHostingAssetEntity(MANAGED_SERVER, vm1064, HA vm1064, D-???????-?:BI vm1064),
|
3000964=HsHostingAssetEntity(MANAGED_SERVER, vm1064, HA vm1064, D-???????-?:BI vm1064),
|
||||||
3000966=HsHostingAssetEntity(MANAGED_SERVER, vm1063, HA vm1063, D-???????-?:BI vm1063),
|
3000966=HsHostingAssetEntity(MANAGED_SERVER, vm1063, HA vm1063, D-???????-?:BI vm1063),
|
||||||
3000967=HsHostingAssetEntity(MANAGED_SERVER, vm1062, HA vm1062, D-???????-?:BI vm1062),
|
3000967=HsHostingAssetEntity(MANAGED_SERVER, vm1062, HA vm1062, D-???????-?:BI vm1062),
|
||||||
@ -214,11 +214,11 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
assertThat(firstOfEachType(5, CLOUD_SERVER, MANAGED_SERVER, MANAGED_WEBSPACE))
|
assertThat(firstOfEachType(5, CLOUD_SERVER, MANAGED_SERVER, MANAGED_WEBSPACE))
|
||||||
.isEqualToIgnoringWhitespace("""
|
.isEqualToIgnoringWhitespace("""
|
||||||
{
|
{
|
||||||
3000003=HsHostingAssetEntity(MANAGED_WEBSPACE, agu00, HA agu00, D-???????-?:BI agu00),
|
3000003=HsHostingAssetEntity(MANAGED_WEBSPACE, agu00, HA agu00, MANAGED_SERVER:vm1001, D-???????-?:BI agu00),
|
||||||
3000007=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr00, HA ahr00, D-???????-?:BI ahr00),
|
3000007=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr00, HA ahr00, MANAGED_SERVER:vm1005, D-???????-?:BI ahr00),
|
||||||
3000008=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr01, HA ahr01, D-???????-?:BI ahr01),
|
3000008=HsHostingAssetEntity(MANAGED_WEBSPACE, ahr01, HA ahr01, MANAGED_SERVER:vm1003, D-???????-?:BI ahr01),
|
||||||
3000009=HsHostingAssetEntity(MANAGED_WEBSPACE, aih00, HA aih00, D-???????-?:BI aih00),
|
3000009=HsHostingAssetEntity(MANAGED_WEBSPACE, aih00, HA aih00, MANAGED_SERVER:vm1001, D-???????-?:BI aih00),
|
||||||
3000012=HsHostingAssetEntity(MANAGED_WEBSPACE, al000, HA al000, D-???????-?:BI al000),
|
3000012=HsHostingAssetEntity(MANAGED_WEBSPACE, al000, HA al000, MANAGED_SERVER:vm1001, D-???????-?:BI al000),
|
||||||
3000964=HsHostingAssetEntity(MANAGED_SERVER, vm1064, HA vm1064, D-???????-?:BI vm1064),
|
3000964=HsHostingAssetEntity(MANAGED_SERVER, vm1064, HA vm1064, D-???????-?:BI vm1064),
|
||||||
3000966=HsHostingAssetEntity(MANAGED_SERVER, vm1063, HA vm1063, D-???????-?:BI vm1063),
|
3000966=HsHostingAssetEntity(MANAGED_SERVER, vm1063, HA vm1063, D-???????-?:BI vm1063),
|
||||||
3000967=HsHostingAssetEntity(MANAGED_SERVER, vm1062, HA vm1062, D-???????-?:BI vm1062),
|
3000967=HsHostingAssetEntity(MANAGED_SERVER, vm1062, HA vm1062, D-???????-?:BI vm1062),
|
||||||
@ -282,7 +282,8 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
final var hive = new Hive(
|
final var hive = new Hive(
|
||||||
hive_id,
|
hive_id,
|
||||||
rec.getString("hive_name"),
|
rec.getString("hive_name"),
|
||||||
rec.getInteger("inet_addr_id"));
|
rec.getInteger("inet_addr_id"),
|
||||||
|
new AtomicReference<>());
|
||||||
hives.put(HIVE_ID_OFFSET + hive_id, hive);
|
hives.put(HIVE_ID_OFFSET + hive_id, hive);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -293,7 +294,6 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
.map(this::trimAll)
|
.map(this::trimAll)
|
||||||
.map(row -> new Record(columns, row))
|
.map(row -> new Record(columns, row))
|
||||||
.forEach(rec -> {
|
.forEach(rec -> {
|
||||||
|
|
||||||
final var packet_id = rec.getInteger("packet_id");
|
final var packet_id = rec.getInteger("packet_id");
|
||||||
final var basepacket_code = rec.getString("basepacket_code");
|
final var basepacket_code = rec.getString("basepacket_code");
|
||||||
final var packet_name = rec.getString("packet_name");
|
final var packet_name = rec.getString("packet_name");
|
||||||
@ -305,13 +305,7 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
final var old_inet_addr_id = rec.getInteger("old_inet_addr_id");
|
final var old_inet_addr_id = rec.getInteger("old_inet_addr_id");
|
||||||
final var free = rec.getBoolean("free");
|
final var free = rec.getBoolean("free");
|
||||||
|
|
||||||
final var biType = switch (basepacket_code) {
|
final var biType = determineBiType(basepacket_code);
|
||||||
case "SRV/CLD" -> HsBookingItemType.CLOUD_SERVER;
|
|
||||||
case "SRV/MGD" -> HsBookingItemType.MANAGED_SERVER;
|
|
||||||
case "PAC/WEB" -> HsBookingItemType.MANAGED_WEBSPACE;
|
|
||||||
default -> throw new IllegalArgumentException(
|
|
||||||
"unknown basepacket_code: " + basepacket_code);
|
|
||||||
};
|
|
||||||
final var bookingItem = HsBookingItemEntity.builder()
|
final var bookingItem = HsBookingItemEntity.builder()
|
||||||
.type(biType)
|
.type(biType)
|
||||||
.caption("BI " + packet_name)
|
.caption("BI " + packet_name)
|
||||||
@ -319,13 +313,7 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
.build();
|
.build();
|
||||||
bookingItems.put(PACKET_ID_OFFSET + packet_id, bookingItem);
|
bookingItems.put(PACKET_ID_OFFSET + packet_id, bookingItem);
|
||||||
|
|
||||||
final var haType = switch (basepacket_code) {
|
final var haType = determineHaType(basepacket_code);
|
||||||
case "SRV/CLD" -> CLOUD_SERVER;
|
|
||||||
case "SRV/MGD" -> MANAGED_SERVER;
|
|
||||||
case "PAC/WEB" -> MANAGED_WEBSPACE;
|
|
||||||
default -> throw new IllegalArgumentException(
|
|
||||||
"unknown basepacket_code: " + basepacket_code);
|
|
||||||
};
|
|
||||||
final var asset = HsHostingAssetEntity.builder()
|
final var asset = HsHostingAssetEntity.builder()
|
||||||
.type(haType)
|
.type(haType)
|
||||||
.identifier(packet_name)
|
.identifier(packet_name)
|
||||||
@ -333,6 +321,25 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
.caption("HA " + packet_name)
|
.caption("HA " + packet_name)
|
||||||
.build();
|
.build();
|
||||||
hostingAssets.put(PACKET_ID_OFFSET + packet_id, asset);
|
hostingAssets.put(PACKET_ID_OFFSET + packet_id, asset);
|
||||||
|
if (haType == MANAGED_SERVER) {
|
||||||
|
hive(hive_id).serverRef.set(asset);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// once we know all hosting assets, we can set the parentAsset for managed webspaces
|
||||||
|
records.stream()
|
||||||
|
.map(this::trimAll)
|
||||||
|
.map(row -> new Record(columns, row))
|
||||||
|
.forEach(rec -> {
|
||||||
|
final var packet_id = rec.getInteger("packet_id");
|
||||||
|
final var basepacket_code = rec.getString("basepacket_code");
|
||||||
|
final var hive_id = rec.getInteger("hive_id");
|
||||||
|
|
||||||
|
final var haType = determineHaType(basepacket_code);
|
||||||
|
if (haType == MANAGED_WEBSPACE) {
|
||||||
|
final var managedWebspace = pac(packet_id);
|
||||||
|
managedWebspace.setParentAsset(hive(hive_id).serverRef.get());
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -342,14 +349,14 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
.map(this::trimAll)
|
.map(this::trimAll)
|
||||||
.map(row -> new Record(columns, row))
|
.map(row -> new Record(columns, row))
|
||||||
.forEach(rec -> {
|
.forEach(rec -> {
|
||||||
final var packet_component_id = rec.getInteger("packet_component_id");
|
// final var packet_component_id = rec.getInteger("packet_component_id"); not needed
|
||||||
final var packet_id = rec.getInteger("packet_id");
|
final var packet_id = rec.getInteger("packet_id");
|
||||||
final var quantity = rec.getInteger("quantity");
|
final var quantity = rec.getInteger("quantity");
|
||||||
final var basecomponent_code = rec.getString("basecomponent_code");
|
final var basecomponent_code = rec.getString("basecomponent_code");
|
||||||
final var created = rec.getLocalDate("created");
|
// final var created = rec.getLocalDate("created"); TODO.spec: can we do without?
|
||||||
final var cancelled = rec.getLocalDate("cancelled");
|
// final var cancelled = rec.getLocalDate("cancelled"); TODO.spec: can we do without?
|
||||||
|
|
||||||
final var asset = hostingAssets.get(PACKET_ID_OFFSET + packet_id);
|
final var asset = pac(packet_id);
|
||||||
final var name = switch (basecomponent_code) {
|
final var name = switch (basecomponent_code) {
|
||||||
case "DAEMON" -> "Daemons";
|
case "DAEMON" -> "Daemons";
|
||||||
case "MULTI" -> "Multi";
|
case "MULTI" -> "Multi";
|
||||||
@ -369,26 +376,32 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
case "SLAPLAT2H" -> "SLA-Platform";
|
case "SLAPLAT2H" -> "SLA-Platform";
|
||||||
case "SLAPLAT4H" -> "SLA-Platform";
|
case "SLAPLAT4H" -> "SLA-Platform";
|
||||||
case "SLAPLAT8H" -> "SLA-Platform";
|
case "SLAPLAT8H" -> "SLA-Platform";
|
||||||
|
|
||||||
case "SLAWEB2H" -> "SLA-Web";
|
case "SLAWEB2H" -> "SLA-Web";
|
||||||
case "SLAWEB4H" -> "SLA-Web";
|
case "SLAWEB4H" -> "SLA-Web";
|
||||||
case "SLAWEB8H" -> "SLA-Web";
|
case "SLAWEB8H" -> "SLA-Web";
|
||||||
|
|
||||||
case "SLAMAIL2H" -> "SLA-EMail";
|
case "SLAMAIL2H" -> "SLA-EMail";
|
||||||
case "SLAMAIL4H" -> "SLA-EMail";
|
case "SLAMAIL4H" -> "SLA-EMail";
|
||||||
case "SLAMAIL8H" -> "SLA-EMail";
|
case "SLAMAIL8H" -> "SLA-EMail";
|
||||||
|
|
||||||
case "SLAMARIA2H" -> "SLA-Maria";
|
case "SLAMARIA2H" -> "SLA-Maria";
|
||||||
case "SLAMARIA4H" -> "SLA-Maria";
|
case "SLAMARIA4H" -> "SLA-Maria";
|
||||||
case "SLAMARIA8H" -> "SLA-Maria";
|
case "SLAMARIA8H" -> "SLA-Maria";
|
||||||
|
|
||||||
case "SLAPGSQL2H" -> "SLA-PgSQL";
|
case "SLAPGSQL2H" -> "SLA-PgSQL";
|
||||||
case "SLAPGSQL4H" -> "SLA-PgSQL";
|
case "SLAPGSQL4H" -> "SLA-PgSQL";
|
||||||
case "SLAPGSQL8H" -> "SLA-PgSQL";
|
case "SLAPGSQL8H" -> "SLA-PgSQL";
|
||||||
|
|
||||||
case "SLAOFFIC2H" -> "SLA-Office";
|
case "SLAOFFIC2H" -> "SLA-Office";
|
||||||
case "SLAOFFIC4H" -> "SLA-Office";
|
case "SLAOFFIC4H" -> "SLA-Office";
|
||||||
case "SLAOFFIC8H" -> "SLA-Office";
|
case "SLAOFFIC8H" -> "SLA-Office";
|
||||||
case "BANDWIDTH" -> null; // TODO.spec: not implemented yet
|
|
||||||
|
case "BANDWIDTH" -> "Bandwidth";
|
||||||
default -> throw new IllegalArgumentException("unknown basecomponent_code: " + basecomponent_code);
|
default -> throw new IllegalArgumentException("unknown basecomponent_code: " + basecomponent_code);
|
||||||
};
|
};
|
||||||
if (name == null) {
|
|
||||||
} else if (name.equals("SLA-Infrastructure")) {
|
if (name.equals("SLA-Infrastructure")) {
|
||||||
final var slaValue = switch (basecomponent_code) {
|
final var slaValue = switch (basecomponent_code) {
|
||||||
case "SLAINFR2H" -> "EXT2H";
|
case "SLAINFR2H" -> "EXT2H";
|
||||||
case "SLAINFR4H" -> "EXT4H";
|
case "SLAINFR4H" -> "EXT4H";
|
||||||
@ -414,6 +427,26 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static @NotNull HsBookingItemType determineBiType(final String basepacket_code) {
|
||||||
|
return switch (basepacket_code) {
|
||||||
|
case "SRV/CLD" -> HsBookingItemType.CLOUD_SERVER;
|
||||||
|
case "SRV/MGD" -> HsBookingItemType.MANAGED_SERVER;
|
||||||
|
case "PAC/WEB" -> HsBookingItemType.MANAGED_WEBSPACE;
|
||||||
|
default -> throw new IllegalArgumentException(
|
||||||
|
"unknown basepacket_code: " + basepacket_code);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private static @NotNull HsHostingAssetType determineHaType(final String basepacket_code) {
|
||||||
|
return switch (basepacket_code) {
|
||||||
|
case "SRV/CLD" -> CLOUD_SERVER;
|
||||||
|
case "SRV/MGD" -> MANAGED_SERVER;
|
||||||
|
case "PAC/WEB" -> MANAGED_WEBSPACE;
|
||||||
|
default -> throw new IllegalArgumentException(
|
||||||
|
"unknown basepacket_code: " + basepacket_code);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
private static HsHostingAssetEntity ipNumber(final Integer inet_addr_id) {
|
private static HsHostingAssetEntity ipNumber(final Integer inet_addr_id) {
|
||||||
return inet_addr_id != null ? hostingAssets.get(IP_NUMBER_ID_OFFSET + inet_addr_id) : null;
|
return inet_addr_id != null ? hostingAssets.get(IP_NUMBER_ID_OFFSET + inet_addr_id) : null;
|
||||||
}
|
}
|
||||||
@ -422,6 +455,10 @@ public class ImportHostingAssets extends CsvDataImport {
|
|||||||
return hive_id != null ? hives.get(HIVE_ID_OFFSET + hive_id) : null;
|
return hive_id != null ? hives.get(HIVE_ID_OFFSET + hive_id) : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static HsHostingAssetEntity pac(final Integer packet_id) {
|
||||||
|
return packet_id != null ? hostingAssets.get(PACKET_ID_OFFSET + packet_id) : null;
|
||||||
|
}
|
||||||
|
|
||||||
private String firstOfEachType(
|
private String firstOfEachType(
|
||||||
final int maxCount,
|
final int maxCount,
|
||||||
final HsHostingAssetType... types) {
|
final HsHostingAssetType... types) {
|
||||||
|
Loading…
Reference in New Issue
Block a user