ApplicationDeploymentPresets.java
package com.cloudforge.core.deploy;
import java.util.Optional;
import java.util.ServiceLoader;
/** Classpath discovery for optional {@link ApplicationDeploymentPreset} providers. */
public final class ApplicationDeploymentPresets {
private ApplicationDeploymentPresets() {
}
public static Optional<ApplicationDeploymentPreset> find(String applicationId) {
if (applicationId == null || applicationId.isBlank()) {
return Optional.empty();
}
return ServiceLoader.load(ApplicationDeploymentPreset.class).stream()
.map(ServiceLoader.Provider::get)
.filter(preset -> applicationId.equals(preset.applicationId()))
.findFirst();
}
}