Skip to content

Commit 6719e1e

Browse files
committed
Rebased on main
1 parent 71c94fa commit 6719e1e

File tree

12 files changed

+41
-33
lines changed

12 files changed

+41
-33
lines changed

ui/src/main/java/com/studiomediatech/QueryPublisher.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.studiomediatech;
22

3+
import java.io.IOException;
34
import java.time.Duration;
45
import java.time.Instant;
56
import java.util.ArrayList;
@@ -16,22 +17,29 @@
1617
import java.util.function.ToLongFunction;
1718
import java.util.stream.Collectors;
1819

20+
import org.springframework.amqp.core.Message;
21+
import org.springframework.amqp.rabbit.annotation.RabbitListener;
1922
import org.springframework.context.event.EventListener;
2023
import org.springframework.util.StringUtils;
2124

25+
import com.fasterxml.jackson.databind.ObjectMapper;
2226
import com.studiomediatech.events.QueryRecordedEvent;
2327
import com.studiomediatech.queryresponse.QueryBuilder;
2428
import com.studiomediatech.queryresponse.ui.api.WebSocketApiHandlerPort;
29+
import com.studiomediatech.queryresponse.ui.app.QueryResponseUIApp;
2530
import com.studiomediatech.queryresponse.ui.app.adapter.RestApiAdapter;
2631
import com.studiomediatech.queryresponse.ui.messaging.Stat;
27-
import com.studiomediatech.queryresponse.util.Logging;
32+
import com.studiomediatech.queryresponse.ui.messaging.Stats;
33+
import com.studiomediatech.queryresponse.util.Loggable;
2834

