/[projects]/miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/message/MessageWrapper.java
ViewVC logotype

Annotation of /miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/message/MessageWrapper.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3207 - (hide annotations) (download)
Sat Aug 19 14:06:42 2017 UTC (6 years, 9 months ago) by torben
File size: 2130 byte(s)
Outcomment ebean related code
1 torben 1768 package dk.thoerup.bukkit.hoeruputils.message;
2 torben 3207 /*
3 torben 1768 import java.util.List;
4     import java.util.logging.Level;
5    
6     import javax.persistence.PersistenceException;
7    
8     import org.bukkit.OfflinePlayer;
9     import org.bukkit.entity.Player;
10     import org.bukkit.event.EventHandler;
11     import org.bukkit.event.Listener;
12     import org.bukkit.event.player.PlayerLoginEvent;
13     import org.bukkit.plugin.Plugin;
14     import org.bukkit.scheduler.BukkitScheduler;
15    
16    
17 torben 3203
18     import io.ebean.Ebean;
19     import io.ebean.EbeanServer;
20    
21 torben 1803 import java.sql.Timestamp;
22    
23 torben 1768 public class MessageWrapper implements Listener {
24    
25     EbeanServer server;
26     Plugin plugin;
27    
28    
29 torben 3203 public MessageWrapper(Plugin plugin) {
30 torben 1768 this.plugin = plugin;
31 torben 3203 server = Ebean.getDefaultServer();
32 torben 1768
33 torben 3203
34     server.find(MessageBean.class).findCount(); //probe
35 torben 1768 }
36    
37     @EventHandler
38     public void onPlayerLogin(final PlayerLoginEvent event) {
39 torben 1772 final Player player = event.getPlayer();
40 torben 1768
41     Runnable messagehandler = new Runnable() {
42     @Override
43 torben 1772 public void run() {
44 torben 1768 List<MessageBean> beans = server.find( MessageBean.class)
45     .where()
46     .eq("player", player.getName() )
47     .eq("isread", 0)
48     .findList();
49    
50     for(MessageBean msg : beans) {
51     player.sendMessage( msg.getMessage() );
52     msg.setIsread(true);
53 torben 1803 msg.setReadtime( new Timestamp(System.currentTimeMillis()) );
54 torben 1768 server.save(msg);
55     }
56     }
57     };
58    
59     BukkitScheduler sched = plugin.getServer().getScheduler();
60     sched.scheduleSyncDelayedTask(plugin, messagehandler, 20*4);
61    
62     }
63    
64 torben 1803 public void sendMessage(String from, OfflinePlayer player, String message) {
65 torben 1768 if (player.isOnline()) {
66     Player online = (Player) player;
67     online.sendMessage(message);
68     } else {
69 torben 1803 queueMessage(from, player.getName(), message);
70 torben 1768 }
71     }
72    
73 torben 1803 protected void queueMessage(String from, String player, String message) {
74 torben 1768
75     MessageBean msg = new MessageBean();
76 torben 1803 msg.setFromplayer(from);
77 torben 1768 msg.setPlayer(player);
78     msg.setMessage(message);
79 torben 1803 msg.setCreatetimeNow();;
80 torben 1768 try {
81     server.save(msg);
82     } catch (PersistenceException e) {
83     plugin.getLogger().log(Level.SEVERE, "MessageWrapper.queueMessage() failed:" + e.getMessage() );
84     }
85    
86    
87     }
88    
89     }
90 torben 3207 */

  ViewVC Help
Powered by ViewVC 1.1.20