logWriter.logDebug("ct table size = " + clientTransactionTable.size());
String thisToTag = notifyMessage.getTo().getTag();
if (thisToTag == null) {
return retval;
}
Event eventHdr = (Event) notifyMessage.getHeader(EventHeader.NAME);
if (eventHdr == null) {
if (logWriter.isLoggingEnabled()) {
logWriter.logDebug("event Header is null -- returning null");
}
return retval;
}
while (it.hasNext()) {
SIPClientTransaction ct = (SIPClientTransaction) it.next();
if (!ct.getMethod().equals(Request.SUBSCRIBE))
continue;
SIPRequest sipRequest = ct.getOriginalRequest();
Contact contact = sipRequest.getContactHeader();
Address address = contact.getAddress();
SipURI uri = (SipURI) address.getURI();
String host = uri.getHost();
int port = uri.getPort();
String transport = uri.getTransportParam();
if (transport == null)
transport = "udp";
if (port == -1) {
if (transport.equals("udp") || transport.equals("tcp"))
port = 5060;
else
port = 5061;
}
// if ( sipProvider.getListeningPoint(transport) == null)
String fromTag = ct.from.getTag();
Event hisEvent = ct.event;
// Event header is mandatory but some slopply clients
// dont include it.
if (hisEvent == null)
continue;
if (this.isLoggingEnabled()) {