2935
public class QueryPublisher implements Loggable, RestApiAdapter {
3036

3137
// This is a Fib!
3238
private static final int MAX_SIZE = 2584;
3339
private static final int SLIDING_WINDOW = 40;
3440

41+
private static final ObjectMapper MAPPER = new ObjectMapper();
42+
3543
static ToLongFunction<Stat> statToLong = s -> ((Number) s.value()).longValue();
3644

3745
private List<Stat> queries = new LinkedList<>();

ui/src/main/java/com/studiomediatech/queryresponse/ui/api/RestApiControllerPort.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,6 @@ public Map<String, Object> nodes() {
3636
return adapter.nodes();
3737
}
3838

39-
@GetMapping("/api/v1")
40-
public Map<String, Object> v1() {
41-
return Response.from(Map.of("version", "v1", "now", Instant.now())).withLinks("query-response",
42-
"/api/v1?q=query");
43-
}
44-
4539
@GetMapping(path = "/api/v1", params = "q")
4640
public Map<String, Object> query(String q, // NOSONAR
4741
@RequestParam(name = "timeout", required = false, defaultValue = "0") int timeout,
@@ -55,6 +49,12 @@ public Map<String, Object> query(String q, // NOSONAR
5549
return adapter.query(q, normalizedTimeout, normalizedLimit);
5650
}
5751

52+
@GetMapping(path = "/api/v1", params = "!q")
53+
public Map<String, Object> v1() {
54+
return Response.from(Map.of("version", "v1", "now", Instant.now())).withLinks("query-response",
55+
"/api/v1?q=query");
56+
}
57+
5858
protected interface Response {
5959
public static ResponseBuilder from(Map<String, Object> map) {
6060
return new ResponseBuilder(map);

ui/src/main/java/com/studiomediatech/queryresponse/ui/api/WebSocketApiHandlerPort.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,13 @@
1919
import com.fasterxml.jackson.core.JsonProcessingException;
2020
import com.fasterxml.jackson.databind.ObjectMapper;
2121
import com.studiomediatech.events.QueryRecordedEvent;
22-
import com.studiomediatech.queryresponse.stats.Stat;
23-
import com.studiomediatech.queryresponse.util.Loggable;
2422
import com.studiomediatech.queryresponse.ui.app.adapter.EventEmitterAdapter;
2523
import com.studiomediatech.queryresponse.ui.app.adapter.WebSocketApiAdapter;
2624
import com.studiomediatech.queryresponse.ui.messaging.Stat;
27-
import com.studiomediatech.queryresponse.util.Logging;
25+
import com.studiomediatech.queryresponse.util.Loggable;
2826

2927
@Component
30-
public class WebSocketApiHandlerPort extends TextWebSocketHandler implements WebSocketApiAdapter, Logging {
28+
public class WebSocketApiHandlerPort extends TextWebSocketHandler implements WebSocketApiAdapter, Loggable {
3129

3230
private static final int SEND_TIME_LIMIT = 6 * 1000;
3331
private static final int SEND_BUFFER_SIZE_LIMIT = 512 * 1024;

ui/src/main/java/com/studiomediatech/queryresponse/ui/app/QueryResponseUIApp.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
@SpringBootApplication
1515
public class QueryResponseUIApp {
1616

17+
public static final String QUERY_RESPONSE_STATS_QUEUE_BEAN = "queryResponseStatsBean";
18+
1719
public static void main(String[] args) {
1820
SpringApplication.run(QueryResponseUIApp.class);
1921
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package com.studiomediatech.queryresponse.ui.app.adapter;
22

33
import com.studiomediatech.queryresponse.ui.messaging.Stats;
4-
import com.studiomediatech.queryresponse.util.Logging;
4+
import com.studiomediatech.queryresponse.util.Loggable;
55

66
/**
77
* Declares the capabilities of the incoming side for statistics to aggregate.
88
*/
9-
public interface TelemetryHandlerAdapter extends Logging {
9+
public interface TelemetryHandlerAdapter extends Loggable {
1010

1111
static TelemetryHandlerAdapter empty() {
1212
return new TelemetryHandlerAdapter() {
@@ -15,6 +15,6 @@ static TelemetryHandlerAdapter empty() {
1515
}
1616

1717
default void handleConsumed(Stats stats) {
18-
log().warn("NOT YET HANDLING {}", stats);
18+
logger().warn("NOT YET HANDLING {}", stats);
1919
}
2020
}

ui/src/main/java/com/studiomediatech/queryresponse/ui/app/adapter/WebSocketApiAdapter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
import java.util.Collection;
44

55
import com.studiomediatech.queryresponse.ui.app.telemetry.Node;
6-
import com.studiomediatech.queryresponse.util.Logging;
6+
import com.studiomediatech.queryresponse.util.Loggable;
77

8-
public interface WebSocketApiAdapter extends Logging {
8+
public interface WebSocketApiAdapter extends Loggable {
99

1010
static WebSocketApiAdapter empty() {
1111
return new WebSocketApiAdapter() {
@@ -14,6 +14,6 @@ static WebSocketApiAdapter empty() {
1414
}
1515

1616
default void publishNodes(Collection<Node> nodes) {
17-
log().warn("NOT PUBLISHING NODES! {}", nodes);
17+
logger().warn("NOT PUBLISHING NODES! {}", nodes);
1818
}
1919
}

ui/src/main/java/com/studiomediatech/queryresponse/ui/app/telemetry/Node.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55

66
import org.springframework.util.Assert;
77

8-
import com.studiomediatech.queryresponse.util.Logging;
8+
import com.studiomediatech.queryresponse.util.Loggable;
99

10-
public class Node implements Logging {
10+
public class Node implements Loggable {
1111

1212
public static final Comparator<Node> SORT = Comparator.comparing(Node::getName).thenComparing(Node::getUUID);
1313

@@ -37,7 +37,7 @@ public Node update(Node other) {
3737

3838
Assert.isTrue(other.uuid.equals(this.uuid), "Must be same node.");
3939

40-
log().info("Updating {} with {}", this, other);
40+
logger().info("Updating {} with {}", this, other);
4141

4242
this.host = other.host;
4343
this.name = other.name;

ui/src/main/java/com/studiomediatech/queryresponse/ui/app/telemetry/TelemetryService.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
import java.util.Optional;
77
import java.util.UUID;
88

9-
import com.studiomediatech.queryresponse.ui.app.adapter.TelemetryHandlerAdapter;
109
import com.studiomediatech.queryresponse.ui.app.adapter.QueryPublisherAdapter;
1110
import com.studiomediatech.queryresponse.ui.app.adapter.RestApiAdapter;
11+
import com.studiomediatech.queryresponse.ui.app.adapter.TelemetryHandlerAdapter;
1212
import com.studiomediatech.queryresponse.ui.app.adapter.WebSocketApiAdapter;
1313
import com.studiomediatech.queryresponse.ui.messaging.Stat;
1414
import com.studiomediatech.queryresponse.ui.messaging.Stats;
15-
import com.studiomediatech.queryresponse.util.Logging;
15+
import com.studiomediatech.queryresponse.util.Loggable;
1616

17-
public class TelemetryService implements Logging, TelemetryHandlerAdapter, RestApiAdapter {
17+
public class TelemetryService implements Loggable, TelemetryHandlerAdapter, RestApiAdapter {
1818

1919
private final WebSocketApiAdapter webSocketApiAdapter;
2020
private final NodeRepository nodeRepository;
@@ -40,7 +40,7 @@ public Map<String, Object> nodes() {
4040
@Override
4141
public void handleConsumed(Stats stats) {
4242

43-
log().info("Consumed stats with {} elements", stats.elements().size());
43+
logger().info("Consumed stats with {} elements", stats.elements().size());
4444

4545
Collection<Node> nodes = parseToNodesCollection(stats);
4646
updateNodes(nodes);

ui/src/main/java/com/studiomediatech/queryresponse/ui/infra/adapter/TelemetryServiceAdapter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
import org.springframework.stereotype.Component;
55

66
import com.studiomediatech.queryresponse.ui.app.telemetry.TelemetryService;
7-
import com.studiomediatech.queryresponse.util.Logging;
7+
import com.studiomediatech.queryresponse.util.Loggable;
88

99
@Component
10-
public class TelemetryServiceAdapter implements Logging {
10+
public class TelemetryServiceAdapter implements Loggable {
1111

1212
private final TelemetryService service;
1313

@@ -17,7 +17,7 @@ public TelemetryServiceAdapter(TelemetryService service) {
1717

1818
@Scheduled(fixedDelayString = "PT3S")
1919
public void aFewSecondsHasPassed() {
20-
log().info("TIC TOC!");
20+
logger().info("TIC TOC!");
2121
service.publishNodes();
2222
}
2323

ui/src/main/java/com/studiomediatech/queryresponse/ui/messaging/QueryPublisherPort.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
import com.studiomediatech.events.QueryRecordedEvent;
1212
import com.studiomediatech.queryresponse.QueryBuilder;
1313
import com.studiomediatech.queryresponse.ui.app.adapter.QueryPublisherAdapter;
14-
import com.studiomediatech.queryresponse.util.Logging;
14+
import com.studiomediatech.queryresponse.util.Loggable;
1515

1616
@Component
17-
public class QueryPublisherPort implements Logging, QueryPublisherAdapter {
17+
public class QueryPublisherPort implements Loggable, QueryPublisherAdapter {
1818

1919
private static final int DEFAULT_QUERY_TIMEOUT = 1500;
2020

0 commit comments

Comments
 (0)