source: branches/2.2/jabberit_messenger/java_source/src/nu/fw/jeti/jabber/elements/JetiPrivateRosterExtension.java @ 3102

Revision 3102, 2.4 KB checked in by amuller, 14 years ago (diff)

Ticket #986 - Efetuado merge para o Branch 2.2( atualizacao do modulo)

  • Property svn:executable set to *
Line 
1/*
2 *      Jeti, a Java Jabber client, Copyright (C) 2003 E.S. de Boer 
3 *
4 *  This program is free software; you can redistribute it and/or modify
5 *  it under the terms of the GNU General Public License as published by
6 *  the Free Software Foundation; either version 2 of the License, or
7 *  (at your option) any later version.
8 *
9 *  This program is distributed in the hope that it will be useful,
10 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
11 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 *      GNU General Public License for more details.
13 *
14 *  You should have received a copy of the GNU General Public License
15 *  along with this program; if not, write to the Free Software
16 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17 *
18 *      For questions, comments etc,
19 *      use the website at http://jeti.jabberstudio.org
20 *  or mail me at eric@jeti.tk
21 *
22 *      Created on 21-nov-2003
23 */
24 
25package nu.fw.jeti.jabber.elements;
26
27import nu.fw.jeti.jabber.Backend;
28
29/**
30 * @author E.S. de Boer
31 *
32 */
33public class JetiPrivateRosterExtension extends Extension implements IQXExtension
34{
35    private String[] openGroups ;
36        private String xmlVer;
37        public final static String XML_VERSION ="v1";
38
39        public JetiPrivateRosterExtension(){}
40
41        public JetiPrivateRosterExtension(String[] openGroups)
42        {
43                this.openGroups = openGroups;
44                xmlVer = XML_VERSION;
45        }
46       
47        public JetiPrivateRosterExtension(String[] openGroups, String xmlVersion)
48        {
49                this.openGroups = openGroups;
50                xmlVer = xmlVersion;
51        }
52
53    public String[] getOpenGroups()
54    {
55            return openGroups;
56    }
57   
58    public boolean isCorrectVersion()
59    {
60            return XML_VERSION.equals(xmlVer);
61        }
62
63
64        public String getXmlVersion()
65    {
66            return xmlVer;
67        }
68       
69        public void execute(InfoQuery iq,Backend backend)
70        {
71                if (iq.getType().equals("result"))
72                {
73                        backend.getMain().openGroups(this);
74                }
75                else if (iq.getType().equals("error"))
76                {
77                        System.err.println(iq.getErrorDescription());
78                }
79        }
80       
81
82        public void appendToXML(StringBuffer retval)
83        {
84                retval.append("<jeti xmlns='jeti:rosterprefs'");
85                if (openGroups == null)
86                { //short cut
87                        retval.append("/>");
88                        return;
89                }
90                appendAttribute(retval,"xmlVersion",xmlVer);
91                retval.append(">");
92                if(openGroups != null)
93                {
94                        for (int i=0;i<openGroups.length;i++)
95                        {
96                                appendElement(retval,openGroups[i],true);
97                        }
98                }
99                retval.append("</jeti>");
100        }
101}
102/*
103 * Overrides for emacs
104 * Local variables:
105 * tab-width: 4
106 * End:
107 */
Note: See TracBrowser for help on using the repository browser.