示例#1
0
 public void addLikeLoadedFromDB(VerseTagEmotionLike like)
 {
     lock (thisLock)
     {
         if (like != null)
         {
             long key = /*like.id + "|" + */ like.user_id;
             if (!likes.ContainsKey(key))
             {
                 this.likes.Add(key, like);
             }
         }
     }
 }
示例#2
0
 public TaggedVerseLikeTask(VerseTagEmotionLike vtel)
 {
     this.vtel = vtel;
 }
示例#3
0
 private VerseTag getVerseTag(VerseTagEmotionLike like, int emotion_id)
 {
     List<VerseTag> vts = getInstance().getListOfVerseTagsForEmotion(emotion_id);
     foreach (VerseTag vt in vts)
     {
         if (vt.id == like.emotion_tag_id)
         {
             return vt;
         }
     }
     return null;
 }
示例#4
0
 public static void loadVerseTagLikes()
 {
     string sqlQuery = "SELECT etl.id, emo_tag_id, etl.user_id, etl.datetime, emotion_id  from emotion_tag_likes etl " +
                        " INNER JOIN emotion_tag et ON etl.emo_tag_id = et.id";
     MySqlConnection conn = DBManager.getConnection();
     try
     {
         conn.Open();
         MySqlCommand cmd = new MySqlCommand(sqlQuery, conn);
         MySqlDataReader rdr = cmd.ExecuteReader();
         long id = -1;
         int emotion_tag_id;
         long user_id;
         DateTime datetime;
         int emotion;
         while (rdr.Read())
         {
             id = long.Parse((rdr[0]).ToString());
             emotion_tag_id = Int32.Parse((rdr[1]).ToString());
             user_id = long.Parse((rdr[2]).ToString());
             datetime = DateTime.Parse(rdr[3].ToString());
             emotion = Int32.Parse((rdr[4]).ToString());
             VerseTagEmotionLike like = new VerseTagEmotionLike(id, emotion_tag_id, user_id, datetime);
             List<VerseTagEmotion> emotions = getInstance().getListOfEmotions();
             VerseTag vt = getInstance().getVerseTag(like, emotion);
             vt.addLikeLoadedFromDB(like);
         }
         rdr.Close();
         conn.Close();
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.StackTrace);
         conn.Close();
     }
     finally
     {
         if (conn != null)
             conn.Close();
     }
 }
示例#5
0
 public void addNewLike(VerseTagEmotionLike like)
 {
     lock (thisLock)
     {
         if (like != null)
         {
             long key = /*like.id + "|" + */ like.user_id;
             if (!likes.ContainsKey(key))
             {
                 this.likes.Add(key, like);
                 new TaggedVerseLikeTask(like).AddTaggedVerseLike();
             }
         }
     }
 }
示例#6
0
 public void unLike(VerseTagEmotionLike like)
 {
     lock (thisLock)
     {
         if (like != null)
         {
             long key = /*like.id + "|" + */ like.user_id;
             if (likes.ContainsKey(key))
             {
                 this.likes.Remove(key);
             }
         }
     }
 }