public static BulletinPackage ToCache(BulletinInstance obj) { BulletinPackage result = null; BCT.Execute(d => { var groupSignature = GroupHelper.GetGroupSignature(obj.Id); var access = AccessHelper.GetFreeAccess(obj.Id); var valueFields = ValueFieldHelper.GetValueFields(obj.Id); var accessFields = AccessFieldHelper.GetAccessFields(obj.Id); var state = obj.State; result = new BulletinPackage { BulletinId = obj.BulletinId, BulletinInstanceId = obj.Id, Url = obj.Url, Signature = groupSignature, Access = access, ValueFields = valueFields, AccessFields = accessFields, State = state, Title = obj.Url, }; }); return(result); }