Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit 36beea8

Browse files
committed
Make GatewayMessages utils public and add javadocs
1 parent f1c171d commit 36beea8

File tree

1 file changed

+70
-10
lines changed

1 file changed

+70
-10
lines changed

services-gateway-netty/src/main/java/io/scalecube/services/gateway/ws/GatewayMessages.java

Lines changed: 70 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import io.scalecube.services.api.ServiceMessage;
44
import io.scalecube.services.exceptions.DefaultErrorMapper;
55

6-
final class GatewayMessages {
6+
public final class GatewayMessages {
77

88
static final String QUALIFIER_FIELD = "q";
99
static final String STREAM_ID_FIELD = "sid";
@@ -16,15 +16,29 @@ private GatewayMessages() {
1616
// Do not instantiate
1717
}
1818

19-
static ServiceMessage newCancelMessage(long sid, String qualifier) {
19+
/**
20+
* Returns cancel message by given arguments.
21+
*
22+
* @param sid sid
23+
* @param qualifier qualifier
24+
* @return {@link ServiceMessage} instance as the cancel signal
25+
*/
26+
public static ServiceMessage newCancelMessage(long sid, String qualifier) {
2027
return ServiceMessage.builder()
2128
.qualifier(qualifier)
2229
.header(STREAM_ID_FIELD, sid)
2330
.header(SIGNAL_FIELD, Signal.CANCEL.code())
2431
.build();
2532
}
2633

27-
static ServiceMessage newErrorMessage(ServiceMessage message, Throwable th) {
34+
/**
35+
* Returns error message by given arguments.
36+
*
37+
* @param message request
38+
* @param th cause
39+
* @return {@link ServiceMessage} instance as the error signal
40+
*/
41+
public static ServiceMessage newErrorMessage(ServiceMessage message, Throwable th) {
2842
ServiceMessage.Builder builder =
2943
ServiceMessage.from(DefaultErrorMapper.INSTANCE.toMessage(message.qualifier(), th))
3044
.header(SIGNAL_FIELD, Signal.ERROR.code());
@@ -35,15 +49,30 @@ static ServiceMessage newErrorMessage(ServiceMessage message, Throwable th) {
3549
return builder.build();
3650
}
3751

38-
static ServiceMessage newCompleteMessage(long sid, String qualifier) {
52+
/**
53+
* Returns complete message by given arguments.
54+
*
55+
* @param sid sid
56+
* @param qualifier qualifier
57+
* @return {@link ServiceMessage} instance as the complete signal
58+
*/
59+
public static ServiceMessage newCompleteMessage(long sid, String qualifier) {
3960
return ServiceMessage.builder()
4061
.qualifier(qualifier)
4162
.header(STREAM_ID_FIELD, sid)
4263
.header(SIGNAL_FIELD, Signal.COMPLETE.code())
4364
.build();
4465
}
4566

46-
static ServiceMessage newResponseMessage(
67+
/**
68+
* Returns response message by given arguments.
69+
*
70+
* @param sid sid
71+
* @param message request
72+
* @param isErrorResponse should the message be marked as an error?
73+
* @return {@link ServiceMessage} instance as the response
74+
*/
75+
public static ServiceMessage newResponseMessage(
4776
long sid, ServiceMessage message, boolean isErrorResponse) {
4877
if (isErrorResponse) {
4978
return ServiceMessage.from(message)
@@ -54,15 +83,28 @@ static ServiceMessage newResponseMessage(
5483
return ServiceMessage.from(message).header(STREAM_ID_FIELD, sid).build();
5584
}
5685

57-
static ServiceMessage validateSid(ServiceMessage message) {
86+
/**
87+
* Verifies the sid existence in a given message.
88+
*
89+
* @param message message
90+
* @return incoming message
91+
*/
92+
public static ServiceMessage validateSid(ServiceMessage message) {
5893
if (message.header(STREAM_ID_FIELD) == null) {
5994
throw WebsocketContextException.badRequest("sid is missing", message);
6095
} else {
6196
return message;
6297
}
6398
}
6499

65-
static ServiceMessage validateSidOnSession(
100+
/**
101+
* Verifies the sid is not used in a given session.
102+
*
103+
* @param session session
104+
* @param message message
105+
* @return incoming message
106+
*/
107+
public static ServiceMessage validateSidOnSession(
66108
WebsocketGatewaySession session, ServiceMessage message) {
67109
long sid = getSid(message);
68110
if (session.containsSid(sid)) {
@@ -72,18 +114,36 @@ static ServiceMessage validateSidOnSession(
72114
}
73115
}
74116

75-
static ServiceMessage validateQualifier(ServiceMessage message) {
117+
/**
118+
* Verifies the qualifier existence in a given message.
119+
*
120+
* @param message message
121+
* @return incoming message
122+
*/
123+
public static ServiceMessage validateQualifier(ServiceMessage message) {
76124
if (message.qualifier() == null) {
77125
throw WebsocketContextException.badRequest("qualifier is missing", message);
78126
}
79127
return message;
80128
}
81129

82-
static long getSid(ServiceMessage message) {
130+
/**
131+
* Returns sid from a given message.
132+
*
133+
* @param message message
134+
* @return sid
135+
*/
136+
public static long getSid(ServiceMessage message) {
83137
return Long.parseLong(message.header(STREAM_ID_FIELD));
84138
}
85139

86-
static Signal getSignal(ServiceMessage message) {
140+
/**
141+
* Returns signal from a given message.
142+
*
143+
* @param message message
144+
* @return signal
145+
*/
146+
public static Signal getSignal(ServiceMessage message) {
87147
String header = message.header(SIGNAL_FIELD);
88148
return header != null ? Signal.from(Integer.parseInt(header)) : null;
89149
}

0 commit comments

Comments
 (0)