diff --git a/shared/grpc_clients/src/identity/authenticated.rs b/shared/grpc_clients/src/identity/authenticated.rs --- a/shared/grpc_clients/src/identity/authenticated.rs +++ b/shared/grpc_clients/src/identity/authenticated.rs @@ -61,8 +61,10 @@ }; let version_interceptor = CodeVersionLayer { - version: code_version, device_type, + code_version, + state_version: None, + major_desktop_version: None, }; let chained = ChainedInterceptor { diff --git a/shared/grpc_clients/src/identity/shared.rs b/shared/grpc_clients/src/identity/shared.rs --- a/shared/grpc_clients/src/identity/shared.rs +++ b/shared/grpc_clients/src/identity/shared.rs @@ -5,16 +5,26 @@ }; pub struct CodeVersionLayer { - pub(crate) version: u64, + pub(crate) code_version: u64, pub(crate) device_type: String, + pub(crate) state_version: Option, + pub(crate) major_desktop_version: Option, } impl Interceptor for CodeVersionLayer { fn call(&mut self, mut request: Request<()>) -> Result, Status> { let metadata = request.metadata_mut(); - metadata.insert("code_version", self.version.parse_to_ascii()?); + metadata.insert("code_version", self.code_version.parse_to_ascii()?); metadata.insert("device_type", self.device_type.parse_to_ascii()?); + if let Some(state_version) = self.state_version { + metadata.insert("state_version", state_version.parse_to_ascii()?); + } + if let Some(desktop_version) = self.major_desktop_version { + metadata + .insert("major_desktop_version", desktop_version.parse_to_ascii()?); + } + Ok(request) } } diff --git a/shared/grpc_clients/src/identity/unauthenticated/mod.rs b/shared/grpc_clients/src/identity/unauthenticated/mod.rs --- a/shared/grpc_clients/src/identity/unauthenticated/mod.rs +++ b/shared/grpc_clients/src/identity/unauthenticated/mod.rs @@ -19,8 +19,10 @@ > { let channel = crate::get_grpc_service_channel(url).await?; let version_interceptor = CodeVersionLayer { - version: code_version, device_type, + code_version, + state_version: None, + major_desktop_version: None, }; Ok(IdentityClientServiceClient::with_interceptor( channel,