public HtmlWord ReadHtmlWord(HtmlWord model) { return(Session.QueryOver <HtmlWord>() .Where(m => (m.UserId == model.UserId) && (m.HtmlId == model.HtmlId) && (m.HtmlWordId == model.HtmlWordId)) .SingleOrDefault <HtmlWord>()); }
public HtmlWord CreateHtmlWord(HtmlWord model) { HtmlWord rtn; Session.Clear(); rtn = Session.Save(model) as HtmlWord; Session.Flush(); return(rtn); }
private void HandleHtwdCommand(String argument) { if (!isLogin) { SendResponse(ProtocolResponse.NotLoggedIn, "로그인 후 사용하세요."); return; } String[] split = argument.Split(new char[] { ',' }, 2); HtmlModel mHtml = new HtmlModel(); mHtml.UserId = userId; mHtml.HtmlId = htmlDao.ReadMaxHtmlId(userId) + 1; mHtml.URL = split[0].Split('|')[2]; mHtml.CreateTime = DateTime.Now; htmlDao.CreateHtml(mHtml); HtmlWord mHtmlWord = new HtmlWord(); mHtmlWord.UserId = mHtml.UserId; mHtmlWord.HtmlId = mHtml.HtmlId; foreach (String htmlWord in split[1].Trim().Split(' ')) { mHtmlWord.Word = htmlWord.ToLower(); mHtmlWord = htmlWordDao.ReadHtmlWordUsingWord(mHtmlWord); if (mHtmlWord == null) { mHtmlWord = new HtmlWord(); mHtmlWord.UserId = mHtml.UserId; mHtmlWord.HtmlId = mHtml.HtmlId; mHtmlWord.HtmlWordId = htmlWordDao.ReadMaxHtmlWordId(mHtml) + 1; mHtmlWord.Word = htmlWord.ToLower(); mHtmlWord.WordCount = 1; htmlWordDao.CreateHtmlWord(mHtmlWord); } else { mHtmlWord.WordCount += 1; htmlWordDao.UpdateHtmlWord(mHtmlWord); } } SendResponse(ProtocolResponse.CommandOkay, "HTML 정보가 추가되었습니다."); }
public HtmlWord ReadHtmlWordUsingWord(HtmlWord model) { Session.Clear(); ISQLQuery query = Session.CreateSQLQuery( " SELECT *" + " FROM TBL_HTML_WORD" + " WHERE USR_ID = :userId" + " AND HTML_ID = :htmlId" + " AND HTML_WD = :htmlWord"); query.SetParameter("userId", model.UserId); query.SetParameter("htmlId", model.HtmlId); query.SetParameter("htmlWord", model.Word); query.AddEntity(typeof(HtmlWord)); return((HtmlWord)query.UniqueResult()); }
private static NodeChange CompareNodeStacks(HtmlWord x, HtmlWord y, out HtmlNode[] droppedNodes, out HtmlNode[] addedNodes) { var droppedList = new List <HtmlNode>(); var addedList = new List <HtmlNode>(); // traverse x's NodeStack backwards to see which nodes // do not include y (and are therefore "finished") foreach (var node in x.NodeStack.Reverse()) { if (!Array.Exists(y.NodeStack, n => n.Equals(node))) { droppedList.Add(node); } } // traverse y's NodeStack forwards to see which nodes // do not include x (and are therefore "new") foreach (var node in y.NodeStack) { if (!Array.Exists(x.NodeStack, n => n.Equals(node))) { addedList.Add(node); } } droppedNodes = droppedList.ToArray(); addedNodes = addedList.ToArray(); NodeChange change = NodeChange.None; if (droppedNodes.Length > 0) { change &= NodeChange.Dropped; } if (addedNodes.Length > 0) { change &= NodeChange.Added; } // could maybe use this in some later revision? // not worth the effort right now... return(change); }
private static NodeChange CompareNodeStacks(HtmlWord x, HtmlWord y, out HtmlNode[] droppedNodes, out HtmlNode[] addedNodes) { var droppedList = new List<HtmlNode>(); var addedList = new List<HtmlNode>(); // traverse x's NodeStack backwards to see which nodes // do not include y (and are therefore "finished") foreach (var node in x.NodeStack.Reverse()) { if (!Array.Exists(y.NodeStack, n => n.Equals(node))) droppedList.Add(node); } // traverse y's NodeStack forwards to see which nodes // do not include x (and are therefore "new") foreach (var node in y.NodeStack) { if (!Array.Exists(x.NodeStack, n => n.Equals(node))) addedList.Add(node); } droppedNodes = droppedList.ToArray(); addedNodes = addedList.ToArray(); NodeChange change = NodeChange.None; if (droppedNodes.Length > 0) change &= NodeChange.Dropped; if (addedNodes.Length > 0) change &= NodeChange.Added; // could maybe use this in some later revision? // not worth the effort right now... return change; }
public void DeleteHtmlWord(HtmlWord model) { Session.Clear(); Session.Delete(model); Session.Flush(); }
public void UpdateHtmlWord(HtmlWord model) { Session.Clear(); Session.Update(model); Session.Flush(); }