Skip to content
Merged
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
Expand Up @@ -97,7 +97,7 @@ public void run() {
String branch = featuredMod.getGitBranch();
boolean allowOverride = Optional.ofNullable(featuredMod.isAllowOverride()).orElse(false);
String modFilesExtension = featuredMod.getFileExtension();
Map<String, Integer> fileIds = featuredModService.getFileIds(modName);
Map<String, Short> fileIds = featuredModService.getFileIds(modName);

log.info("Starting deployment of '{}' from '{}', branch '{}', allowOverride '{}', modFilesExtension '{}'",
modName, repositoryUrl, branch, allowOverride, modFilesExtension);
Expand Down Expand Up @@ -147,9 +147,9 @@ void invokeDeploymentWebhook(FeaturedMod featuredMod) {
* featured mod.
*/
@SneakyThrows
private Optional<StagedFile> createPatchedExe(short version, Map<String, Integer> fileIds, Path targetFolder) {
private Optional<StagedFile> createPatchedExe(short version, Map<String, Short> fileIds, Path targetFolder) {
String clientFileName = "ForgedAlliance.exe";
Integer fileId = fileIds.get(clientFileName);
Short fileId = fileIds.get(clientFileName);
if (fileId == null) {
log.debug("Skipping '{}' because there's no file ID available", clientFileName);
return Optional.empty();
Expand Down Expand Up @@ -211,7 +211,7 @@ private void updateStatus(String message) {
*/
@SneakyThrows
@SuppressWarnings("unchecked")
private List<StagedFile> packageFiles(Path repositoryDirectory, short version, Map<String, Integer> fileIds, Path targetFolder) {
private List<StagedFile> packageFiles(Path repositoryDirectory, short version, Map<String, Short> fileIds, Path targetFolder) {
updateStatus("Packaging files");
try (Stream<Path> stream = Files.list(repositoryDirectory)) {
return stream
Expand Down Expand Up @@ -248,14 +248,14 @@ private void finalizeFile(StagedFile file) {
* content of the directory. If no file ID is available, an empty optional is returned.
*/
@SneakyThrows
private Optional<StagedFile> packDirectory(Path directory, Short version, Path targetFolder, Map<String, Integer> fileIds) {
private Optional<StagedFile> packDirectory(Path directory, Short version, Path targetFolder, Map<String, Short> fileIds) {
String directoryName = directory.getFileName().toString();
Path targetNxtFile = targetFolder.resolve(String.format("%s.%d.%s", directoryName, version, featuredMod.getFileExtension()));
Path tmpNxtFile = toTmpFile(targetNxtFile);

// E.g. "effects.nx2"
String clientFileName = String.format("%s.%s", directoryName, featuredMod.getFileExtension());
Integer fileId = fileIds.get(clientFileName);
Short fileId = fileIds.get(clientFileName);
if (fileId == null) {
log.debug("Skipping folder '{}' because there's no file ID available", directoryName);
return Optional.empty();
Expand All @@ -275,14 +275,14 @@ private Optional<StagedFile> packDirectory(Path directory, Short version, Path t
* content of the directory. If no file ID is available, an empty optional is returned.
*/
@SneakyThrows
private Optional<StagedFile> packFile(Path file, Short version, Path targetFolder, Map<String, Integer> fileIds) {
private Optional<StagedFile> packFile(Path file, Short version, Path targetFolder, Map<String, Short> fileIds) {
String fullFileName = file.getFileName().toString();
String baseName = FilenameUtils.getBaseName(fullFileName);
String extension = FilenameUtils.getExtension(fullFileName);
Path targetFile = targetFolder.resolve(String.format("%s_%d.%s", baseName, version, extension));
Path tmpFile = toTmpFile(targetFile);

Integer fileId = fileIds.get(fullFileName);
Short fileId = fileIds.get(fullFileName);
if (fileId == null) {
log.debug("Skipping file '{}' because there's no file ID available", fullFileName);
return Optional.empty();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void save(String modName, short version, List<FeaturedModFile> featuredMo
legacyFeaturedModFileRepository.save(modName, version, featuredModFiles);
}

public Map<String, Integer> getFileIds(String modName) {
public Map<String, Short> getFileIds(String modName) {
return legacyFeaturedModFileRepository.getFileIds(modName);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,15 +103,15 @@ public void save(String modName, short version, List<FeaturedModFile> featuredMo
}

@SuppressWarnings("unchecked")
public Map<String, Integer> getFileIds(String modName) {
public Map<String, Short> getFileIds(String modName) {
// Please shoot me.
String innerModName = "ladder1v1".equals(modName) ? "faf" : modName;
verifyModName(innerModName);

Query query = entityManager.createNativeQuery(String.format("SELECT id, filename FROM updates_%s", innerModName));

return ((List<Object[]>) query.getResultList()).stream()
.collect(Collectors.toMap(row -> (String) row[1], row -> (int) row[0]));
.collect(Collectors.toMap(row -> (String) row[1], row -> (short) row[0]));
}

private void verifyModName(String modName) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,8 +138,8 @@ public void testRun() throws Exception {
new FeaturedMod().setTechnicalName("faf")
));
when(featuredModService.getFileIds("faf")).thenReturn(Map.of(
"ForgedAlliance.exe", 1,
"someDir.nx3", 2
"ForgedAlliance.exe", (short)1,
"someDir.nx3", (short)2
));

Path dummyExe = repositoriesFolder.resolve("TemplateForgedAlliance.exe");
Expand Down Expand Up @@ -203,8 +203,8 @@ public void testHashEquality() throws Exception {
new FeaturedMod().setTechnicalName("faf")
));
when(featuredModService.getFileIds("faf")).thenReturn(Map.of(
"ForgedAlliance.exe", 1,
"someDir.nx3", 2
"ForgedAlliance.exe", (short)1,
"someDir.nx3", (short)2
));

Path dummyExe = repositoriesFolder.resolve("TemplateForgedAlliance.exe");
Expand Down Expand Up @@ -245,8 +245,8 @@ public void testHashEquality() throws Exception {
new FeaturedMod().setTechnicalName("faf")
));
when(featuredModService.getFileIds("faf")).thenReturn(Map.of(
"ForgedAlliance.exe", 1,
"someDir.nx3", 2
"ForgedAlliance.exe", (short)1,
"someDir.nx3", (short)2
));

dummyExe = repositoriesFolder.resolve("TemplateForgedAlliance.exe");
Expand Down
Loading