ReuseSessionBuilder.java

1
package fr.sii.ogham.sms.builder.cloudhopper;
2
3
import com.cloudhopper.smpp.pdu.EnquireLink;
4
5
import fr.sii.ogham.core.builder.Builder;
6
import fr.sii.ogham.core.builder.configuration.ConfigurationValueBuilder;
7
import fr.sii.ogham.core.builder.configuration.ConfigurationValueBuilderHelper;
8
import fr.sii.ogham.core.builder.configurer.Configurer;
9
import fr.sii.ogham.core.builder.context.BuildContext;
10
import fr.sii.ogham.core.fluent.AbstractParent;
11
import fr.sii.ogham.sms.sender.impl.cloudhopper.ReuseSessionOptions;
12
13
/**
14
 * Builder to configure how reuse session management should behave.
15
 * 
16
 * <p>
17
 * When sending the first message, a new session is created. Later, when sending
18
 * the next message, if the session is still alive, this session is reused. As
19
 * the connection is not actively maintained, the session may be killed by the
20
 * server. Therefore to check if the session is still alive, an
21
 * {@link EnquireLink} request is sent. If a response is received from the
22
 * server, then the session is still alive and the message can be sent using the
23
 * same session. If a failure response or no response is received after some
24
 * time from the server, then a new session must be created.
25
 * 
26
 * <p>
27
 * To check if the session is still alive, the {@link EnquireLink} request is
28
 * sent just before sending the real message. In order to prevent sending an
29
 * {@link EnquireLink} request before <strong>every</strong> message, the date
30
 * of the last sent message or {@link EnquireLink} is kept. This date is
31
 * compared to a delay to ensure that no {@link EnquireLink} is sent during this
32
 * delay.
33
 * 
34
 * <p>
35
 * This builder let you configure:
36
 * <ul>
37
 * <li>Enable/disable reuse session management</li>
38
 * <li>The maximum time to wait for a response from the server for
39
 * {@link EnquireLink} request</li>
40
 * <li>The time to wait before sending a new {@link EnquireLink} request
41
 * again</li>
42
 * </ul>
43
 * 
44
 * @author Aurélien Baudet
45
 *
46
 */
