using System; using System.Collections.Generic; namespace FSO.Server.Database.DA.LotVisitors { public interface ILotVisits { /// /// Records a new visit to a lot. A visit id is returned which can be used to record /// when the visit ends /// /// /// /// /// int? Visit(uint avatar_id, DbLotVisitorType visitor_type, int lot_id); /// /// Records that a visit has ended /// /// void Leave(int visit_id); /// /// Updates the timestamp on active visits. This helps detect the difference between /// a long visit and an error where the visit did not get closed. /// /// This also lets us calculate Top 100 without downtime as we can be inclusive /// of active tickets /// /// void Renew(IEnumerable visit_ids); /// /// Purge data older than the date given /// /// void PurgeByDate(DateTime date); /// /// /// /// /// /// IEnumerable StreamBetween(int shard_id, DateTime start, DateTime end); /// /// /// /// /// /// IEnumerable StreamBetweenPlusNhood(int shard_id, DateTime start, DateTime end); /// /// /// /// /// /// IEnumerable StreamBetweenOneNhood(uint nhood_id, DateTime start, DateTime end); } }