Beispiel #1
0
        public void TestGivenSamples(int itemId, TableIds tableId, string time, string expected)
        {
            var subject = new Id(time.FakeNow());
            var act     = subject.NewId(tableId, itemId);

            Assert.Equal(expected, act);
        }
Beispiel #2
0
        public string NewId(TableIds tblId, Int32 ItemId)
        {
            var left  = (ItemId ^ ((Int32)tblId << 24)).SwapEndianness();
            var right = this.timeProvider.Now.UnixTime().SwapEndianness();
            var value = (long)left << 32 | (uint)right;

            return(value.Base32HexEncodeShort());
        }
Beispiel #3
0
 internal void RefreshPossibleTableId()
 {
     PossibleTableId = 1;
     // possible infinite loop, but how many tables do you have anyway?
     while (TableIds.Contains(PossibleTableId))
     {
         ++PossibleTableId;
     }
 }