@Override public void decode(Asn1ParseResult parseResult) throws IOException { if (chosenField == null) { matchAndSetValue(parseResult.tag()); } decodeBody(parseResult); }
@Override public void decode(Asn1ParseResult parseResult) throws IOException { if (chosenField == null) { matchAndSetValue(parseResult.tag()); } decodeBody(parseResult); }
@Override protected void decodeBody(Asn1ParseResult parseResult) throws IOException { if (chosenField == null) { matchAndSetValue(parseResult.tag()); } if (chosenField == null) { throw new IOException("Unexpected item, not in choices: " + parseResult.simpleInfo()); } Asn1Type fieldValue = getValue(); if (parseResult.isContextSpecific()) { Asn1Binder.bindWithTagging(parseResult, fieldValue, chosenField.getTaggingOption()); } else { Asn1Binder.bind(parseResult, fieldValue); } }
@Override protected void decodeBody(Asn1ParseResult parseResult) throws IOException { if (chosenField == null) { matchAndSetValue(parseResult.tag()); } if (chosenField == null) { throw new IOException("Unexpected item, not in choices: " + parseResult.simpleInfo()); } Asn1Type fieldValue = getValue(); if (parseResult.isContextSpecific()) { Asn1Binder.bindWithTagging(parseResult, fieldValue, chosenField.getTaggingOption()); } else { Asn1Binder.bind(parseResult, fieldValue); } }
} else if (fieldValue instanceof Asn1Choice) { Asn1Choice aChoice = (Asn1Choice) fieldValue; if (aChoice.matchAndSetValue(parseItem.tag())) { foundPos = i; break; Asn1Choice aChoice = (Asn1Choice) (fields[i] = fieldInfo .createFieldValue()); if (aChoice.matchAndSetValue(parseItem.tag())) { foundPos = i; break;
} else if (fieldValue instanceof Asn1Choice) { Asn1Choice aChoice = (Asn1Choice) fieldValue; if (aChoice.matchAndSetValue(parseItem.tag())) { foundPos = i; break; Asn1Choice aChoice = (Asn1Choice) (fields[i] = fieldInfo .createFieldValue()); if (aChoice.matchAndSetValue(parseItem.tag())) { foundPos = i; break;