Skip to content

Commit 50a9742

Browse files
committed
Rename RepliconServer into ServerMessages
Because it holds only messages now.
1 parent 2599ca7 commit 50a9742

File tree

13 files changed

+78
-75
lines changed

13 files changed

+78
-75
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3434
- Rename `IntoComponentRule::register_component` to `IntoComponentRule::into_rule` and move it to the `shared::replication::rules::component` module.
3535
- Rename `NetworkStats` to `ClientStats` and move it from `shared::backend::connected_client` to `shared::backend`. It's also now a separate resource from `RepliconClient`.
3636
- Rename `RepliconClient` into `ClientMessages`. It holds only messages now.
37+
- Rename `RepliconServer` into `ServerMessages`. It holds only messages now.
3738
- Replace `IntoReplicationRule` with `IntoComponentRules`, which returns only `Vec<ComponentRule>`.
3839
- Replace `ReplicationBundle` with `BundleRules`, which returns only `Vec<ComponentRule>` and uses an associated constant to customize the priority.
3940
- Hide `ServerEntityMap` mutation methods from public API.

bevy_replicon_example_backend/src/server.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ fn set_stopped(mut state: ResMut<NextState<ServerState>>) {
4848

4949
fn receive_packets(
5050
mut commands: Commands,
51+
mut messages: ResMut<ServerMessages>,
5152
server: Res<ExampleServer>,
52-
mut replicon_server: ResMut<RepliconServer>,
5353
mut clients: Query<(Entity, &mut ExampleConnection, Option<&ConditionerConfig>)>,
5454
global_config: Option<Res<ConditionerConfig>>,
5555
) {
@@ -115,18 +115,18 @@ fn receive_packets(
115115
}
116116

117117
while let Some((channel_id, message)) = connection.conditioner.pop(now) {
118-
replicon_server.insert_received(client, channel_id, message)
118+
messages.insert_received(client, channel_id, message)
119119
}
120120
}
121121
}
122122

