diff --git a/cloudfoundry-client/src/main/java/org/cloudfoundry/client/v2/events/_ListEventsRequest.java b/cloudfoundry-client/src/main/java/org/cloudfoundry/client/v2/events/_ListEventsRequest.java index 0d6ec0f9fa0..c08318b54c2 100644 --- a/cloudfoundry-client/src/main/java/org/cloudfoundry/client/v2/events/_ListEventsRequest.java +++ b/cloudfoundry-client/src/main/java/org/cloudfoundry/client/v2/events/_ListEventsRequest.java @@ -36,6 +36,20 @@ abstract class _ListEventsRequest extends PaginatedRequest { @Nullable abstract List getActees(); + /** + * The organization id + */ + @FilterParameter("organization_guid") + @Nullable + abstract List getOrganizationId(); + + /** + * The space id + */ + @FilterParameter("space_guid") + @Nullable + abstract List getSpaceId(); + /** * The timestamps */ diff --git a/integration-test/src/test/java/org/cloudfoundry/client/v2/EventsTest.java b/integration-test/src/test/java/org/cloudfoundry/client/v2/EventsTest.java index 93d0fcc6844..292e2ccff64 100644 --- a/integration-test/src/test/java/org/cloudfoundry/client/v2/EventsTest.java +++ b/integration-test/src/test/java/org/cloudfoundry/client/v2/EventsTest.java @@ -125,6 +125,42 @@ public void listFilterByType() { .verify(Duration.ofMinutes(5)); } + @Test + public void listFilterByOrganizationId(){ + getFirstEvent(this.cloudFoundryClient) + .flatMap(resource -> Mono.zip( + Mono.just(resource), + this.cloudFoundryClient.events() + .list(ListEventsRequest.builder() + .spaceId(ResourceUtils.getEntity(resource).getOrganizationId()) + .build()) + .flatMapMany(ResourceUtils::getResources) + .next() + )) + .as(StepVerifier::create) + .consumeNextWith(tupleEquality()) + .expectComplete() + .verify(Duration.ofMinutes(5)); + } + + @Test + public void listFilterBySpaceId() { + getFirstEvent(this.cloudFoundryClient) + .flatMap(resource -> Mono.zip( + Mono.just(resource), + this.cloudFoundryClient.events() + .list(ListEventsRequest.builder() + .spaceId(ResourceUtils.getEntity(resource).getSpaceId()) + .build()) + .flatMapMany(ResourceUtils::getResources) + .next() + )) + .as(StepVerifier::create) + .consumeNextWith(tupleEquality()) + .expectComplete() + .verify(Duration.ofMinutes(5)); + } + private static Mono getFirstEvent(CloudFoundryClient cloudFoundryClient) { return listEvents(cloudFoundryClient) .next();