Usar la librería de cliente
DPS proporciona una librería de cliente que puede ser utilizada por aplicaciones que se integren con DPS. El puerto de cliente contiene todas las interfaces que pueden utilizarse para trabajar con DPS.
Más información sobre implementaciones y dependencias puede verse aquí Librería de cliente
Los puertos de cliente disponibles son:
-
DpsSchemasClientPort - contiene métodos para obtener esquemas de configuraciones
-
DpsCrudClientPort - contiene métodos para crear, actualizar, eliminar y obtener una configuración por id
-
DpsSearchClientPort - contiene métodos para buscar configuraciones por parámetros buscables
-
DpsApprovalsClientPort - contiene métodos para manejar aprobaciones (approve, reject, get approvals)
-
DpsHistoryClientPort - contiene métodos para buscar el historial de configuraciones
Ejemplo de cómo puede usarse un puerto de cliente:
import com.iconsolutions.ipf.dynamicsettings.v2.client.port.DpsCrudClientPort;
import com.iconsolutions.ipf.dynamicsettings.v2.dto.CreateSetting;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
...
@Slf4j
@RequiredArgsConstructor
public class ClientCustomLogic {
private final DpsCrudClientPort dpsCrudClientPort;
public CompletionStage<Void> customLogic() {
CreateSetting<ClientSetting> createSetting = CreateSetting.<ClientSetting>builder()
.requiresApproval(false)
.source("manual")
.processingEntity("001")
.createdBy("operator")
.payload(ClientSetting.builder().build())
.build();
return dpsCrudClientPort.createSetting(ClientSetting.SETTING_TYPE, createSetting)
.thenAccept(createdSetting -> log.info("Setting created #{}", createdSetting.getValue().getLogicalUniqueKey()));
}
}