Files
JChargePointProtocol/jcpp-protocol-api/src/main/java/sanbing/jcpp/protocol/ProtocolContext.java

66 lines
2.6 KiB
Java
Raw Normal View History

2024-10-08 09:38:54 +08:00
/**
2025-03-04 10:42:17 +08:00
* 开源代码仅供学习和交流研究使用商用请联系三丙
* 微信mohan_88888
* 抖音程序员三丙
* 付费课程知识星球https://t.zsxq.com/aKtXo
2024-10-08 09:38:54 +08:00
*/
package sanbing.jcpp.protocol;
import io.netty.util.ResourceLeakDetector;
import jakarta.annotation.PostConstruct;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import sanbing.jcpp.infrastructure.queue.discovery.PartitionProvider;
import sanbing.jcpp.infrastructure.queue.discovery.ServiceInfoProvider;
import sanbing.jcpp.infrastructure.queue.provider.AppQueueFactory;
import sanbing.jcpp.infrastructure.stats.StatsFactory;
import sanbing.jcpp.infrastructure.util.config.ShardingThreadPool;
import sanbing.jcpp.protocol.provider.ProtocolSessionRegistryProvider;
import sanbing.jcpp.protocol.provider.ProtocolsConfigProvider;
/**
* @author 九筒
2024-10-08 09:38:54 +08:00
*/
@Component
@Getter
@Slf4j
public class ProtocolContext {
private final StatsFactory statsFactory;
private final ProtocolsConfigProvider protocolsConfigProvider;
private final ProtocolSessionRegistryProvider protocolSessionRegistryProvider;
private final ServiceInfoProvider serviceInfoProvider;
private final PartitionProvider partitionProvider;
private final AppQueueFactory appQueueFactory;
private final ShardingThreadPool shardingThreadPool;
public ProtocolContext(StatsFactory statsFactory,
ProtocolsConfigProvider protocolsConfigProvider,
ProtocolSessionRegistryProvider protocolSessionRegistryProvider,
ServiceInfoProvider serviceInfoProvider,
@Autowired(required = false) PartitionProvider partitionProvider,
@Autowired(required = false) AppQueueFactory appQueueFactory,
ShardingThreadPool shardingThreadPool) {
this.statsFactory = statsFactory;
this.protocolsConfigProvider = protocolsConfigProvider;
this.protocolSessionRegistryProvider = protocolSessionRegistryProvider;
this.serviceInfoProvider = serviceInfoProvider;
this.partitionProvider = partitionProvider;
this.appQueueFactory = appQueueFactory;
this.shardingThreadPool = shardingThreadPool;
}
@PostConstruct
public void init() {
ResourceLeakDetector.setLevel(ResourceLeakDetector.Level.DISABLED);
log.info("Setting resource leak detector level to {}", ResourceLeakDetector.Level.DISABLED);
}
}