protected override void OnInitialize() { base.OnInitialize(); string bytesName = Description.BytesSerializerName; string compactName = Description.TextCompactSerializerName; string readableName = Description.TextReadableSerializerName; SerializeModule.Provider.Add(bytesName, m_serializerBytes); SerializeModule.Provider.Add(compactName, m_serializerTextCompact); SerializeModule.Provider.Add(readableName, m_serializerTextReadable); for (int i = 0; i < Description.Resolvers.Count; i++) { IJsonFormatterResolver resolver = Description.Resolvers[i]; Resolver.AddResolver(resolver); } for (int i = 0; i < Description.TypeRegisters.Count; i++) { ISerializeUtf8JsonTypeRegister typeRegister = Description.TypeRegisters[i]; typeRegister.Register(Resolver); } Log.Debug($"SerializeUtf8JsonModule: serializers: '{bytesName}', '{compactName}', '{readableName}'."); Log.Debug($"SerializeUtf8JsonModule: resolvers:'{Description.Resolvers.Count.ToString()}'."); Log.Debug($"SerializeUtf8JsonModule: typeRegisters:'{Description.TypeRegisters.Count.ToString()}'."); }
public ISerializeUtf8JsonModuleDescription GetDescription() { var description = new SerializeUtf8JsonModuleDescription { BytesSerializerName = m_bytesSerializerName, TextCompactSerializerName = m_textCompactSerializerName, TextReadableSerializerName = m_textReadableSerializerName }; for (int i = 0; i < m_resolverAssets.Count; i++) { Utf8JsonResolverAsset asset = m_resolverAssets[i]; IJsonFormatterResolver resolver = asset.GetResolver(); description.Resolvers.Add(resolver); } for (int i = 0; i < m_typeRegisterAssets.Count; i++) { SerializeUtf8JsonTypeRegisterAsset asset = m_typeRegisterAssets[i]; ISerializeUtf8JsonTypeRegister typeRegister = asset.GetTypeRegister(); description.TypeRegisters.Add(typeRegister); } return(description); }
protected override void OnUninitialize() { base.OnUninitialize(); for (int i = 0; i < Description.TypeRegisters.Count; i++) { ISerializeUtf8JsonTypeRegister typeRegister = Description.TypeRegisters[i]; typeRegister.UnRegister(Resolver); } for (int i = 0; i < Description.Resolvers.Count; i++) { IJsonFormatterResolver resolver = Description.Resolvers[i]; Resolver.RemoveResolver(resolver); } SerializeModule.Provider.Remove <byte[]>(Description.BytesSerializerName); SerializeModule.Provider.Remove <string>(Description.TextCompactSerializerName); SerializeModule.Provider.Remove <string>(Description.TextReadableSerializerName); }