centralize commands (#28)

This commit is contained in:
Josh Thomas 2024-12-12 22:51:35 -06:00 committed by GitHub
parent b13d19a4bf
commit b993e35460
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 68 additions and 23 deletions

View file

@ -1,5 +1,6 @@
use crate::gis::{check_gis_setup, GISError};
use djls_ipc::v1::*;
use djls_ipc::IpcCommand;
use djls_ipc::{ProcessError, PythonProcess, TransportError};
use djls_python::Python;
use std::fmt;
@ -35,23 +36,12 @@ impl DjangoProject {
});
}
let request = messages::Request {
command: Some(messages::request::Command::DjangoGetProjectInfo(
django::GetProjectInfoRequest {},
)),
};
let response = python
.send(request)
.map_err(|e| ProjectError::Transport(e))?;
let response = django::GetProjectInfoRequest::execute(&mut python)?;
let version = match response.result {
Some(messages::response::Result::DjangoGetProjectInfo(response)) => {
response.project.unwrap().version
}
Some(messages::response::Result::Error(e)) => {
return Err(ProjectError::Process(ProcessError::Health(e.message)));
}
_ => {
return Err(ProjectError::Process(ProcessError::Response));
}