Пример #1
0
        public IHttpActionResult PutContraction(int id, Contraction contraction)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != contraction.Id || !CurrentUser.Contractions.Any(c => c.Id == id))
            {
                return(BadRequest());
            }

            db.Entry(contraction).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ContractionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Пример #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            Contraction contraction = db.Contractions.Find(id);

            CurrentUser.Contractions.Remove(contraction);
            db.Contractions.Remove(contraction);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
        public static XElement WriteContractionXML(Artifact item, DateTime AbsoluteStart)
        {
            Contraction ctrItem = item.ArtifactData as Contraction;
            XElement    value   = new XElement("contraction",
                                               new XAttribute("start", ((int)((item.StartTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture)),
                                               new XAttribute("peak", ((int)((ctrItem.PeakTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture)),
                                               new XAttribute("end", ((int)((item.EndTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture)));

            return(value);
        }
Пример #4
0
 public ActionResult Edit([Bind(Include = "Id,StartTime,EndTime")] Contraction contraction)
 {
     if (ModelState.IsValid)
     {
         db.Entry(contraction).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(contraction));
 }
Пример #5
0
        public IHttpActionResult GetContraction(int id)
        {
            Contraction contraction = CurrentUser.Contractions.Find(c => c.Id == id);

            if (contraction == null)
            {
                return(NotFound());
            }

            return(Ok(contraction));
        }
Пример #6
0
        public ActionResult Create([Bind(Include = "Id,StartTime,EndTime")] Contraction contraction)
        {
            if (ModelState.IsValid)
            {
                CurrentUser.Contractions.Add(contraction);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(contraction));
        }
Пример #7
0
 public IHttpActionResult PostInsertContraction([FromBody] Contraction c)
 {
     try
     {
         Contraction contraction = _BAL.InsertContraction(c.UserID, c.StartTime, c.EndTime, c.Length, c.TimeApart, c.DateTime);
         return(Created(new Uri(Url.Link("GetContractionByUserId", new { id = c.UserID })), c));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Пример #8
0
        public IHttpActionResult PostContraction(Contraction contraction)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            CurrentUser.Contractions.Add(contraction);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = contraction.Id }, contraction));
        }
Пример #9
0
        public IHttpActionResult DeleteContraction(int id)
        {
            Contraction contraction = CurrentUser.Contractions.FirstOrDefault(c => c.Id == id);

            if (contraction == null)
            {
                return(NotFound());
            }

            db.Contractions.Remove(contraction);
            db.SaveChanges();

            return(Ok(contraction));
        }
Пример #10
0
        // GET: Contractions/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null || CurrentUser.Contractions.All(c => c.Id != id))
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Contraction contraction = db.Contractions.Find(id);

            if (contraction == null)
            {
                return(HttpNotFound());
            }
            return(View(contraction));
        }
Пример #11
0
        // GET: Contractions/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Contraction contraction = CurrentUser.Contractions.Find(c => c.Id == id);

            if (contraction == null)
            {
                return(HttpNotFound());
            }
            return(View(contraction));
        }
        private void FindContractions(int chunk)
        {
            int         from, to, run, bestRun, bestOffset;
            Contraction contraction;

            _contractions[chunk] = new List <Contraction>();

            from = chunk * _threadChunk;
            to   = Math.Min(from + _threadChunk, _sourceLen);

            for (int i = from; i < to;)
            {
                bestRun    = 0;
                bestOffset = 0;

                for (int j = i - 1; j > 0 && j >= i - _lookBackCache; j--)
                {
                    run = 0;

                    while (i + run < _sourceLen && run < 0x111 && _pSrc[j + run] == _pSrc[i + run])
                    {
                        run++;
                    }

                    if (run > bestRun)
                    {
                        bestRun    = run;
                        bestOffset = i - j - 1;

                        if (run == 0x111)
                        {
                            break;
                        }
                    }
                }

                if (bestRun >= 3)
                {
                    contraction = new Contraction(i, bestRun, bestOffset);
                    _contractions[chunk].Add(contraction);
                    i += bestRun;
                }
                else
                {
                    i++;
                }
            }
        }
Пример #13
0
 public IHttpActionResult PostDeleteContractionByUserId([FromBody] Contraction c)
 {
     try
     {
         bool isDeleted = _BAL.DeleteContractionByUserId(c.UserID);
         if (!isDeleted)
         {
             return(Content(HttpStatusCode.BadRequest, isDeleted));
         }
         return(Ok(isDeleted));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Пример #14
0
        public static Contraction InsertContraction(int userId, string startTime, string endTime, string length, string timeApart, string dateTime)
        {
            Contraction contraction = null;
            DataTable   res         = _DAL.InsertContraction(userId, startTime, endTime, length, timeApart, dateTime);

            if (res == null)
            {
                return(null);
            }

            contraction = new Contraction()
            {
                UserID = userId
            };

            return(contraction);
        }
Пример #15
0
        public static string WriteContractionDAT(Artifact item, DateTime AbsoluteStart)
        {
            Contraction   ctrItem = item.ArtifactData as Contraction;
            StringBuilder value   = new StringBuilder(255);

            value.Append("CTR|");
            value.Append(((int)((item.StartTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture));
            value.Append("|");
            value.Append(((int)((ctrItem.PeakTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture));
            value.Append("|");
            value.Append(((int)((item.EndTime - AbsoluteStart).TotalSeconds)).ToString(CultureInfo.InvariantCulture));
            value.Append("|");
            value.Append("y"); // Is final
            value.Append("|");
            value.Append("n"); // Is Strikeout
            value.Append("|");
            value.Append(item.ArtifactData.Id.ToString(CultureInfo.InvariantCulture));

            return(value.ToString());
        }
Пример #16
0
        private void FindContractions(int chunk)
        {
            int from, to, run, bestRun, bestOffset;
            Contraction contraction;

            _contractions[chunk] = new List<Contraction>();

            from = chunk * _threadChunk;
            to = Math.Min(from + _threadChunk, _sourceLen);

            for (int i = from; i < to; )
            {
                bestRun = 0;
                bestOffset = 0;

                for (int j = i - 1; j > 0 && j >= i - _lookBackCache; j--)
                {
                    run = 0;

                    while (i + run < _sourceLen && run < 0x111 && _pSrc[j + run] == _pSrc[i + run])
                        run++;

                    if (run > bestRun)
                    {
                        bestRun = run;
                        bestOffset = i - j - 1;

                        if (run == 0x111) break;
                    }
                }

                if (bestRun >= 3)
                {
                    contraction = new Contraction(i, bestRun, bestOffset);
                    _contractions[chunk].Add(contraction);
                    i += bestRun;
                }
                else
                    i++;
            }
        }