PK
ï›8 META-INF/þÊ PK
î›8œêj j META-INF/MANIFEST.MFManifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 1.5.0_12-b04 (Sun Microsystems Inc.)
PK
î›8 WEB-INF/PK
î›8 WEB-INF/classes/PK
î›8 WEB-INF/classes/META-INF/PK
î›8 WEB-INF/classes/org/PK
î›8 WEB-INF/classes/org/jvnet/PK
î›8 $ WEB-INF/classes/org/jvnet/glassfish/PK
î›8 , WEB-INF/classes/org/jvnet/glassfish/samples/PK
î›8 5 WEB-INF/classes/org/jvnet/glassfish/samples/imserver/PK
î›8
WEB-INF/wsdl/PK
î›8EòÓHs s ( WEB-INF/classes/META-INF/persistence.xml
PK
î›8^¶ÊØÙ) Ù) D WEB-INF/classes/org/jvnet/glassfish/samples/imserver/$IMServer.classÊþº¾ 1·
w Î Ï Ð Ñ
Î Ò
Ó
Ô
Õ
Ö ×
v Ø Ù Ú Û Ü Ù Ý Þ ß à á â
v ã
O ä
u å
O æ Ù ç
O è
é ê
v ë
v ì í
v î
v ï ð
O ñ ò ó ô õ
O ö Ù ÷ v ø ù ú û ü ý Û þ ÿ Û Ù
Õ
u
u
6
v
ù ù Ù Ù Ü
v
v
v ò
O Ù
!"#$
O Î
O%
O&
O'
é()* Ù+,
X Î
X-
X.
X/
O01 Ï23456
O789:
O;<= Ù>
X?
X+
X@ ÙABC
ODEFGHGIJKL sf Ljavax/servlet/sip/SipFactory; RuntimeVisibleAnnotations Ljavax/annotation/Resource; className Ljava/lang/String;
ConstantValueM ()V Code LineNumberTable LocalVariableTable this 0Lorg/jvnet/glassfish/samples/imserver/$IMServer;
doRegister ((Ljavax/servlet/sip/SipServletRequest;)V request %Ljavax/servlet/sip/SipServletRequest; resp &Ljavax/servlet/sip/SipServletResponse;
ExceptionsNO doSubscribe friendID person -Lorg/jvnet/glassfish/samples/imserver/Person; doNotify doMessage proxy Ljavax/servlet/sip/Proxy; to p
doResponse )(Ljavax/servlet/sip/SipServletResponse;)V response getFrom A(Ljavax/servlet/sip/SipServletRequest;)Ljavax/servlet/sip/SipURI; addr Ljavax/servlet/sip/Address; from Ljavax/servlet/sip/SipURI; stringURI ex Ljava/lang/Exception; subscribeForPresenceEvents sReq
sourceAddress processRegistration
isRegister Z ((Ljavax/servlet/sip/SipServletRequest;)Z expires
expiresVal I
findPerson T(Ljavax/servlet/sip/SipServletRequest;)Lorg/jvnet/glassfish/samples/imserver/Person; sipURI personId getSourceAddress createAndAddPersonToDB updatePersonDetails U(Lorg/jvnet/glassfish/samples/imserver/Person;Ljavax/servlet/sip/SipServletRequest;)V storePresenceInformation subscriptionState contentType content Ljava/lang/Object; presenceInformation :Lorg/jvnet/glassfish/samples/imserver/PresenceInformation; event
presenceEvent sendPresenceInformation ](Lorg/jvnet/glassfish/samples/imserver/Person;Lorg/jvnet/glassfish/samples/imserver/Person;)V sess Ljavax/servlet/sip/SipSession; notifyReq #sendPresenceInformationToAllFriends 0(Lorg/jvnet/glassfish/samples/imserver/Person;)V friend i$ Ljava/util/Iterator;
SourceFile $IMServer.java )Ljavax/servlet/sip/annotation/SipServlet; € PQR java/lang/StringBuilder /$IMServer :: doRegister, incoming request =
STSUVWXYZ © ˆ[\]^_ `a javax/servlet/sip/SipURIbW &$IMServer :: doSubscribe for friend : , incoming request =
° ±cWdefZghijklm Á Â ¦ ˆ ,$IMServer :: doNotify, incoming request =
¸ ± Æ Ç -$IMServer :: doMessage, incoming request =
nqrst personID = +, proxying request to presentLocationURI = uWvw x yxyz{|} /$IMServer :: doResponse, incoming response =
~W NOTIFYW OK 'Received OK response for NOTIFY request From€‚ƒa„ ;…†‡ˆ java/lang/Exception‰ ´ žŠ‹ SUBSCRIBEŒ Event presenceŽ Expires 3600 H$IMServer :: subscribeForPresenceEvents, outgoing SUBSCRIBE request =
$Unable to send SUBSCRIBE request to ª ¬ µ ± Added new Person to DB : ¶ · "Updated status of existing person Unregistering person : t‘’“”•–† Contact +org/jvnet/glassfish/samples/imserver/Person—Z˜Z™Zš Ç Subscription-State Content-Type›œ 8org/jvnet/glassfish/samples/imserver/PresenceInformationZžZŸ ¡¢ -Successfully stored presence information for £R f$IMServer :: SipServletRequest contains the presence information, but unable to retrieve and store it. X$IMServer :: storePresenceInformation : There is no presence information in the request. OUnable to NOTIFY friend because either one of the following is null ::
from =
to = ¤¥ 0$IMServer :: sendPresenceInformation() : from = , to = , presenceInformation = ¦§¨Œ©ª«W¬WŸ Vchatserver.RegistrationServer :: sendPresenceInformation : sending notify request =
*Unable to NOTIFY friends because person = ®¯°±²³´µ¶œ java/lang/String .org/jvnet/glassfish/samples/imserver/$IMServer javax/servlet/sip/SipServlet $IMServer javax/servlet/ServletException java/io/IOException java/lang/System out Ljava/io/PrintStream; append -(Ljava/lang/String;)Ljava/lang/StringBuilder; -(Ljava/lang/Object;)Ljava/lang/StringBuilder; toString ()Ljava/lang/String; java/io/PrintStream println (Ljava/lang/String;)V #javax/servlet/sip/SipServletRequest createResponse )(I)Ljavax/servlet/sip/SipServletResponse; $javax/servlet/sip/SipServletResponse send
getRequestURI ()Ljavax/servlet/sip/URI; getUser getId equals (Ljava/lang/Object;)Z addFriendID
getSession ()Ljavax/servlet/sip/SipSession; setSubscriptionSession 3(Ljava/lang/String;Ljavax/servlet/sip/SipSession;)V -org/jvnet/glassfish/samples/imserver/PersonDB findPersonById A(Ljava/lang/String;)Lorg/jvnet/glassfish/samples/imserver/Person; getStatus Status InnerClasses 6()Lorg/jvnet/glassfish/samples/imserver/Person$Status; 2org/jvnet/glassfish/samples/imserver/Person$Status ONLINE 4Lorg/jvnet/glassfish/samples/imserver/Person$Status; getPresentLocationURI getProxy ()Ljavax/servlet/sip/Proxy; javax/servlet/sip/SipFactory createURI +(Ljava/lang/String;)Ljavax/servlet/sip/URI; javax/servlet/sip/Proxy proxyTo (Ljavax/servlet/sip/URI;)V getMethod getReasonPhrase getAddressHeader /(Ljava/lang/String;)Ljavax/servlet/sip/Address; javax/servlet/sip/Address getURI java/lang/Object indexOf (Ljava/lang/String;)I substring (II)Ljava/lang/String; printStackTrace createApplicationSession +()Ljavax/servlet/sip/SipApplicationSession;
createRequest (Ljavax/servlet/sip/SipApplicationSession;Ljava/lang/String;Ljavax/servlet/sip/URI;Ljavax/servlet/sip/URI;)Ljavax/servlet/sip/SipServletRequest; addHeader '(Ljava/lang/String;Ljava/lang/String;)V OFFLINE setStatus 7(Lorg/jvnet/glassfish/samples/imserver/Person$Status;)V getHeader &(Ljava/lang/String;)Ljava/lang/String; java/lang/Integer parseInt setId setName setPresentLocationURI addPerson
getContent ()Ljava/lang/Object; setSubscriptionState setContentType
setContent (Ljava/lang/Object;)V setPresenceInformation =(Lorg/jvnet/glassfish/samples/imserver/PresenceInformation;)V err getPresenceInformation <()Lorg/jvnet/glassfish/samples/imserver/PresenceInformation; getSubscriptionSession 2(Ljava/lang/String;)Ljavax/servlet/sip/SipSession; javax/servlet/sip/SipSession 9(Ljava/lang/String;)Ljavax/servlet/sip/SipServletRequest; setHeader getSubscriptionState getContentType '(Ljava/lang/Object;Ljava/lang/String;)V getFriendIDs ()Ljava/util/List; java/util/List iterator ()Ljava/util/Iterator; java/util/Iterator hasNext ()Z next ! v w x y z { | } ~ € ‚ / *· ± ƒ / „ … † ‡ ˆ ‚ } /² » Y· ¶ +¶ ¶ ¶ *+·
+ ȹ M,¹ ± ƒ = D I ( K . M „ / … † / ‰ Š ( ‹ Œ Ž ˆ ‚ ö |+¹
À ¹ M² » Y· ¶ ,¶ ¶ +¶ ¶ ¶ ¶ *+· N-Æ -¶ ,¶ š -,¶ -,+¹ ¶ + ȹ :¹ *,¸ -· *+· ± ƒ . X Z 6 a <