private void setOfflinePresences ( ) { Presence packetUnavailable ; for ( String user : presenceMap . keySet ( ) ) { Map < String , Presence > resources = presenceMap . get ( user ) ; if ( resources != null ) { for ( String resource : resources . keySet ( ) ) { packetUnavailable = new Presence ( Presence . Type . unavailable ) ; packetUnavailable . setFrom ( user + "/" + resource ) ; presencePacketListener . processPacket ( packetUnavailable ) ; } } } }
Changes the presence of available contacts offline by simulating an unavailable presence sent from the server . After a disconnection every Presence is set to offline .