feat: handle internall address differntly if running inside a cluster

This commit is contained in:
Tamipes 2026-06-03 23:25:54 +02:00
parent 876b568a54
commit 8da0f78696
2 changed files with 60 additions and 25 deletions

View file

@ -64,16 +64,13 @@ pub trait MinecraftServerHandle: Clone {
async fn start(&self) -> Result<(), OpaqueError>;
async fn stop(&self) -> Result<(), OpaqueError>;
async fn query_status(&self) -> Result<ServerDeploymentStatus, OpaqueError>;
fn get_internal_address(&self) -> Option<String>;
fn get_internal_port(&self) -> Option<String>;
fn get_internal_address(&self) -> &str;
fn get_addr(&self) -> Option<String>;
fn get_port(&self) -> Option<String>;
fn get_motd(&self) -> Option<String>;
async fn query_server_connectable(&self) -> Result<TcpStream, OpaqueError> {
let address = self
.get_internal_address()
.ok_or_else(|| "failed to get internal address from server")?;
let address = self.get_internal_address();
let server_stream = TcpStream::connect(address)
.await
.map_err(|_| "failed to connect to minecraft server")?;