1 ////////////////////////////////////////////////////////////////////////////// 2 // dexterIM - Instant Messaging Framework 3 // Copyright (C) 2003 Christoph Walcher 4 // 5 // This program is free software; you can redistribute it and/or modify 6 // it under the terms of the GNU General Public License as published by 7 // the Free Software Foundation; either version 2 of the License, or 8 // (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // You should have received a copy of the GNU General Public License 16 // along with this program; if not, write to the Free Software 17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 ////////////////////////////////////////////////////////////////////////////// 19 package net.sf.dexterim.oscar.io; 20 21 import net.sf.dexterim.oscar.entity.DWord; 22 import net.sf.dexterim.oscar.entity.Flap; 23 import net.sf.dexterim.oscar.server.Response; 24 import net.sf.dexterim.oscar.server.WelcomeResponse; 25 26 /*** 27 * @author christoph 28 */ 29 public class ConnectionNegotiationParser implements MessageParser { 30 31 /* (non-Javadoc) 32 * @see net.sf.dexterim.oscar.io.MessageParser#parse(net.sf.dexterim.oscar.io.Flap) 33 */ 34 public Response parse(Flap flap) { 35 36 if (flap.getLength() == 4) { 37 byte welcomeArray[] = new byte[flap.getLength()]; 38 System.arraycopy(flap.getData(), 0, welcomeArray, 0, welcomeArray.length); 39 40 DWord welcomeId = new DWord(welcomeArray); 41 42 if (welcomeId.getValue() == 0x0001) { 43 return new WelcomeResponse(); 44 } 45 } 46 47 return null; 48 } 49 }