/** Clean up data. */ public void cleanUpData() { Long aWeekAgo = System.currentTimeMillis() - 604800000; List<Chatter> chatterList = selectAllChatter(aWeekAgo); for (Chatter c : chatterList) { deleteSingleData(c.getId()); } }
/** * Insert chatter. * * @param chatter the chatter * @return the long */ public long insertChatter(Chatter chatter) { this.insertChatter.bindString(1, chatter.getChatterId()); this.insertChatter.bindString(2, chatter.getActor()); this.insertChatter.bindString(3, chatter.getPost()); this.insertChatter.bindLong(4, chatter.getCommentCount()); this.insertChatter.bindLong(5, chatter.getLikeCount()); this.insertChatter.bindLong(6, System.currentTimeMillis()); return this.insertChatter.executeInsert(); }
/** * subscribte to the chatroom * * @param chatter */ public void subscribe(Chatter chatter) { chatter.addMessage(SIGNAL + "Welcome " + chatter.getSender() + SIGNAL); synchronized (_chatters) { _chatters.add(chatter); } say( chatter.getSender(), getDateTime() + ": " + SIGNAL + chatter.getSender() + " join this chatroom" + SIGNAL); }
/** * unsubsctibe to the chatroom * * @param chatter */ public void unsubscribe(Chatter chatter) { _chatters.remove(chatter); chatter.addMessage(SIGNAL + "Bye " + chatter.getSender() + SIGNAL); synchronized (_chatters) { for (Chatter _chatter : _chatters) _chatter.addMessage( getDateTime() + ": " + SIGNAL + chatter.getSender() + " leaves the chat room!" + SIGNAL); } }
/** * Broadcasts a message to all listeners of the channel. * * @param message */ public void broadcast(Chatter sender, ChatArguments message) { ChannelBroadcastEvent event = plugin .getEngine() .getEventManager() .callEvent(new ChannelBroadcastEvent(this, sender, message)); sender = event.getSender(); message = event.getMessage(); Placeholders.format(Placeholders.MESSAGE, format, message); for (Chatter chatter : listeners) { if (sender != null && !chatter.canHear(sender, this)) { continue; } chatter.getParent().sendMessage(format); } if (bot != null && ircEnabled) { bot.sendMessage(message); } plugin.getChatLogger().log(message); }
/** * Bans a name from the channel * * @param name of chatter * @param kick whether to kick if online * @param reason for kick */ public void ban(String name, boolean kick, ChatArguments reason) { ChannelBanEvent event = plugin .getEngine() .getEventManager() .callEvent(new ChannelBanEvent(this, name, kick, reason)); if (event.isCancelled()) { return; } name = event.getName(); if (event.isKicked()) { Chatter chatter = plugin.getChatters().get(name); if (chatter == null) { return; } chatter.kick(this, event.getReason()); } banned.add(name); if (autoSave) { save(); } }
/** * Update data. * * @param chatterList the chatter list */ public void updateData(List<Chatter> chatterList) { for (Chatter chatter : chatterList) { ContentValues vals = new ContentValues(); vals.put("chatterId", chatter.getChatterId()); vals.put("actor", chatter.getActor()); vals.put("post", chatter.getPost()); vals.put("commentCount", chatter.getCommentCount()); vals.put("likeCount", chatter.getLikeCount()); vals.put("createTime", System.currentTimeMillis()); this.db.update(TABLE_CHATTER, vals, "id=" + chatter.getId(), null); } }
/** * Select all data. * * @return the list of Items */ public Map<String, Chatter> selectAllChatterMap() { Map<String, Chatter> map = new HashMap<String, Chatter>(); Cursor cursor = this.db.rawQuery("SELECT * FROM " + TABLE_CHATTER, null); if (cursor.moveToFirst()) { do { Chatter c = new Chatter(); c.setId(cursor.getLong(0)); c.setChatterId(cursor.getString(1)); c.setActor(cursor.getString(2)); c.setPost(cursor.getString(3)); c.setCommentCount(cursor.getInt(4)); c.setLikeCount(cursor.getInt(5)); c.setCreateTime(cursor.getLong(6)); map.put(c.getChatterId(), c); } while (cursor.moveToNext()); } if (cursor != null && !cursor.isClosed()) { cursor.close(); } return map; }
/** * Select all data. * * @return the list of Items */ public List<Chatter> selectAllChatter() { List<Chatter> list = new ArrayList<Chatter>(); Cursor cursor = this.db.rawQuery("SELECT * FROM " + TABLE_CHATTER, null); if (cursor.moveToFirst()) { do { Chatter c = new Chatter(); c.setId(cursor.getLong(0)); c.setChatterId(cursor.getString(1)); c.setActor(cursor.getString(2)); c.setPost(cursor.getString(3)); c.setCommentCount(cursor.getInt(4)); c.setLikeCount(cursor.getInt(5)); c.setCreateTime(cursor.getLong(6)); list.add(c); } while (cursor.moveToNext()); } if (cursor != null && !cursor.isClosed()) { cursor.close(); } return list; }
private void say(String sender, String message) { synchronized (_chatters) { for (Chatter _chatter : _chatters) if (!_chatter.getSender().equals(sender)) _chatter.addMessage(message); } }