Skip to content

Commit 9a55cc3

Browse files
committed
feat: 1. rename AuthenticationUser to AuthUser; 2. support cookie forwards for rest api plugin
1 parent 0550195 commit 9a55cc3

File tree

23 files changed

+135
-57
lines changed

23 files changed

+135
-57
lines changed

server/api-service/build-ee.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
3+
# Remove previous dist directory
4+
rm -rf dist/
5+
6+
# Build the code. $@ accepts all the parameters from the input command line and uses it in the maven build command
7+
mvn clean package install "$@" -DskipTests -f ./pom-ee.xml -P selfhost-openblocks
8+
9+
if [ $? -eq 0 ]
10+
then
11+
echo "mvn Successful"
12+
else
13+
echo "mvn Failed"
14+
exit 1
15+
fi

server/api-service/build-majiang.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
3+
# Remove previous dist directory
4+
rm -rf dist/
5+
6+
# Build the code. $@ accepts all the parameters from the input command line and uses it in the maven build command
7+
mvn clean package install "$@" -DskipTests -f ./pom-ee.xml -P majiang
8+
9+
if [ $? -eq 0 ]
10+
then
11+
echo "mvn Successful"
12+
else
13+
echo "mvn Failed"
14+
exit 1
15+
fi
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
@Builder
2222
@NoArgsConstructor
2323
@AllArgsConstructor
24-
public class AuthenticationUser {
24+
public class AuthUser {
2525

2626
private String uid;
2727
private String username;

server/api-service/openblocks-domain/src/main/java/com/openblocks/domain/user/service/UserService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import org.springframework.http.codec.multipart.Part;
77
import org.springframework.web.server.ServerWebExchange;
88

9-
import com.openblocks.domain.user.model.AuthenticationUser;
9+
import com.openblocks.domain.user.model.AuthUser;
1010
import com.openblocks.domain.user.model.Connection;
1111
import com.openblocks.domain.user.model.User;
1212
import com.openblocks.domain.user.model.UserDetail;
@@ -33,9 +33,9 @@ public interface UserService {
3333

3434
Mono<Boolean> bindEmail(User user, String email);
3535

36-
Mono<User> findByAuthUser(AuthenticationUser authenticationUser);
36+
Mono<User> findByAuthUser(AuthUser authUser);
3737

38-
Mono<User> createNewUserByAuthUser(AuthenticationUser authenticationUser);
38+
Mono<User> createNewUserByAuthUser(AuthUser authUser);
3939

4040
Mono<Void> getUserAvatar(ServerWebExchange exchange, String userId);
4141

server/api-service/openblocks-domain/src/main/java/com/openblocks/domain/user/service/UserServiceImpl.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
import com.openblocks.domain.group.service.GroupService;
4040
import com.openblocks.domain.organization.model.OrgMember;
4141
import com.openblocks.domain.organization.service.OrgMemberService;
42-
import com.openblocks.domain.user.model.AuthenticationUser;
42+
import com.openblocks.domain.user.model.AuthUser;
4343
import com.openblocks.domain.user.model.Connection;
4444
import com.openblocks.domain.user.model.User;
4545
import com.openblocks.domain.user.model.User.TransformedUserInfo;
@@ -155,12 +155,12 @@ public Mono<User> update(String id, User updatedUser) {
155155
}
156156

157157
@Override
158-
public Mono<User> findByAuthUser(AuthenticationUser authenticationUser) {
159-
return findBySourceAndId(authenticationUser.getSource(), authenticationUser.getUid());
158+
public Mono<User> findByAuthUser(AuthUser authUser) {
159+
return findBySourceAndId(authUser.getSource(), authUser.getUid());
160160
}
161161

162162
@Override
163-
public Mono<User> createNewUserByAuthUser(AuthenticationUser authUser) {
163+
public Mono<User> createNewUserByAuthUser(AuthUser authUser) {
164164
User newUser = new User();
165165
newUser.setName(authUser.getUsername());
166166
newUser.setState(UserState.ACTIVATED);

server/api-service/openblocks-plugins/restApiPlugin/src/main/java/com/openblocks/plugin/restapi/RestApiExecutor.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
import javax.annotation.Nullable;
6262

6363
import org.apache.commons.collections4.CollectionUtils;
64+
import org.apache.commons.lang3.ObjectUtils;
6465
import org.apache.commons.lang3.StringUtils;
6566
import org.apache.commons.lang3.tuple.Pair;
6667
import org.bson.internal.Base64;
@@ -88,6 +89,7 @@
8889
import com.openblocks.plugin.restapi.model.QueryBody;
8990
import com.openblocks.plugin.restapi.model.RestApiQueryConfig;
9091
import com.openblocks.plugin.restapi.model.RestApiQueryExecutionContext;
92+
import com.openblocks.sdk.config.CommonConfig;
9193
import com.openblocks.sdk.exception.PluginException;
9294
import com.openblocks.sdk.models.Property;
9395
import com.openblocks.sdk.models.QueryExecutionResult;
@@ -114,13 +116,18 @@ public class RestApiExecutor implements QueryExecutor<RestApiDatasourceConfig, O
114116
private static final String DEFAULT_REST_ERROR_CODE = "REST_API_EXECUTION_ERROR";
115117
private static final int MAX_REDIRECTS = 7;
116118
private final DataUtils dataUtils = DataUtils.getInstance();
119+
private final CommonConfig commonConfig;
117120

118121
// Set an unlimited buffer size, because query payload limit will be handled in webFilter
119122
private final ExchangeStrategies exchangeStrategies = ExchangeStrategies
120123
.builder()
121124
.codecs(configurer -> configurer.defaultCodecs().maxInMemorySize(-1))
122125
.build();
123126

127+
public RestApiExecutor(CommonConfig commonConfig) {
128+
this.commonConfig = commonConfig;
129+
}
130+
124131
@Override
125132
public RestApiQueryExecutionContext buildQueryExecutionContext(RestApiDatasourceConfig datasourceConfig,
126133
Map<String, Object> queryConfigMap,
@@ -348,14 +355,19 @@ private Consumer<MultiValueMap<String, String>> injectCookies(RestApiQueryExecut
348355
}
349356

350357
if (request.isForwardAllCookies()) {
351-
requestCookies.forEach(
352-
(cookieName, httpCookies) -> currentCookies.addAll(cookieName, collectList(httpCookies, HttpCookie::getValue)));
358+
requestCookies.forEach((cookieName, httpCookies) -> {
359+
if (StringUtils.equals(cookieName, commonConfig.getCookieName())) {
360+
return;
361+
}
362+
currentCookies.addAll(cookieName, collectList(httpCookies, HttpCookie::getValue));
363+
});
353364
return;
354365
}
355366

356367
requestCookies.entrySet()
357368
.stream()
358369
.filter(it -> forwardCookies.contains(it.getKey()))
370+
.filter(it -> ObjectUtils.notEqual(it.getKey(), commonConfig.getCookieName()))
359371
.forEach(entry -> {
360372
String cookieName = entry.getKey();
361373
List<HttpCookie> httpCookies = entry.getValue();

server/api-service/openblocks-plugins/restApiPlugin/src/test/java/com/openblocks/plugin/restapi/RestApiEngineTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import com.fasterxml.jackson.databind.node.TextNode;
2121
import com.google.common.collect.ImmutableMap;
2222
import com.openblocks.plugin.restapi.model.RestApiQueryExecutionContext;
23+
import com.openblocks.sdk.config.CommonConfig;
2324
import com.openblocks.sdk.models.Property;
2425
import com.openblocks.sdk.models.QueryExecutionResult;
2526
import com.openblocks.sdk.plugin.common.RestApiUriBuilder;
@@ -33,7 +34,7 @@
3334

3435
public class RestApiEngineTest {
3536

36-
private final RestApiExecutor executor = new RestApiExecutor();
37+
private final RestApiExecutor executor = new RestApiExecutor(new CommonConfig());
3738
private static final RestApiConnector connector = new RestApiConnector();
3839

3940
private final QueryVisitorContext queryVisitorContext = new QueryVisitorContext("userId1",

server/api-service/openblocks-sdk/pom.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,5 +159,9 @@
159159
<groupId>org.apache.httpcomponents</groupId>
160160
<artifactId>httpclient</artifactId>
161161
</dependency>
162+
<dependency>
163+
<groupId>org.springframework.boot</groupId>
164+
<artifactId>spring-boot-autoconfigure</artifactId>
165+
</dependency>
162166
</dependencies>
163167
</project>

server/api-service/openblocks-sdk/src/main/java/com/openblocks/sdk/auth/AbstractAuthConfig.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ public void setSource(String source) {
4848
this.source = source;
4949
}
5050

51+
/**
52+
* @see com.openblocks.sdk.auth.constants.AuthTypeConstants
53+
*/
5154
public abstract String getAuthType();
5255

5356
public final boolean isEnable() {

server/api-service/openblocks-sdk/src/main/java/com/openblocks/sdk/exception/BizError.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ public enum BizError {
9898
LOGIN_EXPIRED(401, 5616),
9999
DISABLE_AUTH_CONFIG_FORBIDDEN(403, 5617),
100100
USER_NOT_EXIST(400, 5618),
101+
JWT_NOT_FIND(400, 5619),
101102

102103

103104
// asset related, code range 5700 - 5799

0 commit comments

Comments
 (0)