コード例 #1
0
 public Worker(IUnifiedProtocolSettings settings, ConcurrentQueue <byte[]> messages, ILog log)
 {
     this.settings = settings;
     this.soapSink = new SoapSink(settings);
     this.messages = messages;
     this.log      = log;
 }
コード例 #2
0
        public UnifiedProtocolSink(
            IUnifiedProtocolSettings settings,
            MessageBuilder builder,
            ImeiList imeiList)
        {
            this.settings     = settings;
            this.soapSinkPool = new ObjectPool <SoapSink>(20, () => new SoapSink(this.settings));
            this.builder      = builder;
            this.imeiList     = imeiList;

            this.log      = LogManager.GetLogger(settings.LoggerName);
            this.messages = new ConcurrentQueue <byte[]>();
            workersList   = new List <Worker>();
        }
コード例 #3
0
        public ImeiList(IUnifiedProtocolSettings settings)
        {
            this.settings       = settings;
            this.log            = LogManager.GetLogger(settings.LoggerName);
            this.imeiDictionary = new Dictionary <string, string>();

            if (settings.Enabled)
            {
                var set = ImeiListLoader.loadImeis(log, settings.ImeiListFileName);
                foreach (string csv in set)
                {
                    var strs = csv.Split(';');
                    imeiDictionary[strs[0]] = strs[1];
                }
            }
        }
コード例 #4
0
 public static UnifiedProtocolSink GetInstance(IUnifiedProtocolSettings settings)
 {
     return(new UnifiedProtocolSink(settings, new MessageBuilder(new MintransMapper()), new ImeiList(settings)));
 }
コード例 #5
0
 public SoapSink(IUnifiedProtocolSettings settings)
 {
     this.settings = settings;
 }