code: @Override
      public VirtualConnectionFactory getOutboundVCFactory(Map<Object, Object> sslProps, boolean overwriteExisting) throws IllegalStateException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "getOutboundVCFactory(ssl)");
          }
  
          // Ensure the SSL channel factory exists in the outbound channel
          // definitions.
          if (-1 == this.sslChannelIndex) {
              throw new IllegalStateException("The SSL channel factory does not exist in this CFEndPoint.");
          }
  
          // Create a new OutboundChannelDefintion with new properties.
          OutboundChannelDefinition existingDef = this.outboundChannelDefs.get(this.sslChannelIndex);
          OutboundChannelDefinition newChannelDef = new OutboundChannelDefinitionImpl(existingDef, sslProps, overwriteExisting);
          // Overlay the new definition into the array managed by this endpoint.
          this.outboundChannelDefs.add(this.sslChannelIndex, newChannelDef);
          // Now that the properties are folded in, call the basic implementation.
          VirtualConnectionFactory localVCF = getOutboundVCFactory();
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "getOutboundVCFactory(ssl)");
          }
          return localVCF;
      }
docs: /*
  @see
  com.ibm.websphere.channelfw.CFEndPoint#getOutboundVCFactory(java.util.Map,
  boolean)