Ejemplo n.º 1
0
 public IEnumerable <T> FetchRelation <T>(IZetboxContext ctx, Guid relationId, RelationEndRole role, IDataObject parent, out List <IStreamable> auxObjects) where T : class, IRelationEntry
 {
     using (Logging.Facade.InfoTraceMethodCallFormat("FetchRelation", "Fetching relation: ID=[{0}],role=[{1}],parentId=[{2}]", relationId, role, parent.ID))
     {
         try
         {
             return(_implementor.FetchRelation <T>(ctx, relationId, role, parent, out auxObjects));
         }
         catch (Exception ex)
         {
             Logging.Facade.Error("FetchRelation", ex);
             throw;
         }
     }
 }
Ejemplo n.º 2
0
        public IList <T> FetchRelation <T>(Guid relationId, RelationEndRole role, IDataObject container) where T : class, IRelationEntry
        {
            List <IStreamable> auxObjects;
            var serverList = proxy.FetchRelation <T>(this, relationId, role, container, out auxObjects);

            foreach (IPersistenceObject obj in auxObjects)
            {
                this.AttachRespectingIsolationLevel(obj);
            }

            var result = new List <T>();

            foreach (IPersistenceObject obj in serverList)
            {
                var localobj = this.AttachRespectingIsolationLevel(obj);
                result.Add((T)localobj);
            }
            PlaybackNotifications();
            return(result);
        }