Skip to content

Commit ccc85ab

Browse files
feat: support masking and get portal login access token (#14)
1 parent 52d271b commit ccc85ab

File tree

37 files changed

+1092
-213
lines changed

37 files changed

+1092
-213
lines changed

build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ dependencies {
5252
testImplementation 'org.springframework.boot:spring-boot-test:2.7.4'
5353
testImplementation 'org.springframework.boot:spring-boot-test-autoconfigure:2.7.4'
5454
testImplementation 'org.hamcrest:hamcrest-all:1.3'
55+
testImplementation(group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.7.4') {
56+
exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
57+
}
5558

5659
testImplementation 'com.google.guava:guava:31.1-jre'
5760
}

docs/micronaut.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -184,23 +184,23 @@ Below are some examples on how to generate access tokens:
184184

185185
```java
186186
@Get("/embed_access_token")
187-
public String getSpeakeasyEmbedAccessToken(@RequestAttribute(SpeakeasyMiddlewareController.Key) SpeakeasyMiddlewareController ctrl){
187+
public String getSpeakeasyEmbedAccessToken(@RequestAttribute(SpeakeasyMiddlewareController.Key) SpeakeasyMiddlewareController controller){
188188
String customerId=null;
189189

190190
// populate your customerId
191191

192192
// Restrict data by customer id
193-
SpeakeasyEmbedAccessTokenRequestBuilder requestBuilder = new SpeakeasyEmbedAccessTokenRequestBuilder();
194-
requestBuilder.withCustomerFilter(customerId);
193+
SpeakeasyAccessTokenFilterBuilder filterBuilder = new SpeakeasyAccessTokenFilterBuilder();
194+
filterBuilder.withCustomerFilter(customerId);
195195

196196
// Restrict data by time (last 24 hours)
197197
Instant startTime=Instant.now().minusSeconds(60*60*24);
198-
requestBuilder.withTimeFilter(startTime,SpeakeasyEmbedAccessTokenRequestFilterOperator.GreaterThan);
198+
filterBuilder.withTimeFilter(startTime,SpeakeasyAccessTokenFilterOperator.GreaterThan);
199199

200-
String embedAccessToken=ctrl.getEmbedAccessToken(requestBuilder.build());
200+
String embedAccessToken=controller.getEmbedAccessToken(filterBuilder.build());
201201

202202
// build response
203-
}
203+
}
204204
```
205205

206206
## Setting up for Tests

docs/springboot.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,14 +162,14 @@ public String getSpeakeasyEmbedAccessToken(@RequestAttribute(SpeakeasyMiddleware
162162
// populate your customerId
163163

164164
// Restrict data by customer id
165-
SpeakeasyEmbedAccessTokenRequestBuilder requestBuilder = new SpeakeasyEmbedAccessTokenRequestBuilder();
166-
requestBuilder.withCustomerFilter(customerId);
165+
SpeakeasyAccessTokenFilterBuilder filterBuilder = new SpeakeasyAccessTokenFilterBuilder();
166+
filterBuilder.withCustomerFilter(customerId);
167167

168168
// Restrict data by time (last 24 hours)
169169
Instant startTime=Instant.now().minusSeconds(60*60*24);
170-
requestBuilder.withTimeFilter(startTime,SpeakeasyEmbedAccessTokenRequestFilterOperator.GreaterThan);
170+
filterBuilder.withTimeFilter(startTime,SpeakeasyAccessTokenFilterOperator.GreaterThan);
171171

172-
String embedAccessToken=controller.getEmbedAccessToken(requestBuilder.build());
172+
String embedAccessToken=controller.getEmbedAccessToken(filterBuilder.build());
173173

174174
// build response
175175
}

lib/speakeasy-schemas.jar

8.48 KB
Binary file not shown.

src/main/java/dev/speakeasyapi/micronaut/implementation/SpeakeasyCapture.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,10 @@ public void run() {
6464
new SpeakeasyHarBuilder(this.logger)
6565
.withStartTime(context.getStartTime())
6666
.withEndTime(endTime)
67-
.withComment(String.format("request capture for %s", this.request.getRequest().uri()))
6867
.withHostName(uriComponents.getHost())
6968
.withOutputStream(outputStream)
7069
.withPort(uriComponents.getPort())
70+
.withMasking(controller.getMasking())
7171
.withRequest(this.request)
7272
.withResponse(this.response, this.request.getProtocol())
7373
.build();
@@ -78,7 +78,8 @@ public void run() {
7878

7979
String harString = outputStream.toString();
8080
try {
81-
context.getClient().ingestGrpc(harString, controller.getPathHint(), controller.getCustomerID());
81+
context.getClient().ingestGrpc(harString, controller.getPathHint(), controller.getCustomerID(),
82+
controller.getMasking());
8283
} catch (Exception e) {
8384
logger.debug("speakeasy-sdk: Failed to ingest request:", e);
8485
}

0 commit comments

Comments
 (0)