From 1a60183268756dbca11396606f1591620852e2e6 Mon Sep 17 00:00:00 2001 From: Enrique Zamudio Date: Thu, 19 Feb 2015 19:54:13 -0600 Subject: [PATCH] work on #36 and #32 --- .../com/solab/iso8583/codecs/CompositeField.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/solab/iso8583/codecs/CompositeField.java b/src/main/java/com/solab/iso8583/codecs/CompositeField.java index 5b6e2aa..544fdf5 100644 --- a/src/main/java/com/solab/iso8583/codecs/CompositeField.java +++ b/src/main/java/com/solab/iso8583/codecs/CompositeField.java @@ -69,7 +69,7 @@ public class CompositeField implements CustomBinaryField { } public CompositeField addParser(FieldParseInfo fpi) { if (parsers == null) { - parsers = new ArrayList(4); + parsers = new ArrayList<>(4); } parsers.add(fpi); return this; @@ -93,7 +93,8 @@ public class CompositeField implements CustomBinaryField { } if (v.getType() == IsoType.LLVAR || v.getType() == IsoType.LLBIN) { pos++; - } else if (v.getType() == IsoType.LLLVAR || v.getType() == IsoType.LLLBIN) { + } else if (v.getType() == IsoType.LLLVAR || v.getType() == IsoType.LLLBIN + || v.getType() == IsoType.LLLLVAR || v.getType() == IsoType.LLLLBIN) { pos+=2; } vals.add(v); @@ -126,6 +127,8 @@ public class CompositeField implements CustomBinaryField { pos+=2; } else if (v.getType() == IsoType.LLLVAR || v.getType() == IsoType.LLLBIN) { pos+=3; + } else if (v.getType() == IsoType.LLLLBIN || v.getType() == IsoType.LLLLVAR) { + pos+=4; } vals.add(v); } @@ -133,10 +136,7 @@ public class CompositeField implements CustomBinaryField { final CompositeField f = new CompositeField(); f.setValues(vals); return f; - } catch (ParseException ex) { - log.error("Decoding CompositeField", ex); - return null; - } catch (UnsupportedEncodingException ex) { + } catch (ParseException | UnsupportedEncodingException ex) { log.error("Decoding CompositeField", ex); return null; }