public void TestPofUpdater() { INamedCache cache = CacheFactory.GetCache(CacheName); cache.Clear(); PortablePerson original = new PortablePerson(); original.Name = "Aleksandar Seovic"; original.Address = new Address("street", "Belgrade", "SRB", "11000"); cache.Insert("p1", original); PofUpdater updName = new PofUpdater(0); PofUpdater updCity = new PofUpdater(new SimplePofPath(new int[] { 1, 1 })); cache.Invoke("p1", new UpdaterProcessor(updName, "Novak Seovic")); cache.Invoke("p1", new UpdaterProcessor(updCity, "Lutz")); PortablePerson modified = (PortablePerson)cache["p1"]; Assert.AreEqual("Novak Seovic", modified.Name); Assert.AreEqual("Lutz", modified.Address.City); CacheFactory.Shutdown(); }
/// <summary> /// Compare the PofUpdater with another object to determine /// equality. /// </summary> /// <param name="o"> /// Object to compare with /// </param> /// <returns> /// <b>true</b> iff this PofUpdater and the passed object are /// equivalent /// </returns> public override bool Equals(Object o) { if (o is PofUpdater) { PofUpdater that = (PofUpdater)o; return(Equals(m_navigator, that.m_navigator)); } return(false); }