code: private TSSTransportMechConfig extractSSLTransport(Map<String, Object> transportLayerProperties, Map<String, List<TransportAddress>> addrMap) throws SSLException {
          String sslAliasName = (String) transportLayerProperties.get(KEY_SSL_REF);
          if (sslAliasName == null)
              sslAliasName = defaultAlias;
          OptionsKey options = SecurityServices.getSSLConfig().getAssociationOptions(sslAliasName);
          TSSSSLTransportConfig transportLayerConfig = new TSSSSLTransportConfig(authenticator);
          transportLayerConfig.setSupports(options.supports);
          transportLayerConfig.setRequires(options.requires);
  
          List<TransportAddress> addresses = addrMap.get(sslAliasName);
  
          if (addresses == null) {
              if (addrMap.size() == 1) {
                  String messageFromBundle = Tr.formatMessage(tc, "CSIv2_SERVER_TRANSPORT_NO_SSL_CONFIGS_IN_IIOP_ENDPOINT", sslAliasName);
                  throw new IllegalStateException(messageFromBundle);
              } else {
                  String messageFromBundle = Tr.formatMessage(tc, "CSIv2_SERVER_TRANSPORT_MISMATCHED_SSL_CONFIG", sslAliasName);
                  throw new IllegalStateException(messageFromBundle);
              }
          }
          transportLayerConfig.setTransportAddresses(addresses);
          return transportLayerConfig;
      }
docs: /*
  This method extract the fields corresponding to TAG_TLS_SEC_TRANS. Referring to CORBA spec, this corresponds to a
  TaggedComponent, and have structure as below.
  
  struct TLS_SEC_TRANS {
  ----AssociationOptions target_supports;
  ----AssociationOptions target_requires;
  ----TransportAddressList addresses;
  };
  
  and
  
  struct TransportAddress {
  ----string host_name;
  ----unsigned short port;
  };