public override IEnumerable GetObjects(Type objectType, CriteriaOperator criteria, IList <DevExpress.Xpo.SortProperty> sorting) { if (Storage.Mappings.TryGetValue(objectType, out var mapping)) { return(WrapLoading(() => { var loader = new DataStoreObjectLoader(Storage.Mappings, Storage.DataStore, objectMap); return loader.LoadObjects(objectType, criteria); })); } throw new NotImplementedException(); }
public override IEnumerable GetObjectKeys(Type objectType, CriteriaOperator criteria, IList <SortProperty> sorting) { if (Storage.Mappings.TryGetValue(objectType, out var mapping)) { var objects = WrapLoading(() => { var loader = new DataStoreObjectLoader(Storage.Mappings, Storage.DataStore, objectMap); return(loader.LoadObjects(objectType, criteria)); }); return(objects.Select(o => mapping.GetKey(o)).ToArray()); } throw new NotImplementedException(); }
public override object GetObjectByKey(Type objectType, object key) { if (key == null) { throw new ArgumentNullException(nameof(key)); } if (Storage.Mappings.TryGetValue(objectType, out var mapping)) { return(WrapLoading(() => { var loader = new DataStoreObjectLoader(Storage.Mappings, Storage.DataStore, objectMap); return loader.LoadObjectByKey(objectType, key); })); } throw new NotImplementedException(); }