// If we are talking v2, userInformationField may contain
//a character Set Negotiation field, if v3,
//otherInfo may contain a charset/language negotiation feature.
if (init_request.userInformationField != null) {
OIDRegisterEntry ent = reg.lookupByOID(init_request.userInformationField.direct_reference);
if (ent != null) {
LOGGER.finer("Init Request contains userInformationField oid="
+ ent.getName());
} else {
LOGGER.finer("Unkown external in userInformationField");
}
// The OID for the external should be found
//in userInformationField.direct_reference
}
if (init_request.otherInfo != null) {
LOGGER.finer("Init Request contains otherInfo entries");
for (Enumeration other_info_enum = init_request.otherInfo.elements();
other_info_enum.hasMoreElements();) {
LOGGER.finer("Processing otherInfo entry...");
// Process the external at other_info_enum.nextElement();
OtherInformationItem43_type oit = (OtherInformationItem43_type) (other_info_enum
.nextElement());
LOGGER.finer("Processing OtherInformationItem43_type");
switch (oit.information.which) {
case information_inline45_type.externallydefinedinfo_CID:
EXTERNAL_type et = (EXTERNAL_type) (oit.information.o);
if (et.direct_reference != null) {
OIDRegisterEntry ent = reg.lookupByOID(et.direct_reference);
LOGGER.finer("External with direct reference, oid="
+ ent.getName());
// Are we dealing with character set negotiation.
if (ent.getName().equals("z_charset_neg_3")) {
handleNLSNegotiation((CharSetandLanguageNegotiation_type) (et.encoding.o));
}
}
break;