private bool UnregisterMapperBulderSync <T>() { var type = typeof(T); IRuntimeMapperBuilder found = null; foreach (var builder in _mapperBuilders) { if (builder.GetBuilder().GetType() == type) { found = builder.GetBuilder(); break; } } if (found == null) { return(false); } var toBeDisposed = new List <IWrapper>(); foreach (var mapperWrapper in _mapperWrappers) { var builder = mapperWrapper.GetBuilder(); if (builder == found) { toBeDisposed.Add(mapperWrapper); } } toBeDisposed.ForEach(a => Dispose()); return(true); }
private MapperWrapper <T> BuildMapperWrapperSync <T>() { IRuntimeMapperBuilder builder = GetBuilderSync <T>(); IJsonMapper <T> mapper = builder.Build <T>(this); mapper.Init(this); return(new MapperWrapper <T>(this, mapper, builder)); }
internal JsonSerializator(JsonContext context, IJsonMapper <T> mapper, IRuntimeMapperBuilder builder) { Context = context; Mapper = mapper; Builder = builder; }
internal MapperWrapper(JsonContext context, IJsonMapper <T> mapper, IRuntimeMapperBuilder builder = null) { JsonSerializator = new JsonSerializator <T>(context, mapper, builder); }