public virtual void Add(IIdContent <Id> item) { try { Session.Store(this.UniqueData(item)); } catch (Exception e) { throw e; } finally { } }
public virtual bool Contains(IIdContent <Id> item) { bool result = false; try { result = Session.Ext().IsStored(item); } catch (Exception e) { throw e; } finally { } return(result); }
public virtual IIdContent <Id> UniqueData(IIdContent <Id> data) { IIdContent <Id> result = data; if (data != null && !Session.Ext().IsStored(data)) { IIdContent <Id> stored = this.GetById(data.Id); if (stored != null) { long id = Session.Ext().GetID(stored); Session.Ext().Bind(data, id); } } return(result); }
public virtual bool Remove(IIdContent <Id> item) { bool result = false; try { bool contained = Contains(item); if (contained) { Session.Delete(item); result = true; } } catch (Exception e) { throw e; } finally { } return(result); }
public virtual bool Remove(Id id) { bool result = false; try { bool contained = Contains(id); if (contained) { // TODO: this is stupid: // get the expensive object only to delete it! IIdContent <Id> item = GetById(id); Session.Delete(item); } } catch (Exception e) { throw e; } finally { } return(result); }
public virtual IIdContent <Id> GetById(Id id) { IIdContent <Id> result = null; try { IQuery query = Session.Query(); // Attention! Here we use RealData and NOT IRealData as of query-index-usage query.Constrain(realDataBaseType); query.Descend("_id").Constrain(id); var set = query.Execute(); if (set.HasNext()) { result = set.Next() as IIdContent <Id>; } } catch (Exception e) { throw e; } finally { } return(result); }
public bool Remove(IIdContent <Id> item) { return(Remove(item.Id)); }
public void Add(IIdContent <Id> item) { dataList[item.Id] = item; }
public bool Contains(IIdContent <Id> item) { return(dataList.ContainsKey(item.Id)); }