package org.jboss.resteasy.core;

import java.util.concurrent.CompletionStage;

Need to distinguish from a param or property that is actually a CompletionStage from an async injection
/** * Need to distinguish from a param or property that is actually a CompletionStage from * an async injection * */
public class CompletionStageHolder { private final CompletionStage stage; public CompletionStageHolder(final CompletionStage stage) { this.stage = stage; } public CompletionStage getStage() { return stage; } public static Object resolve(Object injectedObject) { if (injectedObject != null && injectedObject instanceof CompletionStageHolder) { return ((CompletionStageHolder)injectedObject).getStage(); } return injectedObject; } }