32 Questions For Snapchat Story

Unique Event Venues In Munich City Centre

abg causes

:
Services Lauch Plan Template
Add Rollback to ISession and clear tracked documents.
1 parent Give Me An Example Of Blog commit 2c73776

Abg causes 3 files changed Product Display Layout Mock Up PNG

Lines changed: 33 additions & 0 deletions

New Blog Sign Unique Event Venues In Munich City Centre

Lucene.Net.Linq.Tests/Integration/SessionTests.cs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,23 @@ public void Query()
3434
var result = (from d in session.Query() where d.Name == "a" select d).Single();
3535
Assert.That(result.Scalar, Is.EqualTo(4));
3636
}
37+
[Test]
38+
public void RollbackDiscardsTrackedDocumentModifications()
39+
{
40+
var session = provider.OpenSession<SampleDocument>();
41+
int originalScalar;
42+
43+
using (session)
44+
{
45+
var item = (from d in session.Query() where d.Name == "a" select d).Single();
46+
47+
originalScalar = item.Scalar;
48+
item.Scalar = originalScalar + 1;
49+
50+
session.Rollback();
51+
}
52+
53+
Assert.That(provider.AsQueryable<SampleDocument>().Single(doc => doc.Name == "a").Scalar, Is.EqualTo(originalScalar));
54+
}
3755
}
3856
}

Lucene.Net.Linq/ISession.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,6 @@ public interface ISession<T> : IDisposable
1212
void Delete(params Query[] items);
1313
void DeleteAll();
1414
void Commit();
15+
void Rollback();
1516
}
1617
}

Lucene.Net.Linq/LuceneSession.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,14 @@ public void Dispose()
8888
Commit();
8989
}
9090

91+
public void Rollback()
92+
{
93+
lock (sessionLock)
94+
{
95+
ClearPendingChanges();
96+
}
97+
}
98+
9199
public void Commit()
92100
{
93101
lock (sessionLock)
@@ -190,6 +198,7 @@ private void ClearPendingChanges()
190198
deleteKeys.Clear();
191199
deleteQueries.Clear();
192200
additions.Clear();
201+
documentTracker.Clear();
193202
}
194203

195204
internal bool PendingChanges
@@ -252,6 +261,11 @@ public IEnumerable<T> FindModifiedDocuments()
252261
{
253262
return items.Where(t => !mapper.Equals(t.Item1, t.Item2)).Select(t => t.Item1);
254263
}
264+
265+
public void Clear()
266+
{
267+
items.Clear();
268+
}
255269
}
256270
}
257271
}

How To Post Story Facebook From Spotify Laptop Unique Event Venues In Munich City Centre

Comments
 (0)