Documentation for a newer release is available. View Latest

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()));
    }
}