mirror of
https://github.com/vanitasvitae/Smack.git
synced 2025-12-12 14:01:08 +01:00
Rework DiscoverInfo
Make Feature and Identity immutable and allow fast lookup of those two in DiscoverInfo.
This commit is contained in:
parent
b60b20e312
commit
6fec813ec0
5 changed files with 100 additions and 95 deletions
|
|
@ -49,7 +49,6 @@ import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream.StreamHostUs
|
|||
import org.jivesoftware.smackx.disco.ServiceDiscoveryManager;
|
||||
import org.jivesoftware.smackx.disco.packet.DiscoverInfo;
|
||||
import org.jivesoftware.smackx.disco.packet.DiscoverItems;
|
||||
import org.jivesoftware.smackx.disco.packet.DiscoverInfo.Identity;
|
||||
import org.jivesoftware.smackx.disco.packet.DiscoverItems.Item;
|
||||
import org.jivesoftware.smackx.filetransfer.FileTransferManager;
|
||||
|
||||
|
|
@ -572,20 +571,14 @@ public final class Socks5BytestreamManager implements BytestreamManager {
|
|||
continue;
|
||||
}
|
||||
|
||||
// item must have category "proxy" and type "bytestream"
|
||||
for (Identity identity : proxyInfo.getIdentities()) {
|
||||
if ("proxy".equalsIgnoreCase(identity.getCategory())
|
||||
&& "bytestreams".equalsIgnoreCase(identity.getType())) {
|
||||
proxies.add(item.getEntityID());
|
||||
break;
|
||||
}
|
||||
|
||||
if (proxyInfo.hasIdentity("proxy", "bytestreams")) {
|
||||
proxies.add(item.getEntityID());
|
||||
} else {
|
||||
/*
|
||||
* server is not a SOCKS5 proxy, blacklist server to skip next time a Socks5
|
||||
* bytestream should be established
|
||||
*/
|
||||
this.proxyBlacklist.add(item.getEntityID());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue