From 3f6e14895467521a1205589d47ac576abfcdf2d8 Mon Sep 17 00:00:00 2001 From: chochos Date: Fri, 20 May 2011 18:38:47 +0000 Subject: [PATCH] Add missing parameter to CustomField documentation example git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@74 db60a039-f72e-0410-b1d2-baa000846441 --- src/site/apt/encoders.apt | 5 +++-- src/site/es/apt/encoders.apt | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/site/apt/encoders.apt b/src/site/apt/encoders.apt index 86ad5be..2778179 100644 --- a/src/site/apt/encoders.apt +++ b/src/site/apt/encoders.apt @@ -45,7 +45,8 @@ public class ListEncoder implements CustomField> { IsoMessage parsed = messageFactory.parse(someBytes, 0); assert parsed.getObjectValue(62) instanceof List IsoMessage nm = messageFactory.newMessage(0x200); - nm.setValue(62, Arrays.asList("a", "b", "c", "d", "e"), IsoType.LLLVAR, 0); + //you need to pass the CustomField + nm.setValue(62, Arrays.asList("a", "b", "c", "d", "e"), messageFactory.getCustomField(126), IsoType.LLLVAR, 0); //when nm gets written, field 62 will be "009a,b,c,d,e" +----- @@ -67,7 +68,7 @@ IsoMessage myIso = messageFactory.newMessage(0x200); MyCustomClass customField = ((MyCustomClass)myIso.getObjectValue(126)).copy(); //Now you can modify this instance customField.setSomeValue("blabla"); -myIso.setValue(126, customField, IsoType.LLLVAR, 0); +myIso.setValue(126, customField, messageFactory.getCustomField(126), IsoType.LLLVAR, 0); +----- Currently j8583 cannot perform this copy operation for you; even if the MessageFactory can detect if your custom diff --git a/src/site/es/apt/encoders.apt b/src/site/es/apt/encoders.apt index dc88dad..f0cad96 100644 --- a/src/site/es/apt/encoders.apt +++ b/src/site/es/apt/encoders.apt @@ -16,7 +16,7 @@ Uso de los codificadores de campos personalizados +----- public class ListEncoder implements CustomField> { - //Transforma una lista de caadenas en una sola cadena separada por comas + //Transforma una lista de cadenas en una sola cadena separada por comas public String encodeField(List value) { StringBuilder sb = new StringBuilder(); for (String s: value) { @@ -45,7 +45,8 @@ public class ListEncoder implements CustomField> { IsoMessage parsed = messageFactory.parse(unosBytes, 0); assert parsed.getObjectValue(62) instanceof List IsoMessage nm = messageFactory.newMessage(0x200); - nm.setValue(62, Arrays.asList("a", "b", "c", "d", "e"), IsoType.LLLVAR, 0); + //Hay que pasar el CustomField como parámetro + nm.setValue(62, Arrays.asList("a", "b", "c", "d", "e"), messageFactory.getCustomField(126), IsoType.LLLVAR, 0); //cuando se genere la trama de nm, el campo 62 será "009a,b,c,d,e" +----- @@ -69,7 +70,7 @@ IsoMessage myIso = messageFactory.newMessage(0x200); MiClase customField = ((MiClase)myIso.getObjectValue(126)).copy(); //Ahora se puede modificar esta instancia sin afectar otros mensajes customField.setSomeValue("blabla"); -myIso.setValue(126, customField, IsoType.LLLVAR, 0); +myIso.setValue(126, customField, messageFactory.getCustomField(126), IsoType.LLLVAR, 0); +----- Por el momento, j8583 no puede realizar esta operación internamente; aunque la MessageFactory pueda detectar