1 package io.github.magwas.coder;
2
3 import java.io.IOException;
4 import java.nio.file.Files;
5 import java.nio.file.Path;
6
7 import org.springframework.beans.factory.annotation.Autowired;
8 import org.springframework.stereotype.Service;
9
10 @Service
11 public class SystemInstructionsService {
12 @Autowired
13 private PersonalityService personalityService;
14
15 public String apply(String personalityName) {
16 try {
17 PersonalityData personality = personalityService.apply(personalityName);
18 Path instructionsFile = Path.of(System.getProperty("user.home"), ".coder", personality.instructionsFile());
19 return Files.exists(instructionsFile)
20 ? Files.readString(instructionsFile).trim()
21 : "";
22 } catch (IOException e) {
23 return "";
24 } catch (IllegalArgumentException e) {
25 return "";
26 }
27 }
28 }