Skip to content

Commit b2b76ab

Browse files
committed
[Ui] Add NoJettySessionCache boot params
1 parent c2b6e7f commit b2b76ab

File tree

3 files changed

+23
-4
lines changed

3 files changed

+23
-4
lines changed

vertigo-ui/src/main/java/io/vertigo/ui/boot/JettyBoot.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ public static void startServer(
7777
final var jettySessionStoreCollectionNameOpt = jettyBootParams.getJettySessionStoreCollectionName();
7878
if (jettySessionStoreCollectionNameOpt.isPresent()) {
7979
server.addBean(new KVSessionDataStoreFactory(jettySessionStoreCollectionNameOpt.get())); //we set kvStore sessionStore
80-
server.addBean(new NullSessionCacheFactory()); //we inactive sessionCache : to use SessionStore every times
80+
if (jettyBootParams.isNoJettySessionCache()) {
81+
server.addBean(new NullSessionCacheFactory()); //we inactive sessionCache : to use SessionStore every times
82+
}
8183
}
8284

83-
server.addBean(new NullSessionCacheFactory()); //we inactive sessionCache
84-
8585
// Create HTTP Config
8686
final var httpConfig = new HttpConfiguration();
8787
httpConfig.setSendServerVersion(false);

vertigo-ui/src/main/java/io/vertigo/ui/boot/JettyBootParams.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ public class JettyBootParams {
3636
private final Optional<String> contextPath;
3737
private final Class<? extends WebApplicationInitializer> webApplicationInitializerClass;
3838
private final Optional<String> jettySessionStoreCollectionName;
39+
private final boolean noJettySessionCache;
3940
private final boolean join;
4041

4142
JettyBootParams(
@@ -50,6 +51,7 @@ public class JettyBootParams {
5051
final String sslKeystoreAlias,
5152
final Optional<String> jettyNodeName,
5253
final Optional<String> jettySessionStoreCollectionName,
54+
final boolean noJettySessionCache,
5355
final boolean join) {
5456
Assertion.check()
5557
.isNotBlank(contextRoot)
@@ -60,7 +62,11 @@ public class JettyBootParams {
6062
() -> Assertion.check()
6163
.isNotBlank(keystoreUrl)
6264
.isNotBlank(keystorePassword)
63-
.isNotBlank(sslKeystoreAlias));
65+
.isNotBlank(sslKeystoreAlias))
66+
.when(
67+
noJettySessionCache,
68+
() -> Assertion.check()
69+
.isTrue(jettySessionStoreCollectionName.isPresent(), "When noJettySessionCache, jettySessionStoreCollectionName must be provided"));
6470
//---
6571
this.port = port;
6672
this.sslDisabled = sslDisabled;
@@ -73,6 +79,7 @@ public class JettyBootParams {
7379
this.contextPath = contextPath;
7480
this.webApplicationInitializerClass = webApplicationInitializerClass;
7581
this.jettySessionStoreCollectionName = jettySessionStoreCollectionName;
82+
this.noJettySessionCache = noJettySessionCache;
7683
this.join = join;
7784
}
7885

@@ -124,6 +131,10 @@ public Optional<String> getJettySessionStoreCollectionName() {
124131
return jettySessionStoreCollectionName;
125132
}
126133

134+
public boolean isNoJettySessionCache() {
135+
return noJettySessionCache;
136+
}
137+
127138
public boolean isJoin() {
128139
return join;
129140
}

vertigo-ui/src/main/java/io/vertigo/ui/boot/JettyBootParamsBuilder.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ public class JettyBootParamsBuilder implements Builder<JettyBootParams> {
4040
private String mySslKeystoreAlias;
4141
private String myJettyNodeName;
4242
private String myJettySessionStoreCollectionName;
43+
private boolean myNoJettySessionCache;
44+
//TODO parameter si cache null ou default (si on croit dans l'affinité de session ou non)
4345
private boolean myJoin = true;// true by default
4446

4547
public JettyBootParamsBuilder(final String contextRoot, final Class<? extends WebApplicationInitializer> webApplicationInitializerClass) {
@@ -87,6 +89,11 @@ public JettyBootParamsBuilder withJettySessionStoreCollectionName(final String j
8789
return this;
8890
}
8991

92+
public JettyBootParamsBuilder noJettySessionCache() {
93+
myNoJettySessionCache = true;
94+
return this;
95+
}
96+
9097
public JettyBootParamsBuilder noJoin() {
9198
myJoin = false;
9299
return this;
@@ -106,6 +113,7 @@ public JettyBootParams build() {
106113
mySslKeystoreAlias,
107114
Optional.ofNullable(myJettyNodeName),
108115
Optional.ofNullable(myJettySessionStoreCollectionName),
116+
myNoJettySessionCache,
109117
myJoin);
110118
}
111119

0 commit comments

Comments
 (0)