ByteReaderPattern
El patrón ByteReaderPattern se utiliza para leer bytes de datos de un archivo.
Clases de soporte
La clase FileByteReader proporciona la lógica para abrir y leer datos de bytes del archivo determinado.
Propiedades obligatorias
Las propiedades siguientes son necesarias para el patrón.
Nombre de propiedad | Value |
---|---|
PATTERN_IMPL_CLASS | Clase que implementa la interfaz ByteReaderPattern |
FILENAME | Vía de acceso completa al archivo de entrada |
Propiedades opcionales
Para el patrón las propiedades siguientes son opcionales.
Nombre de propiedad | Value | Descripción |
---|---|---|
debug | true o false (el valor predeterminado es false) | Habilita el rastreo detallado en esta secuencia de datos por lotes. |
EnablePerformanceMeasurement | true o false (el valor predeterminado es false) | Calcula el tiempo total invertido en las secuencias de datos por lotes y el método processRecord, si se utiliza GenericXDBatchStep. |
EnableDetailedPerformanceMeasurement | true o false (el valor predeterminado es false) | Proporciona un desglose más detallado del tiempo invertido en cada método de las secuencias de datos por lotes. |
file.encoding | Codificación del archivo. | Por ejemplo, 8859_1 |
AppendJobldToFileName | true o false (el valor predeterminado es false) | Añade el JobID al nombre de archivo antes de cargar el archivo. |
Definición de interfaz
public interface ByteReaderPattern {
/**
* La invoca la infraestructura durante la fase de configuración de paso
* @parámetro props
*/
public void initialize(Properties props);
/**
*
* @parámetro reader
* @emite una excepción IOException
*/
public void processHeader(BufferedInputStream reader) throws IOException;
/**
* Obtener el siguiente registro en la corriente de entrada
* @parámetro reader
* @return
* @emite una excepción IOException
*/
public Object fetchRecord(BufferedInputStream reader) throws IOException;
}
Ejemplo xJCL
<batch-data-streams>
<bds>
<logical-name>inputStream</logical-name>
<props>
<prop name="PATTERN_IMPL_CLASS" value="com.ibm.websphere.batch.samples.tests.bds.EchoReader"/>
<prop name="file.encoding" value="8859_1"/>
<prop name="FILENAME" value="/opt/txlist.txt" />
<prop name="debug" value="true"/>
</props>
<impl-class>com.ibm.websphere.batch.devframework.datastreams.patterns.FileByteReader</impl-class>
</bds>
</batch-data-streams>