コード例 #1
0
        public DataSet.TokenRow Publish()
        {
            TokenTableAdapter ta = new TokenTableAdapter();
            DataSet.TokenDataTable dt = ta.GetDataBySubscriberId(subscriber.Id);
            if (dt.Count > 0)
            {
                if (dt.Count >= Constant.AuthTokenMaxCount)
                {
                    if (dt[1].PublishedDate > now - Constant.AuthTokenDoubtLeakSpan && subscriber.AuthScheme == AuthScheme.Web.ToString())
                    {
                        throw new DoubtfulAuthBehaviorException("�Z���Ԃɑ����̔F�؃g�[�N���̔��s��v������܂���");
                    }
                }

                DataSet.TokenRow r2 = dt[dt.Count - 1];
                TokenVerifier v = new TokenVerifier(r2, now);
                if (v.IsFresh)
                {
                    return r2;
                }
            }

            for (int i = 0; i < dt.Count - Constant.AuthTokenMaxCount + 1; i++)
            {
                dt[i].Delete();
            }
            string tokenBody = Guid.NewGuid().ToString("N");
            DataSet.TokenRow t = dt.AddTokenRow(subscriber, now, tokenBody);
            ta.Update(dt);

            return t;
        }
コード例 #2
0
        private DataSet.SubscriberRow PrepareExist(DataSet.TitleRow title)
        {
            SubscriberTableAdapter sta = new SubscriberTableAdapter();
            DataSet.SubscriberDataTable sdt = new DataSet.SubscriberDataTable();
            sdt.AddSubscriberRow(title, "deadbeef", AuthScheme.iOS_APNs.ToString(), Constant.Ago);
            sta.Update(sdt);
            DataSet.SubscriberRow subscriber = sdt[0];

            APNsTableAdapter ata = new APNsTableAdapter();
            DataSet.APNsDataTable adt = new DataSet.APNsDataTable();
            adt.AddAPNsRow(subscriber, "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef", false, 0, false);
            ata.Update(adt);

            TokenTableAdapter tta = new TokenTableAdapter();
            DataSet.TokenDataTable tdt = new DataSet.TokenDataTable();
            tdt.AddTokenRow(subscriber, DateTime.Now - new TimeSpan(48, 0, 0), "deadbeef");
            tta.Update(tdt);

            return subscriber;
        }