docs: private void modifyEndpointChannelProperties(CFEndPoint endPoint, Class<?> channelFactoryClass,
                                                   Map properties, boolean overwriteExisting)
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "modifyEndpointChannelProperties",
                          new Object[]
                          {
                           endPoint,
                           channelFactoryClass,
                           properties,
                           "" + overwriteExisting
                          });
  
          // Romil libertry changes convert list to array
          OutboundChannelDefinition[] outboundChannelDefs = (OutboundChannelDefinition[]) endPoint.getOutboundChannelDefs().toArray();
  
          Class factoryClass = null;
          OutboundChannelDefinition existingChannelDef = null;
          int index = 0;
          boolean foundChannel = false;
          // Loop through each channel in the outbound chain represented by this endpoint
          for (index = 0; index < outboundChannelDefs.length; index++)
          {
              // Attempt to identify the channel factory we are interested in.
              existingChannelDef = outboundChannelDefs[index];
              factoryClass = outboundChannelDefs[index].getOutboundFactory();
              if (channelFactoryClass.isAssignableFrom(factoryClass))
              {
                  foundChannel = true;
                  break;
              }
          }
  
          if (foundChannel)
          {
              // Create a new OutboundChannelDefintion with new properties.
              OutboundChannelDefinition newChannelDef =
                              new JFapOutboundChannelDefinitionImpl(existingChannelDef,
                                              properties,
                                              overwriteExisting);
  
              // Overlay the new definition into the array managed by this endpoint. 
              outboundChannelDefs[index] = newChannelDef;
          }
          else
          {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(this, tc, "Did not find desired channel");
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "modifyEndpointChannelProperties");
      }