@@ -184,54 +184,48 @@ HibernatableWebSocketCustomEvent::HibernatableWebSocketCustomEvent(
184184 params(kj::mv(params)),
185185 manager(manager) {}
186186
187- // TODO(cleanup): Try to reduce duplication with consumeParams()
188- kj::Maybe<tracing::EventInfo> HibernatableWebSocketCustomEvent::getEventInfo () const {
189- // Try to extract event type from params if available
187+ tracing::HibernatableWebSocketEventInfo::Type HibernatableWebSocketCustomEvent::getEventType ()
188+ const {
190189 KJ_SWITCH_ONEOF (params) {
191190 KJ_CASE_ONEOF (socketParams, HibernatableSocketParams) {
192191 KJ_SWITCH_ONEOF (socketParams.eventType ) {
193- KJ_CASE_ONEOF (text, HibernatableSocketParams::Text) {
194- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
195- tracing::HibernatableWebSocketEventInfo::Message ()));
192+ KJ_CASE_ONEOF (_, HibernatableSocketParams::Text) {
193+ return tracing::HibernatableWebSocketEventInfo::Message{};
196194 }
197- KJ_CASE_ONEOF (data, HibernatableSocketParams::Data) {
198- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
199- tracing::HibernatableWebSocketEventInfo::Message ()));
195+ KJ_CASE_ONEOF (_, HibernatableSocketParams::Data) {
196+ return tracing::HibernatableWebSocketEventInfo::Message{};
200197 }
201198 KJ_CASE_ONEOF (close, HibernatableSocketParams::Close) {
202- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
203- tracing::HibernatableWebSocketEventInfo::Close{close.code , close.wasClean }));
199+ return tracing::HibernatableWebSocketEventInfo::Close{close.code , close.wasClean };
204200 }
205- KJ_CASE_ONEOF (error, HibernatableSocketParams::Error) {
206- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
207- tracing::HibernatableWebSocketEventInfo::Error ()));
201+ KJ_CASE_ONEOF (_, HibernatableSocketParams::Error) {
202+ return tracing::HibernatableWebSocketEventInfo::Error{};
208203 }
209204 }
210205 }
211206 KJ_CASE_ONEOF (reader, kj::Own<HibernationReader>) {
212- // Parse the HibernationReader to determine the actual event type
213207 auto payload = reader->getMessage ().getPayload ();
214208 switch (payload.which ()) {
215209 case rpc::HibernatableWebSocketEventMessage::Payload::TEXT:
216210 case rpc::HibernatableWebSocketEventMessage::Payload::DATA:
217- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
218- tracing::HibernatableWebSocketEventInfo::Message ()));
211+ return tracing::HibernatableWebSocketEventInfo::Message{};
219212 case rpc::HibernatableWebSocketEventMessage::Payload::CLOSE: {
220213 auto close = payload.getClose ();
221- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
222- tracing::HibernatableWebSocketEventInfo::Close{
223- close.getCode (), close.getWasClean ()}));
214+ return tracing::HibernatableWebSocketEventInfo::Close{
215+ close.getCode (), close.getWasClean ()};
224216 }
225217 case rpc::HibernatableWebSocketEventMessage::Payload::ERROR:
226- return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (
227- tracing::HibernatableWebSocketEventInfo::Error ()));
218+ return tracing::HibernatableWebSocketEventInfo::Error{};
228219 }
229- KJ_UNREACHABLE;
230220 }
231221 }
232222 KJ_UNREACHABLE;
233223}
234224
225+ kj::Maybe<tracing::EventInfo> HibernatableWebSocketCustomEvent::getEventInfo () const {
226+ return tracing::EventInfo (tracing::HibernatableWebSocketEventInfo (getEventType ()));
227+ }
228+
235229HibernatableSocketParams HibernatableWebSocketCustomEvent::consumeParams () {
236230 KJ_IF_SOME (p, params.tryGet <kj::Own<HibernationReader>>()) {
237231 kj::Maybe<HibernatableSocketParams> eventParameters;
0 commit comments