47
public class ReuseSessionBuilder extends AbstractParent<SessionBuilder> implements Builder<ReuseSessionOptions> {
48
	private final ConfigurationValueBuilderHelper<ReuseSessionBuilder, Boolean> enableValueBuilder;
49
	private final ConfigurationValueBuilderHelper<ReuseSessionBuilder, Long> lastInteractionExpirationDelayValueBuilder;
50
	private final ConfigurationValueBuilderHelper<ReuseSessionBuilder, Long> enquireLinkTimeoutValueBuilder;
51
52
	public ReuseSessionBuilder(SessionBuilder parent, BuildContext buildContext) {
53
		super(parent);
54
		this.enableValueBuilder = buildContext.newConfigurationValueBuilder(this, Boolean.class);
55
		this.lastInteractionExpirationDelayValueBuilder = buildContext.newConfigurationValueBuilder(this, Long.class);
56
		this.enquireLinkTimeoutValueBuilder = buildContext.newConfigurationValueBuilder(this, Long.class);
57
	}
58
59
	/**
60
	 * Enable or disable the reuse the same session (if possible) for sending
61
	 * messages.
62
	 * 
63
	 * <p>
64
	 * The value set using this method takes precedence over any property and
65
	 * default value configured using {@link #enable()}.
66
	 * 
67
	 * <pre>
68
	 * .enable(true)
69
	 * .enable()
70
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
71
	 *   .defaultValue(false)
72
	 * </pre>
73
	 * 
74
	 * <pre>
75
	 * .enable(true)
76
	 * .enable()
77
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
78
	 *   .defaultValue(false)
79
	 * </pre>
80
	 * 
81
	 * In both cases, {@code enable(true)} is used.
82
	 * 
83
	 * <p>
84
	 * If this method is called several times, only the last value is used.
85
	 * 
86
	 * <p>
87
	 * If {@code null} value is set, it is like not setting a value at all. The
88
	 * property/default value configuration is applied.
89
	 * 
90
	 * @param enable
91
	 *            enable reuse of same session
92
	 * @return this instance for fluent chaining
93
	 */
94
	public ReuseSessionBuilder enable(Boolean enable) {
95 2 1. enable : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE
2. enable : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED
		enableValueBuilder.setValue(enable);
96 2 1. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → NO_COVERAGE
2. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
		return this;
97
	}
98
99
	/**
100
	 * Enable or disable the reuse the same session (if possible) for sending
101
	 * messages.
102
	 * 
103
	 * <p>
104
	 * This method is mainly used by {@link Configurer}s to register some
105
	 * property keys and/or a default value. The aim is to let developer be able
106
	 * to externalize its configuration (using system properties, configuration
107
	 * file or anything else). If the developer doesn't configure any value for
108
	 * the registered properties, the default value is used (if set).
109
	 * 
110
	 * <pre>
111
	 * .enable()
112
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
113
	 *   .defaultValue(false)
114
	 * </pre>
115
	 * 
116
	 * <p>
117
	 * Non-null value set using {@link #enable(Boolean)} takes precedence over
118
	 * property values and default value.
119
	 * 
120
	 * <pre>
121
	 * .enable(true)
122
	 * .enable()
123
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
124
	 *   .defaultValue(false)
125
	 * </pre>
126
	 * 
127
	 * The value {@code true} is used regardless of the value of the properties
128
	 * and default value.
129
	 * 
130
	 * <p>
131
	 * See {@link ConfigurationValueBuilder} for more information.
132
	 * 
133
	 * 
134
	 * @return the builder to configure property keys/default value
135
	 */
136
	public ConfigurationValueBuilder<ReuseSessionBuilder, Boolean> enable() {
137 5 1. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
2. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
3. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
4. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
5. enable : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED
		return enableValueBuilder;
138
	}
139
140
	/**
141
	 * To check if the session is still alive, an {@link EnquireLink} request is
142
	 * sent. This request may fail since the session may be killed by the
143
	 * server. The timeout ensures that the client doesn't wait too long for a
144
	 * response that may never come.
145
	 * 
146
	 * The maximum amount of time (in milliseconds) to wait for receiving a
147
	 * response from the server to an {@link EnquireLink} request.
148
	 * 
149
	 * <p>
150
	 * The value set using this method takes precedence over any property and
151
	 * default value configured using {@link #responseTimeout()}.
152
	 * 
153
	 * <pre>
154
	 * .responseTimeout(10000L)
155
	 * .responseTimeout()
156
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
157
	 *   .defaultValue(5000L)
158
	 * </pre>
159
	 * 
160
	 * <pre>
161
	 * .responseTimeout(10000L)
162
	 * .responseTimeout()
163
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
164
	 *   .defaultValue(5000L)
165
	 * </pre>
166
	 * 
167
	 * In both cases, {@code responseTimeout(10000L)} is used.
168
	 * 
169
	 * <p>
170
	 * If this method is called several times, only the last value is used.
171
	 * 
172
	 * <p>
173
	 * If {@code null} value is set, it is like not setting a value at all. The
174
	 * property/default value configuration is applied.
175
	 * 
176
	 * @param timeout
177
	 *            the maximum amount of time (in milliseconds) to wait for the
178
	 *            response
179
	 * @return this instance for fluent chaining
180
	 */
181
	public ReuseSessionBuilder responseTimeout(Long timeout) {
182 2 1. responseTimeout : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE
2. responseTimeout : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED
		enquireLinkTimeoutValueBuilder.setValue(timeout);
183 2 1. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → NO_COVERAGE
2. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
		return this;
184
	}
185
186
	/**
187
	 * To check if the session is still alive, an {@link EnquireLink} request is
188
	 * sent. This request may fail since the session may be killed by the
189
	 * server. The timeout ensures that the client doesn't wait too long for a
190
	 * response that may never come.
191
	 * 
192
	 * The maximum amount of time (in milliseconds) to wait for receiving a
193
	 * response from the server to an {@link EnquireLink} request.
194
	 * 
195
	 * <p>
196
	 * This method is mainly used by {@link Configurer}s to register some
197
	 * property keys and/or a default value. The aim is to let developer be able
198
	 * to externalize its configuration (using system properties, configuration
199
	 * file or anything else). If the developer doesn't configure any value for
200
	 * the registered properties, the default value is used (if set).
201
	 * 
202
	 * <pre>
203
	 * .responseTimeout()
204
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
205
	 *   .defaultValue(5000L)
206
	 * </pre>
207
	 * 
208
	 * <p>
209
	 * Non-null value set using {@link #responseTimeout(Long)} takes precedence
210
	 * over property values and default value.
211
	 * 
212
	 * <pre>
213
	 * .responseTimeout(10000L)
214
	 * .responseTimeout()
215
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
216
	 *   .defaultValue(5000L)
217
	 * </pre>
218
	 * 
219
	 * The value {@code 10000L} is used regardless of the value of the
220
	 * properties and default value.
221
	 * 
222
	 * <p>
223
	 * See {@link ConfigurationValueBuilder} for more information.
224
	 * 
225
	 * 
226
	 * @return the builder to configure property keys/default value
227
	 */
228
	public ConfigurationValueBuilder<ReuseSessionBuilder, Long> responseTimeout() {
229 5 1. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
2. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
3. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
4. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
5. responseTimeout : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED
		return enquireLinkTimeoutValueBuilder;
230
	}
231
232
	/**
233
	 * To check if the session is still alive, an {@link EnquireLink} request is
234
	 * sent. The request is sent just before sending the message.
235
	 * 
236
	 * This is the time (in milliseconds) to wait before considering last
237
	 * {@link EnquireLink} response as expired (need to send a new
238
	 * {@link EnquireLink} request to check if session is still alive).
239
	 * 
240
	 * <p>
241
	 * This is needed to prevent sending {@link EnquireLink} request every time
242
	 * a message has to be sent. Instead it considers that the time elapsed
243
	 * between now and the last {@link EnquireLink} response (or the last sent
244
	 * message) is not enough so a new {@link EnquireLink} is not necessary to
245
	 * check if session is still alive.
246
	 *
247
	 * <p>
248
	 * Set to 0 to always check session before sending message.
249
	 * 
250
	 * <p>
251
	 * The value set using this method takes precedence over any property and
252
	 * default value configured using {@link #lastInteractionExpiration()}.
253
	 * 
254
	 * <pre>
255
	 * .delay(60000L)
256
	 * .delay()
257
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
258
	 *   .defaultValue(60000L)
259
	 * </pre>
260
	 * 
261
	 * <pre>
262
	 * .delay(60000L)
263
	 * .delay()
264
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
265
	 *   .defaultValue(60000L)
266
	 * </pre>
267
	 * 
268
	 * In both cases, {@code delay(60000L)} is used.
269
	 * 
270
	 * <p>
271
	 * If this method is called several times, only the last value is used.
272
	 * 
273
	 * <p>
274
	 * If {@code null} value is set, it is like not setting a value at all. The
275
	 * property/default value configuration is applied.
276
	 * 
277
	 * @param delay
278
	 *            The time to wait (in milliseconds) to wait before sending a
279
	 *            new {@link EnquireLink} request to check if session is still
280
	 *            alive.
281
	 * @return this instance for fluent chaining
282
	 */
283
	public ReuseSessionBuilder lastInteractionExpiration(Long delay) {
284 2 1. lastInteractionExpiration : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE
2. lastInteractionExpiration : removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED
		lastInteractionExpirationDelayValueBuilder.setValue(delay);
285 2 1. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → NO_COVERAGE
2. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
		return this;
286
	}
287
288
	/**
289
	 * To check if the session is still alive, an {@link EnquireLink} request is
290
	 * sent. The request is sent just before sending the message.
291
	 * 
292
	 * This is the time (in milliseconds) to wait before considering last
293
	 * {@link EnquireLink} response as expired (need to send a new
294
	 * {@link EnquireLink} request to check if session is still alive).
295
	 * 
296
	 * <p>
297
	 * This is needed to prevent sending {@link EnquireLink} request every time
298
	 * a message has to be sent. Instead it considers that the time elapsed
299
	 * between now and the last {@link EnquireLink} response (or the last sent
300
	 * message) is not enough so a new {@link EnquireLink} is not necessary to
301
	 * check if session is still alive.
302
	 *
303
	 * <p>
304
	 * Set to 0 to always check session before sending message.
305
	 * 
306
	 * <p>
307
	 * This method is mainly used by {@link Configurer}s to register some
308
	 * property keys and/or a default value. The aim is to let developer be able
309
	 * to externalize its configuration (using system properties, configuration
310
	 * file or anything else). If the developer doesn't configure any value for
311
	 * the registered properties, the default value is used (if set).
312
	 * 
313
	 * <pre>
314
	 * .delay()
315
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
316
	 *   .defaultValue(60000L)
317
	 * </pre>
318
	 * 
319
	 * <p>
320
	 * Non-null value set using {@link #lastInteractionExpiration(Long)} takes precedence over
321
	 * property values and default value.
322
	 * 
323
	 * <pre>
324
	 * .delay(60000L)
325
	 * .delay()
326
	 *   .properties("${custom.property.high-priority}", "${custom.property.low-priority}")
327
	 *   .defaultValue(60000L)
328
	 * </pre>
329
	 * 
330
	 * The value {@code 60000L} is used regardless of the value of the
331
	 * properties and default value.
332
	 * 
333
	 * <p>
334
	 * See {@link ConfigurationValueBuilder} for more information.
335
	 * 
336
	 * 
337
	 * @return the builder to configure property keys/default value
338
	 */
339
	public ConfigurationValueBuilder<ReuseSessionBuilder, Long> lastInteractionExpiration() {
340 5 1. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
2. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
3. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
4. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
5. lastInteractionExpiration : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED
		return lastInteractionExpirationDelayValueBuilder;
341
	}
342
343
	@Override
344
	public ReuseSessionOptions build() {
345
		ReuseSessionOptions reuseSessionOptions = new ReuseSessionOptions();
346 2 1. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnable → SURVIVED
2. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnable → KILLED
		reuseSessionOptions.setEnable(enableValueBuilder.getValue(false));
347 2 1. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setLastInteractionExpirationDelay → SURVIVED
2. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setLastInteractionExpirationDelay → KILLED
		reuseSessionOptions.setLastInteractionExpirationDelay(lastInteractionExpirationDelayValueBuilder.getValue(0L));
348 3 1. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → SURVIVED
2. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → TIMED_OUT
3. build : removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → KILLED
		reuseSessionOptions.setEnquireLinkTimeout(enquireLinkTimeoutValueBuilder.getValue(0L));
349 2 1. build : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::build → SURVIVED
2. build : replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::build → KILLED
		return reuseSessionOptions;
350
	}
351
}

