| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using MongoDB.Bson.Serialization.Attributes;
- using ProtoBuf;
- namespace ET
- {
- [Config]
- public partial class StartProcessConfigCategory : ProtoObject
- {
- public static StartProcessConfigCategory Instance;
-
- [ProtoIgnore]
- [BsonIgnore]
- private Dictionary<int, StartProcessConfig> dict = new Dictionary<int, StartProcessConfig>();
-
- [BsonElement]
- [ProtoMember(1)]
- private List<StartProcessConfig> list = new List<StartProcessConfig>();
-
- public StartProcessConfigCategory()
- {
- Instance = this;
- }
-
- public override void AfterDeserialization()
- {
- foreach (StartProcessConfig config in list)
- {
- this.dict.Add(config.Id, config);
- }
- list.Clear();
- base.AfterDeserialization();
- }
-
- public StartProcessConfig Get(int id)
- {
- this.dict.TryGetValue(id, out StartProcessConfig item);
- if (item == null)
- {
- throw new Exception($"配置找不到,配置表名: {nameof (StartProcessConfig)},配置id: {id}");
- }
- return item;
- }
-
- public bool Contain(int id)
- {
- return this.dict.ContainsKey(id);
- }
- public Dictionary<int, StartProcessConfig> GetAll()
- {
- return this.dict;
- }
- public StartProcessConfig GetOne()
- {
- if (this.dict == null || this.dict.Count <= 0)
- {
- return null;
- }
- return this.dict.Values.First();
- }
- }
- public partial class StartProcessConfig: IConfig
- {
- [ProtoMember(1, IsRequired = true)]
- public int Id { get; set; }
- [ProtoMember(2, IsRequired = true)]
- public int MachineId { get; set; }
- [ProtoMember(3, IsRequired = true)]
- public string InnerPort { get; set; }
- }
- }
|