123123
fn send_packets(
124124
mut commands: Commands,
125125
mut disconnect_events: EventReader<DisconnectRequest>,
126-
mut replicon_server: ResMut<RepliconServer>,
126+
mut messages: ResMut<ServerMessages>,
127127
mut clients: Query<&mut ExampleConnection>,
128128
) {
129-
for (client, channel_id, message) in replicon_server.drain_sent() {
129+
for (client, channel_id, message) in messages.drain_sent() {
130130
let mut connection = clients
131131
.get_mut(client)
132132
.expect("all connected clients should have streams");

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -713,7 +713,7 @@ pub mod prelude {
713713
channels::{Channel, RepliconChannels},
714714
client_messages::ClientMessages,
715715
connected_client::ConnectedClient,
716-
replicon_server::RepliconServer,
716+
server_messages::ServerMessages,
717717
},
718718
client_id::ClientId,
719719
event::{

src/server.rs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ impl Plugin for ServerPlugin {
8181
fn build(&self, app: &mut App) {
8282
app.init_resource::<DespawnBuffer>()
8383
.init_resource::<RemovalBuffer>()
84-
.init_resource::<RepliconServer>()
84+
.init_resource::<ServerMessages>()
8585
.init_resource::<ServerTick>()
8686
.init_resource::<EntityBuffer>()
8787
.init_resource::<BufferedServerEvents>()
@@ -171,9 +171,9 @@ impl Plugin for ServerPlugin {
171171

172172
fn finish(&self, app: &mut App) {
173173
app.world_mut()
174-
.resource_scope(|world, mut server: Mut<RepliconServer>| {
174+
.resource_scope(|world, mut messages: Mut<ServerMessages>| {
175175
let channels = world.resource::<RepliconChannels>();
176-
server.setup_client_channels(channels.client_channels().len());
176+
messages.setup_client_channels(channels.client_channels().len());
177177
});
178178
}
179179
}
@@ -194,10 +194,10 @@ fn handle_connects(
194194

195195
fn handle_disconnects(
196196
trigger: Trigger<OnRemove, ConnectedClient>,
197-
mut server: ResMut<RepliconServer>,
197+
mut messages: ResMut<ServerMessages>,
198198
) {
199199
debug!("client `{}` disconnected", trigger.target());
200-
server.remove_client(trigger.target());
200+
messages.remove_client(trigger.target());
201201
}
202202

203203
fn check_protocol(
@@ -242,11 +242,11 @@ fn cleanup_acks(
242242

243243
fn receive_acks(
244244
change_tick: SystemChangeTick,
245-
mut server: ResMut<RepliconServer>,
245+
mut messages: ResMut<ServerMessages>,
246246
mut clients: Query<&mut ClientTicks>,
247247
mut entity_buffer: ResMut<EntityBuffer>,
248248
) {
249-
for (client, mut message) in server.receive(ClientChannel::MutationAcks) {
249+
for (client, mut message) in messages.receive(ClientChannel::MutationAcks) {
250250
while message.has_remaining() {
251251
match postcard_utils::from_buf(&mut message) {
252252
Ok(mutate_index) => {
@@ -316,7 +316,7 @@ fn send_replication(
316316
mut removal_buffer: ResMut<RemovalBuffer>,
317317
mut entity_buffer: ResMut<EntityBuffer>,
318318
mut despawn_buffer: ResMut<DespawnBuffer>,
319-
mut server: ResMut<RepliconServer>,
319+
mut messages: ResMut<ServerMessages>,
320320
track_mutate_messages: Res<TrackMutateMessages>,
321321
registry: Res<ReplicationRegistry>,
322322
type_registry: Res<AppTypeRegistry>,
@@ -349,7 +349,7 @@ fn send_replication(
349349

350350
send_messages(
351351
&mut clients,
352-
&mut server,
352+
&mut messages,
353353
**server_tick,
354354
**track_mutate_messages,
355355
&mut serialized,
@@ -364,13 +364,13 @@ fn send_replication(
364364

365365
fn reset(
366366
mut commands: Commands,
367-
mut server: ResMut<RepliconServer>,
367+
mut messages: ResMut<ServerMessages>,
368368
mut server_tick: ResMut<ServerTick>,
369369
mut related_entities: ResMut<RelatedEntities>,
370370
clients: Query<Entity, With<ConnectedClient>>,
371371
mut buffered_events: ResMut<BufferedServerEvents>,
372372
) {
373-
server.clear();
373+
messages.clear();
374374
*server_tick = Default::default();
375375
buffered_events.clear();
376376
related_entities.clear();
@@ -391,7 +391,7 @@ fn send_messages(
391391
&mut PriorityMap,
392392
&mut ClientVisibility,
393393
)>,
394-
server: &mut RepliconServer,
394+
messages: &mut ServerMessages,
395395
server_tick: RepliconTick,
396396
track_mutate_messages: bool,
397397
serialized: &mut SerializedData,
@@ -407,15 +407,15 @@ fn send_messages(
407407
let server_tick_range =
408408
write_tick_cached(&mut server_tick_range, serialized, server_tick)?;
409409

410-
updates.send(server, client_entity, serialized, server_tick_range)?;
410+
updates.send(messages, client_entity, serialized, server_tick_range)?;
411411
}
412412

413413
if !mutations.is_empty() || track_mutate_messages {
414414
let server_tick_range =
415415
write_tick_cached(&mut server_tick_range, serialized, server_tick)?;
416416

417417
mutations.send(
418-
server,
418+
messages,
419419
client_entity,
420420
&mut ticks,
421421
entity_buffer,
@@ -798,7 +798,7 @@ pub enum ServerSet {
798798
///
799799
/// Runs in [`PreUpdate`].
800800
ReceivePackets,
801-
/// Systems that receive data from [`RepliconServer`].
801+
/// Systems that read data from [`ServerMessages`].
802802
///
803803
/// Runs in [`PreUpdate`].
804804
Receive,
@@ -809,7 +809,7 @@ pub enum ServerSet {
809809
///
810810
/// Runs in [`OnEnter`] for [`ServerState::Running`].
811811
ReadRelations,
812-
/// Systems that send data to [`RepliconServer`].
812+
/// Systems that write data to [`ServerMessages`].
813813
///
814814
/// Runs in [`PostUpdate`] on server tick, see [`TickPolicy`].
815815
Send,

src/server/event.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ impl Plugin for ServerEventPlugin {
117117

118118
fn send_or_buffer(
119119
server_events: FilteredResources,
120-
mut server: ResMut<RepliconServer>,
120+
mut messages: ResMut<ServerMessages>,
121121
mut buffered_events: ResMut<BufferedServerEvents>,
122122
type_registry: Res<AppTypeRegistry>,
123123
event_registry: Res<RemoteEventRegistry>,
@@ -138,7 +138,7 @@ fn send_or_buffer(
138138
event.send_or_buffer(
139139
&mut ctx,
140140
&server_events,
141-
&mut server,
141+
&mut messages,
142142
&clients,
143143
&mut buffered_events,
144144
);
@@ -147,18 +147,18 @@ fn send_or_buffer(
147147
}
148148

149149
fn send_buffered(
150-
mut server: ResMut<RepliconServer>,
150+
mut messages: ResMut<ServerMessages>,
151151
mut buffered_events: ResMut<BufferedServerEvents>,
152152
clients: Query<(Entity, Option<&ClientTicks>), With<ConnectedClient>>,
153153
) {
154154
buffered_events
155-
.send_all(&mut server, &clients)
155+
.send_all(&mut messages, &clients)
156156
.expect("buffered server events should send");
157157
}
158158

159159
fn receive(
160160
mut client_events: FilteredResourcesMut,
161-
mut server: ResMut<RepliconServer>,
161+
mut messages: ResMut<ServerMessages>,
162162
type_registry: Res<AppTypeRegistry>,
163163
event_registry: Res<RemoteEventRegistry>,
164164
) {
@@ -172,7 +172,7 @@ fn receive(
172172
.expect("client events resource should be accessible");
173173

174174
// SAFETY: passed pointer was obtained using this event data.
175-
unsafe { event.receive(&mut ctx, client_events.into_inner(), &mut server) };
175+
unsafe { event.receive(&mut ctx, client_events.into_inner(), &mut messages) };
176176
}
177177
}
178178

src/server/replication_messages/mutations.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ impl Mutations {
154154
/// using the last up-to-date mutations to avoid re-sending old values.
155155
pub(crate) fn send(
156156
&mut self,
157-
server: &mut RepliconServer,
157+
messages: &mut ServerMessages,
158158
client: Entity,
159159
ticks: &mut ClientTicks,
160160
entity_buffer: &mut EntityBuffer,
@@ -246,7 +246,7 @@ impl Mutations {
246246

247247
debug_assert_eq!(message.len(), message_size);
248248

249-
server.send(client, ServerChannel::Mutations, message);
249+
messages.send(client, ServerChannel::Mutations, message);
250250
}
251251

252252
Ok(self.messages.len())
@@ -446,7 +446,7 @@ mod tests {
446446
track_mutate_messages: bool,
447447
) -> usize {
448448
let mut serialized = SerializedData::default();
449-
let mut server = RepliconServer::default();
449+
let mut messages = ServerMessages::default();
450450
let mut mutations = Mutations::default();
451451

452452
mutations.resize_related(related.len());
@@ -463,7 +463,7 @@ mod tests {
463463

464464
mutations
465465
.send(
466-
&mut server,
466+
&mut messages,
467467
Entity::PLACEHOLDER,
468468
&mut Default::default(),
469469
&mut Default::default(),

src/server/replication_messages/updates.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ impl Updates {
181181
/// on deserialization just consume all remaining bytes.
182182
pub(crate) fn send(
183183
&self,
184-
server: &mut RepliconServer,
184+
messages: &mut ServerMessages,
185185
client: Entity,
186186
serialized: &SerializedData,
187187
server_tick_range: Range<usize>,
@@ -272,7 +272,7 @@ impl Updates {
272272

273273
debug_assert_eq!(message.len(), message_size);
274274

275-
server.send(client, ServerChannel::Updates, message);
275+
messages.send(client, ServerChannel::Updates, message);
276276

277277
Ok(())
278278
}

src/shared/backend.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
//! - Create channels defined in the [`RepliconChannels`](channels::RepliconChannels) resource.
66
//! This can be done via an extension trait that provides a conversion which the user needs to call manually to get channels for the backend.
77
//! - Manage the [`ClientState`] and [`ServerState`] states.
8-
//! - Update the [`RepliconServer`](replicon_server::RepliconServer) and [`ClientMessages`](client_messages::ClientMessages) resources.
8+
//! - Update the [`ServerMessages`](server_messages::ServerMessages) and [`ClientMessages`](client_messages::ClientMessages) resources.
99
//! - Spawn and despawn entities with [`ConnectedClient`](connected_client::ConnectedClient) component.
1010
//! - React on [`DisconnectRequest`] event.
1111
//! - Optionally update statistic in [`ClientStats`] resource and components.
@@ -25,7 +25,7 @@
2525
pub mod channels;
2626
pub mod client_messages;
2727
pub mod connected_client;
28-
pub mod replicon_server;
28+
pub mod server_messages;
2929

3030
use bevy::prelude::*;
3131

@@ -123,14 +123,14 @@ mod tests {
123123
client_messages.send(ClientChannel::MutationAcks, message);
124124
}
125125

126-
let mut server = RepliconServer::default();
127-
server.setup_client_channels(channels.client_channels().len());
126+
let mut server_messages = ServerMessages::default();
127+
server_messages.setup_client_channels(channels.client_channels().len());
128128

129129
for (channel_id, message) in client_messages.drain_sent() {
130-
server.insert_received(Entity::PLACEHOLDER, channel_id, message);
130+
server_messages.insert_received(Entity::PLACEHOLDER, channel_id, message);
131131
}
132132

133-
let messages: Vec<_> = server
133+
let messages: Vec<_> = server_messages
134134
.receive(ClientChannel::MutationAcks)
135135
.map(|(_, message)| message)
136136
.collect();
@@ -140,18 +140,18 @@ mod tests {
140140
#[test]
141141
fn server_to_client() {
142142
let channels = RepliconChannels::default();
143-
let mut server = RepliconServer::default();
144-
server.setup_client_channels(channels.client_channels().len());
143+
let mut server_messages = ServerMessages::default();
144+
server_messages.setup_client_channels(channels.client_channels().len());
145145

146146
const MESSAGES: &[&[u8]] = &[&[0], &[1]];
147147
for &message in MESSAGES {
148-
server.send(Entity::PLACEHOLDER, ServerChannel::Mutations, message);
148+
server_messages.send(Entity::PLACEHOLDER, ServerChannel::Mutations, message);
149149
}
150150

151151
let mut client_messages = ClientMessages::default();
152152
client_messages.setup_server_channels(channels.server_channels().len());
153153

154-
for (_, channel_id, message) in server.drain_sent() {
154+
for (_, channel_id, message) in server_messages.drain_sent() {
155155
client_messages.insert_received(channel_id, message);
156156
}
157157

src/shared/backend/replicon_server.rs renamed to src/shared/backend/server_messages.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@ use bevy::prelude::*;
22
use bytes::Bytes;
33
use log::trace;
44

5-
/// Stores information about the server independent from the messaging backend.
5+
/// Sent and received messages for exchange between Replicon and the messaging backend.
66
///
77
/// The messaging backend is responsible for updating this resource:
8-
/// - For receiving messages, [`Self::insert_received`] should be used.
9-
/// A system to forward messages from the backend to Replicon should run in [`ServerSet::ReceivePackets`](crate::server::ServerSet::ReceivePackets).
10-
/// - For sending messages, [`Self::drain_sent`] should be used to drain all sent messages.
11-
/// A system to forward messages from Replicon to the backend should run in [`ServerSet::SendPackets`](crate::server::ServerSet::SendPackets).
8+
/// - Received messages should be forwarded to Replicon via [`Self::insert_received`] in
9+
/// [`ServerSet::ReceivePackets`](crate::prelude::ServerSet::ReceivePackets).
10+
/// - Replicon messages needs to be forwarded to the backend via [`Self::drain_sent`] in
11+
/// [`ServerSet::SendPackets`](crate::prelude::ServerSet::SendPackets).
1212
///
1313
/// Inserted as resource by [`ServerPlugin`](crate::server::ServerPlugin).
1414
#[derive(Resource, Default)]
15-
pub struct RepliconServer {
15+
pub struct ServerMessages {
1616
/// List of received messages for each channel.
1717
///
1818
/// Top index is channel ID.
@@ -23,7 +23,7 @@ pub struct RepliconServer {
2323
sent_messages: Vec<(Entity, usize, Bytes)>,
2424
}
2525

26-
impl RepliconServer {
26+
impl ServerMessages {
2727
/// Changes the size of the receive messages storage according to the number of client channels.
2828
pub(crate) fn setup_client_channels(&mut self, channels_count: usize) {
2929
self.received_messages.resize(channels_count, Vec::new());

0 commit comments

Comments
 (0)