Skip to content

Commit

Permalink
Add endpoint to convert list of commands
Browse files Browse the repository at this point in the history
  • Loading branch information
kennytv committed May 5, 2024
1 parent 7fa74a0 commit aba33f8
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package io.papermc.converter.converter;

import io.papermc.converter.config.ApplicationConfig;
import io.papermc.converter.model.CommandList;
import io.papermc.converter.service.MinecraftService;
import io.papermc.converter.service.MinecraftServiceWrapper;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Function;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
Expand All @@ -27,6 +30,18 @@ public ResponseEntity<String> convertCommand(@RequestBody final String inputText
return this.convertValidating(inputText, this.minecraftService::upgradeCommand);
}

@PostMapping(value = "/convert-commands")
public ResponseEntity<List<String>> convertCommands(@RequestBody final CommandList commandList) {
final List<String> output = new ArrayList<>(commandList.commands().size());
for (final String command : commandList.commands()) {
if (command.length() > this.config.maxInputLength()) {
return ResponseEntity.badRequest().build();
}
output.add(this.minecraftService.upgradeCommand(command.trim()));
}
return ResponseEntity.ok(output);
}

@PostMapping(value = "/convert-item-argument", consumes = "text/plain", produces = "text/plain")
public ResponseEntity<String> convertItemArgument(@RequestBody final String inputText) {
return this.convertValidating(inputText, this.minecraftService::upgradeItemArgument);
Expand Down
7 changes: 7 additions & 0 deletions src/main/java/io/papermc/converter/model/CommandList.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package io.papermc.converter.model;

import jakarta.validation.constraints.Size;
import java.util.List;

public record CommandList(@Size(max = 200) List<String> commands) {
}

0 comments on commit aba33f8

Please sign in to comment.