Mutations

95

1.1
Location : enable
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED

2.2
Location : enable
Killed by : none
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE

96

1.1
Location : enable
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

2.2
Location : enable
Killed by : none
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → NO_COVERAGE

137

1.1
Location : enable
Killed by : oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests.oghamPropertiesWithSpringPropsShouldUseOghamPropertiesPrecedence(oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

2.2
Location : enable
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

3.3
Location : enable
Killed by : oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests.oghamAloneShouldUseOghamProperties(oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

4.4
Location : enable
Killed by : oghamall.it.html.translator.JsoupInlineCssTranslatorTest.notHtml(oghamall.it.html.translator.JsoupInlineCssTranslatorTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

5.5
Location : enable
Killed by : oghamsmsglobal.it.SmsglobalServiceProviderConfigurerSpec
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::enable → KILLED

182

1.1
Location : responseTimeout
Killed by : none
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE

2.2
Location : responseTimeout
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButSendFailsDueToSessionClosedByServer(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED

183

1.1
Location : responseTimeout
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

2.2
Location : responseTimeout
Killed by : none
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → NO_COVERAGE

229

1.1
Location : responseTimeout
Killed by : oghamsmsglobal.it.SmsglobalServiceProviderConfigurerSpec
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

2.2
Location : responseTimeout
Killed by : oghamall.it.html.translator.JsoupInlineCssTranslatorTest.notHtml(oghamall.it.html.translator.JsoupInlineCssTranslatorTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

3.3
Location : responseTimeout
Killed by : oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests.oghamAloneShouldUseOghamProperties(oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

4.4
Location : responseTimeout
Killed by : oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests.oghamPropertiesWithSpringPropsShouldUseOghamPropertiesPrecedence(oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

5.5
Location : responseTimeout
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::responseTimeout → KILLED

284

1.1
Location : lastInteractionExpiration
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → KILLED

2.2
Location : lastInteractionExpiration
Killed by : none
removed call to fr/sii/ogham/core/builder/configuration/ConfigurationValueBuilderHelper::setValue → NO_COVERAGE

285

1.1
Location : lastInteractionExpiration
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

2.2
Location : lastInteractionExpiration
Killed by : none
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → NO_COVERAGE

340

1.1
Location : lastInteractionExpiration
Killed by : oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests.oghamPropertiesWithSpringPropsShouldUseOghamPropertiesPrecedence(oghamspringbootv2autoconfigure.it.OghamSpringBoot2JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

2.2
Location : lastInteractionExpiration
Killed by : oghamcloudhopper.it.AutoRetryExtensionTest.smsNotRetriedDueToCloudhopperError(oghamcloudhopper.it.AutoRetryExtensionTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

3.3
Location : lastInteractionExpiration
Killed by : oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests.oghamAloneShouldUseOghamProperties(oghamspringbootv1autoconfigure.it.OghamSpringBoot1JavaMailAutoConfigurationTests)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

4.4
Location : lastInteractionExpiration
Killed by : oghamall.it.html.translator.JsoupInlineCssTranslatorTest.notHtml(oghamall.it.html.translator.JsoupInlineCssTranslatorTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

5.5
Location : lastInteractionExpiration
Killed by : oghamsmsglobal.it.SmsglobalServiceProviderConfigurerSpec
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::lastInteractionExpiration → KILLED

346

1.1
Location : build
Killed by : none
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnable → SURVIVED

2.2
Location : build
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnable → KILLED

347

1.1
Location : build
Killed by : none
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setLastInteractionExpirationDelay → SURVIVED

2.2
Location : build
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setLastInteractionExpirationDelay → KILLED

348

1.1
Location : build
Killed by : none
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → TIMED_OUT

2.2
Location : build
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → KILLED

3.3
Location : build
Killed by : none
removed call to fr/sii/ogham/sms/sender/impl/cloudhopper/ReuseSessionOptions::setEnquireLinkTimeout → SURVIVED

349

1.1
Location : build
Killed by : oghamcloudhopper.it.ReuseSessionStrategyTest.reuseSessionButEnquireLinkTimeout(oghamcloudhopper.it.ReuseSessionStrategyTest)
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::build → KILLED

2.2
Location : build
Killed by : none
replaced return value with null for fr/sii/ogham/sms/builder/cloudhopper/ReuseSessionBuilder::build → SURVIVED

Active mutators

Tests examined


Report generated by PIT OGHAM