Documentation for a newer release is available. View Latest

Inicio rápido del conector de archivos

A menudo es posible que desee configurar un conector para cargar archivos desde un destino específico. Esta guía explica cómo hacerlo.

Paso 1: Agregar la dependencia connector-file

La dependencia que debe agregar a su pom.xml es:

<dependency>
    <groupId>com.iconsolutions.ipf.core.connector</groupId>
    <artifactId>connector-file</artifactId>
</dependency>

Si importa el Icon BOM, o usa el Icon BOM como padre, no es necesario proporcionar una versión por separado.

Paso 2: Configuración

La configuración del conector, en general, está fuertemente impulsada por configuración. La configuración nos permite especificar:

  • Directorio de archivos

  • Intervalo de carga de archivos

Aquí hay un ejemplo de un bloque de configuración para FileIngestionConfiguration.

tips { (1)
  process-participant.enabled = true
  file-ingestion-connector {
    file-ingestion {
      files-directory = "/static/files" (2)
      directory-id = "TIPS" (3)
      initial-delay = 5s (4)
      interval = 1h (5)
      archive-subdirectory = "archive" (6)
      failed-subdirectory = "failed" (7)
      processing-subdirectory = "processing" (8)

      restart-settings { (9)
        min-backoff = 1s
        max-backoff = 10s
        random-factor = 0.1
        max-restarts = 20
        max-restarts-within = 10m
      }

    }
  }
}
1 Esto se conoce como la ruta raíz de configuración y se referenciará en el código. Indica dónde, en la configuración de la aplicación, buscar la configuración de este File Connector Transport
2 Ruta del directorio con archivos
3 ID del directorio
4 Retraso inicial de carga
5 Intervalo de carga
6 Parámetro opcional para especificar dónde se archivarán los archivos procesados; si no se especifica, el valor predeterminado será 'archive'
7 Parámetro opcional para especificar dónde se almacenarán los archivos fallidos; si no se especifica, el valor predeterminado será 'failed'
8 Parámetro opcional para especificar desde dónde se procesarán los archivos; si no se especifica, el valor predeterminado será 'processing'
9 Parámetros de reinicio opcionales; si no se establecen, se utilizan valores predeterminados

Paso 3: Crear la configuración del File Connector Transport

La clase FileIngestionConfiguration actúa como envoltorio para la configuración HOCON que definimos en Paso 2, la aplicación accede a la configuración a través de esta clase.

Aquí se muestra cómo crear una clase FileIngestionConfiguration para configurar un Local Directory Connector Transport:

var fileConfiguration = FileIngestionConfiguration.create("file-ingestion-connector", actorSystem.classicSystem().settings().config());
fileConfiguration.setFilesDirectory(tempDirectory.toString());
1 Esto recupera la configuración de la aplicación desde el actor system. El actorSystem normalmente puede inyectarse como un bean de Spring.
2 Esto indica la ruta a la configuración desde donde la aplicación debe recuperar los valores de configuración.

Paso 4: Crear el File Connector Transport

Aquí hay un ejemplo de cómo se puede crear un LocalDirectoryConnectorTransport:

var connectorTransport = LocalDirectoryConnectorTransport.builder()
                .withName("file-ingestion-transport") (1)
                .withActorSystem(actorSystem)
                .withFileIngestionConfiguration(fileConfiguration) (2)
                .build();
1 Asigne un nombre significativo al ConnectorTransport
2 Proporcione una File Connector Transport Configuration (consulte Paso 3 para un ejemplo)