private void processTlsConfigurations(final ShenyuMemoryConfig shenyuMemoryConfig, final V1Ingress v1Ingress) throws IOException {
        List<SslCrtAndKeyStream> tlsConfigList = shenyuMemoryConfig.getTlsConfigList();

        if (CollectionUtils.isNotEmpty(tlsConfigList)) {
            final String namespace = Objects.requireNonNull(v1Ingress.getMetadata()).getNamespace();
            final String ingressName = v1Ingress.getMetadata().getName();
            Set<String> oldDomainSet = Optional.ofNullable(IngressSecretCache.getInstance().removeDomainByIngress(namespace, ingressName)).orElse(new HashSet<>());
            Set<String> newDomainSet = new HashSet<>();

            for (SslCrtAndKeyStream sslCrtAndKeyStream : tlsConfigList) {
                final String domain = sslCrtAndKeyStream.getDomain();
                if (!oldDomainSet.contains(domain)) {
                    if (IngressSecretCache.getInstance().getAndIncrementDomainNums(domain) == 0) {
                        shenyuSniAsyncMapping.addSslCertificate(sslCrtAndKeyStream);
                        LOG.info("Add ssl config for domain {}", domain);
                    }
                }
                newDomainSet.add(domain);
            }

            oldDomainSet.removeAll(newDomainSet);

            for (String domain : oldDomainSet) {
                if (IngressSecretCache.getInstance().getAndDecrementDomainNums(domain) == 1) {
                    shenyuSniAsyncMapping.removeSslCertificate(domain);
                    LOG.info("Remove ssl config for domain {}", domain);
                }
            }

            IngressSecretCache.getInstance().putDomainByIngress(namespace, ingressName, newDomainSet);
        }
    }
Check whether the IngressClass is shenyu, check the annotation first.

@param v1Ingress v1Ingress
@return boolean
shenyu-kubernetes-controller/src/main/java/org/apache/shenyu/k8s/reconciler/IngressReconciler.java