Skip to content

Commit

Permalink
feat: upgrade to fabric8 v6.2.0 (#37)
Browse files Browse the repository at this point in the history
  • Loading branch information
csviri authored Nov 16, 2022
1 parent dddd038 commit 3a2019c
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import java.util.Map;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionStage;
import java.util.stream.Collectors;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand Down Expand Up @@ -36,7 +37,8 @@ public void registerMapper(AsyncMapper<?, ?> mapper) {
public CompletionStage<ConversionReview> handle(ConversionReview conversionReview) {
try {
return convertObjects(
conversionReview.getRequest().getObjects(),
conversionReview.getRequest().getObjects().stream()
.map(HasMetadata.class::cast).collect(Collectors.toList()),
Utils.versionOfApiVersion(conversionReview.getRequest().getDesiredAPIVersion()))
.thenApply(convertedObjects -> createResponse(convertedObjects, conversionReview));
} catch (MissingConversionMapperException e) {
Expand All @@ -52,7 +54,7 @@ private CompletionStage<List<HasMetadata>> convertObjects(List<HasMetadata> obje
String targetVersion) {
CompletableFuture<HasMetadata>[] completableFutures = new CompletableFuture[objects.size()];
for (int i = 0; i < objects.size(); i++) {
completableFutures[i] = mapObject(objects.get(i), targetVersion);
completableFutures[i] = mapObject((HasMetadata) objects.get(i), targetVersion);
}
return CompletableFuture.allOf(completableFutures).thenApply(r -> {
List<HasMetadata> result = new ArrayList<>(completableFutures.length);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package io.javaoperatorsdk.webhook.conversion;

import java.util.List;
import java.util.stream.Collectors;

import io.fabric8.kubernetes.api.model.HasMetadata;
import io.fabric8.kubernetes.api.model.KubernetesResource;
import io.fabric8.kubernetes.api.model.Status;
import io.fabric8.kubernetes.api.model.apiextensions.v1.ConversionResponse;
import io.fabric8.kubernetes.api.model.apiextensions.v1.ConversionReview;
Expand All @@ -20,7 +22,8 @@ public static ConversionReview createResponse(List<HasMetadata> convertedObjects
response.setResult(new Status());
response.getResult().setStatus("Success");
response.setUid(conversionReview.getRequest().getUid());
response.setConvertedObjects(convertedObjects);
response.setConvertedObjects(convertedObjects.stream().map(KubernetesResource.class::cast)
.collect(Collectors.toList()));
result.setResponse(response);
return result;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ public class ConversionController implements ConversionRequestHandler {

private static final Logger log = LoggerFactory.getLogger(ConversionController.class);


@SuppressWarnings("rawtypes")
private final Map<String, Mapper> mappers = new HashMap<>();

Expand All @@ -35,7 +34,8 @@ public void registerMapper(Mapper<?, ?> mapper) {
public ConversionReview handle(ConversionReview conversionReview) {
try {
List<HasMetadata> convertedObjects =
convertObjects(conversionReview.getRequest().getObjects(),
convertObjects(conversionReview.getRequest().getObjects().stream()
.map(HasMetadata.class::cast).collect(Collectors.toList()),
Utils.versionOfApiVersion(conversionReview.getRequest().getDesiredAPIVersion()));
return createResponse(convertedObjects, conversionReview);
} catch (MissingConversionMapperException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ void convertsVariousVersionsInSingleRequest(Function<ConversionReview, Conversio

assertThat(response.getConvertedObjects()).hasSize(3);
List<String> namesInOrder = response.getConvertedObjects().stream()
.map(HasMetadata.class::cast)
.map(r -> r.getMetadata().getName()).collect(Collectors.toList());
assertThat(namesInOrder).containsExactly(V1_NAME, V2_NAME, V3_NAME);
assertThat(response.getConvertedObjects()).allMatch(r -> r instanceof CustomResourceV3);
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
<sonar.host.url>https://sonarcloud.io</sonar.host.url>

<junit.version>5.8.2</junit.version>
<fabric8-client.version>6.1.1</fabric8-client.version>
<fabric8-client.version>6.2.0</fabric8-client.version>
<slf4j.version>1.7.32</slf4j.version>
<log4j.version>2.17.1</log4j.version>
<mokito.version>4.1.0</mokito.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ public ConversionEndpoint(ConversionController conversionController,
this.asyncConversionController = asyncConversionController;
}


@POST
@Path(CONVERSION_PATH)
@Consumes(MediaType.APPLICATION_JSON)
Expand All @@ -43,5 +42,4 @@ public Uni<ConversionReview> convertAsync(ConversionReview conversionReview) {
return Uni.createFrom()
.completionStage(() -> asyncConversionController.handle(conversionReview));
}

}

0 comments on commit 3a2019c

Please sign in to comment.