⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timelistener.java

📁 网站即时通讯系统
💻 JAVA
字号:
/* Copyright (C) 2003 Adam Olsen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */package com.valhalla.jbother.jabber.smack;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.TimeZone;import org.jivesoftware.smack.PacketListener;import org.jivesoftware.smack.packet.IQ;import org.jivesoftware.smack.packet.Packet;import org.jivesoftware.smackx.packet.Time;import com.valhalla.jbother.BuddyList;/** * Listens for and responds to jabber:iq:time requests *  * @author Adam Olsen * @version 1.0 */public class TimeListener implements PacketListener {    /**     * Event listener called when a Time packet is received     *      * @param message     *            the version packet received     */    public void processPacket(Packet message) {        if (!(message instanceof Time)                || ((IQ) message).getType() != IQ.Type.GET)            return;        Time time = (Time) message;        String from = message.getFrom();        String to = message.getTo();        com.valhalla.Logger.debug("Time request received from " + from);        Calendar cal = Calendar.getInstance();        SimpleDateFormat utcFormat = new SimpleDateFormat("yyyyMMdd'T'hh:mm:ss");        DateFormat displayFormat = DateFormat.getDateTimeInstance();        TimeZone timeZone = cal.getTimeZone();        time.setTz(cal.getTimeZone().getID());        time.setDisplay(displayFormat.format(cal.getTime()));        // Convert local time to the UTC time.        time.setUtc(utcFormat.format(new Date(cal.getTimeInMillis()                - timeZone.getOffset(cal.getTimeInMillis()))));        time.setTo(from);        time.setFrom(to);        time.setType(IQ.Type.RESULT);        // send the response        if (BuddyList.getInstance().checkConnection())            BuddyList.getInstance().getConnection().sendPacket(time);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -