Skip to content

Commit bf955f0

Browse files
committed
make UserTokenCallProxy generic
1 parent 9bcf314 commit bf955f0

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

src/main/java/io/getstream/chat/java/services/framework/UserServiceFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public final <TService> TService create(Class<TService> svcClass, UserToken user
1717
return (TService) newProxyInstance(
1818
svcClass.getClassLoader(),
1919
new Class<?>[] { svcClass },
20-
new UserTokenCallProxy(retrofit.callFactory(), retrofit.create(svcClass), userToken)
20+
new UserTokenCallProxy<>(retrofit.callFactory(), retrofit.create(svcClass), userToken)
2121
);
2222
}
2323

src/main/java/io/getstream/chat/java/services/framework/UserTokenCallProxy.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
* This approach allows per-call authentication without creating multiple OkHttpClient
1515
* instances, making it suitable for multi-tenant systems with thousands of users.
1616
*/
17-
class UserTokenCallProxy implements InvocationHandler {
17+
class UserTokenCallProxy<TService> implements InvocationHandler {
1818
private static volatile Field rawCallField;
1919

2020
private final Call.Factory callFactory;
21-
private final Object delegate;
21+
private final TService delegate;
2222
private final UserToken token;
2323

24-
UserTokenCallProxy(@NotNull Call.Factory callFactory, @NotNull Object delegate, @NotNull UserToken token) {
24+
UserTokenCallProxy(@NotNull Call.Factory callFactory, @NotNull TService delegate, @NotNull UserToken token) {
2525
this.callFactory = callFactory;
2626
this.delegate = delegate;
2727
this.token = token;
@@ -32,7 +32,7 @@ public Object invoke(Object proxy, Method method, Object[] args) throws Throwabl
3232
Object result = method.invoke(delegate, args);
3333

3434
// If the result is a Retrofit Call, inject the user token
35-
if (result instanceof retrofit2.Call) {
35+
if (result instanceof retrofit2.Call<?>) {
3636
return injectTokenIntoCall((retrofit2.Call<?>) result);
3737
}
3838

0 commit comments

Comments
 (0)