Skip to content

Commit 7f4f911

Browse files
Dev MCP: Make sure the config dir exist
Signed-off-by: Phillip Kruger <[email protected]>
1 parent 5110dde commit 7f4f911

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

extensions/devui/runtime/src/main/java/io/quarkus/devui/runtime/mcp/McpDevUIJsonRpcService.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
import jakarta.enterprise.context.ApplicationScoped;
1515
import jakarta.enterprise.inject.Produces;
1616

17+
import org.jboss.logging.Logger;
18+
1719
import io.quarkus.devui.runtime.spi.McpEvent;
1820
import io.quarkus.devui.runtime.spi.McpServerConfiguration;
1921
import io.smallrye.mutiny.Multi;
@@ -24,6 +26,8 @@
2426
*/
2527
@ApplicationScoped
2628
public class McpDevUIJsonRpcService {
29+
private static final Logger LOG = Logger.getLogger(McpDevUIJsonRpcService.class.getName());
30+
2731
private final BroadcastProcessor<McpClientInfo> connectedClientStream = BroadcastProcessor.create();
2832
private final BroadcastProcessor<McpEvent> mcpEventStream = BroadcastProcessor.create();
2933

@@ -112,11 +116,17 @@ private Properties loadConfiguration() {
112116
}
113117

114118
private boolean storeConfiguration(Properties p) {
115-
try (OutputStream out = Files.newOutputStream(configFile)) {
116-
p.store(out, "Dev MCP Configuration");
117-
return true;
119+
try {
120+
Files.createDirectories(configDir);
121+
try (OutputStream out = Files.newOutputStream(configFile)) {
122+
p.store(out, "Dev MCP Configuration");
123+
return true;
124+
} catch (IOException ex) {
125+
LOG.error("Could not create config file for Dev MCP [" + configFile + "]", ex);
126+
return false;
127+
}
118128
} catch (IOException ex) {
119-
ex.printStackTrace();
129+
LOG.error("Could not create config directory for Dev MCP [" + configDir + "]", ex);
120130
return false;
121131
}
122132
}

0 commit comments

Comments
 (0)