Skip to content

Commit fd511be

Browse files
committed
Removed configuration from DefaultEventQueue
1 parent c051856 commit fd511be

File tree

3 files changed

+13
-24
lines changed

3 files changed

+13
-24
lines changed

src/main/java/com/exceptionless/exceptionlessclient/configuration/ConfigurationManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ public ConfigurationManager(
136136
this.queue =
137137
queue == null
138138
? DefaultEventQueue.builder()
139-
.configuration(this.configuration)
139+
.submissionBatchSize(this.submissionBatchSize)
140140
.processingIntervalInSecs(processingIntervalInSecs)
141141
.storageProvider(this.storageProvider)
142142
.submissionClient(this.submissionClient)

src/main/java/com/exceptionless/exceptionlessclient/queue/DefaultEventQueue.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.exceptionless.exceptionlessclient.queue;
22

3-
import com.exceptionless.exceptionlessclient.configuration.Configuration;
3+
import com.exceptionless.exceptionlessclient.configuration.ValueProvider;
44
import com.exceptionless.exceptionlessclient.models.Event;
55
import com.exceptionless.exceptionlessclient.models.storage.StorageItem;
66
import com.exceptionless.exceptionlessclient.storage.StorageProviderIF;
@@ -27,7 +27,7 @@ public class DefaultEventQueue implements EventQueueIF {
2727
private static final Integer DEFAULT_SUSPENSION_DURATION_IN_MINS = 5;
2828

2929
private final StorageProviderIF storageProvider;
30-
private final Configuration configuration;
30+
private final ValueProvider<Integer> submissionBatchSize;
3131
private final SubmissionClientIF submissionClient;
3232
private LocalDateTime discardQueueItemsUntil;
3333
private LocalDateTime suspendProcessingUntil;
@@ -39,15 +39,15 @@ public class DefaultEventQueue implements EventQueueIF {
3939
@Builder
4040
public DefaultEventQueue(
4141
StorageProviderIF storageProvider,
42-
Configuration configuration,
42+
ValueProvider<Integer> submissionBatchSize,
4343
SubmissionClientIF submissionClient,
4444
Integer processingIntervalInSecs) {
4545
this.storageProvider = storageProvider;
46-
this.configuration = configuration;
46+
this.submissionBatchSize = submissionBatchSize;
4747
this.submissionClient = submissionClient;
4848
this.queueTimer = new Timer(QUEUE_TIMER_NAME);
4949
this.handlers = new ArrayList<>();
50-
this.currentSubmissionBatchSize = configuration.getSubmissionBatchSize();
50+
this.currentSubmissionBatchSize = submissionBatchSize.get();
5151
init(
5252
processingIntervalInSecs == null
5353
? DEFAULT_PROCESSING_INTERVAL_IN_SECS
@@ -133,8 +133,7 @@ public void process() {
133133

134134
List<Event> events =
135135
storedEvents.stream().map(StorageItem::getValue).collect(Collectors.toList());
136-
log.info(
137-
String.format("Sending %s events to %s", events.size(), configuration.getServerUrl()));
136+
log.info(String.format("Sending %s events", events.size()));
138137
SubmissionResponse response = submissionClient.postEvents(events);
139138
if (response.hasException()) {
140139
log.error("Error submitting events from queue", response.getException());
@@ -216,7 +215,7 @@ private void processSubmissionResponse(
216215
}
217216

218217
private void setBatchSizeToConfigured() {
219-
currentSubmissionBatchSize = configuration.getSubmissionBatchSize();
218+
currentSubmissionBatchSize = submissionBatchSize.get();
220219
}
221220

222221
private void removeEvents(List<StorageItem<Event>> storedEvents) {

src/test/java/com/exceptionless/exceptionlessclient/queue/DefaultEventQueueTest.java

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.exceptionless.exceptionlessclient.queue;
22

3-
import com.exceptionless.exceptionlessclient.TestFixtures;
4-
import com.exceptionless.exceptionlessclient.configuration.Configuration;
3+
import com.exceptionless.exceptionlessclient.configuration.ValueProvider;
54
import com.exceptionless.exceptionlessclient.models.Event;
65
import com.exceptionless.exceptionlessclient.storage.InMemoryStorage;
76
import com.exceptionless.exceptionlessclient.storage.InMemoryStorageProvider;
@@ -33,9 +32,6 @@ public class DefaultEventQueueTest {
3332

3433
@BeforeEach
3534
public void setup() {
36-
Configuration configuration =
37-
TestFixtures.aDefaultConfiguration().submissionBatchSize(1).build();
38-
3935
storage = InMemoryStorage.<Event>builder().build();
4036
doReturn(storage).when(storageProvider).getQueue();
4137

@@ -44,7 +40,7 @@ public void setup() {
4440
DefaultEventQueue.builder()
4541
.storageProvider(storageProvider)
4642
.submissionClient(submissionClient)
47-
.configuration(configuration)
43+
.submissionBatchSize(ValueProvider.of(1))
4844
.processingIntervalInSecs(
4945
3600) // We don't want the automatic timer to run in between tests by default
5046
.build();
@@ -260,13 +256,11 @@ public void itShouldSuspendProcessingByDefault() {
260256

261257
@Test
262258
public void itShouldReduceSubmissionBatchSizeIfRequestEntitiesAreTooLarge() {
263-
Configuration configuration =
264-
TestFixtures.aDefaultConfiguration().submissionBatchSize(3).build();
265259
queue =
266260
DefaultEventQueue.builder()
267261
.storageProvider(storageProvider)
268262
.submissionClient(submissionClient)
269-
.configuration(configuration)
263+
.submissionBatchSize(ValueProvider.of(3))
270264
.processingIntervalInSecs(
271265
3600) // We don't want the automatic timer to run in between tests by default
272266
.build();
@@ -311,13 +305,11 @@ public void itShouldDiscardEventsIfItCantReduceSubmissionSizeAndRequestEntitiesA
311305

312306
@Test
313307
public void itShouldResetSubmissionBatchSizeOnNextSuccessfulResponse() {
314-
Configuration configuration =
315-
TestFixtures.aDefaultConfiguration().submissionBatchSize(3).build();
316308
queue =
317309
DefaultEventQueue.builder()
318310
.storageProvider(storageProvider)
319311
.submissionClient(submissionClient)
320-
.configuration(configuration)
312+
.submissionBatchSize(ValueProvider.of(3))
321313
.processingIntervalInSecs(
322314
3600) // We don't want the automatic timer to run in between tests by default
323315
.build();
@@ -350,13 +342,11 @@ public void itShouldProcessEventsUsingTimer() throws InterruptedException {
350342
SubmissionResponse.builder().body("test-message").code(200).build();
351343
doReturn(response).when(submissionClient).postEvents(List.of(event));
352344

353-
Configuration configuration =
354-
TestFixtures.aDefaultConfiguration().submissionBatchSize(1).build();
355345
queue =
356346
DefaultEventQueue.builder()
357347
.storageProvider(storageProvider)
358348
.submissionClient(submissionClient)
359-
.configuration(configuration)
349+
.submissionBatchSize(ValueProvider.of(1))
360350
.processingIntervalInSecs(1)
361351
.build();
362352
queue.onEventsPosted(testHandler);

0 commit comments

Comments
 (0)