docs: public void processTAIUserFeatureProps(ConcurrentServiceReferenceMap<String, TrustAssociationInterceptor> interceptorServiceRef,
                                             String interceptorId) {
          invokeBeforeSSO = false;
          invokeAfterSSO = false;
          addLtpaCookieToResponse = true;
  
          ServiceReference<TrustAssociationInterceptor> taiServiceRef = interceptorServiceRef.getReference(interceptorId);
          Object beforeSsoProp = taiServiceRef.getProperty(TAIConfig.KEY_INVOKE_BEFORE_SSO);
          Object afterSsoProp = taiServiceRef.getProperty(TAIConfig.KEY_INVOKE_AFTER_SSO);
          if (taiServiceRef.getProperty(TAIConfig.KEY_ADD_LTPA_TO_RESPONSE) != null) {
              addLtpaCookieToResponse = (Boolean) taiServiceRef.getProperty(TAIConfig.KEY_ADD_LTPA_TO_RESPONSE);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "user feature have properties,  beforeSsoProp=" + beforeSsoProp + " invokeAfterSSO=" + afterSsoProp +
                           " addLtpaCookieToResponse=" + addLtpaCookieToResponse);
          }
  
          /*
           * The interceptor user defined feature may have the following:
           * 1) Do not specified invokeBeforeSSO and invokeAfterSSO attributes.
           * 2) Specified only invokeAfterSSO attribute.
           * 3) Specified only invokeBeforeSSO attribute.
           * 4) Specified both invokeBeforeSSO and invokeAfterSSO attributes.
           */
          if (beforeSsoProp == null && afterSsoProp == null) {
              invokeAfterSSO = true;
          } else if (beforeSsoProp == null && afterSsoProp != null) {
              resolveOnlyInvokeAfterSSOSpecified(afterSsoProp);
          } else if (beforeSsoProp != null && afterSsoProp == null) {
              resolveOnlyInvokeBeforeSSOSpecified(beforeSsoProp);
          } else if (beforeSsoProp != null && afterSsoProp != null) {
              invokeBeforeSSO = (Boolean) beforeSsoProp;
              invokeAfterSSO = (Boolean) afterSsoProp;
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
              Tr.debug(tc, "resolve user feature have,  invokeBeforeSSO=" + invokeBeforeSSO + " invokeAfterSSO=" + invokeAfterSSO +
                           " addLtpaCookieToResponse=" + addLtpaCookieToResponse);
          }
      }