mirror of
https://github.com/vanitasvitae/Smack.git
synced 2025-09-09 17:19:39 +02:00
Merge branch '4.0'
Also slightly improve OfflineMessageManager.getMessages() Conflicts: build.gradle smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java
This commit is contained in:
commit
92a6d01507
12 changed files with 123 additions and 46 deletions
|
@ -73,7 +73,12 @@ public class Socks5Proxy {
|
|||
private static Socks5Proxy socks5Server;
|
||||
|
||||
private static boolean localSocks5ProxyEnabled = true;
|
||||
private static int localSocks5ProxyPort = 7777;
|
||||
|
||||
/**
|
||||
* The port of the local Socks5 Proxy. If this value is negative, the next ports will be tried
|
||||
* until a unused is found.
|
||||
*/
|
||||
private static int localSocks5ProxyPort = -7777;
|
||||
|
||||
/* reusable implementation of a SOCKS5 proxy server process */
|
||||
private Socks5ServerProcess serverProcess;
|
||||
|
@ -142,6 +147,9 @@ public class Socks5Proxy {
|
|||
* @param localSocks5ProxyPort the port of the local Socks5 proxy to set
|
||||
*/
|
||||
public static void setLocalSocks5ProxyPort(int localSocks5ProxyPort) {
|
||||
if (Math.abs(localSocks5ProxyPort) > 65535) {
|
||||
throw new IllegalArgumentException("localSocks5ProxyPort must be within (-65535,65535)");
|
||||
}
|
||||
Socks5Proxy.localSocks5ProxyPort = localSocks5ProxyPort;
|
||||
}
|
||||
|
||||
|
|
|
@ -154,20 +154,24 @@ public class OfflineMessageManager {
|
|||
}
|
||||
});
|
||||
PacketCollector messageCollector = connection.createPacketCollector(messageFilter);
|
||||
connection.createPacketCollectorAndSend(request).nextResultOrThrow();
|
||||
// Collect the received offline messages
|
||||
Message message = (Message) messageCollector.nextResult();
|
||||
while (message != null) {
|
||||
messages.add(message);
|
||||
message = (Message) messageCollector.nextResult();
|
||||
try {
|
||||
connection.createPacketCollectorAndSend(request).nextResultOrThrow();
|
||||
// Collect the received offline messages
|
||||
Message message = (Message) messageCollector.nextResult();
|
||||
while (message != null) {
|
||||
messages.add(message);
|
||||
message = (Message) messageCollector.nextResult();
|
||||
}
|
||||
}
|
||||
finally {
|
||||
// Stop queuing offline messages
|
||||
messageCollector.cancel();
|
||||
}
|
||||
// Stop queuing offline messages
|
||||
messageCollector.cancel();
|
||||
return messages;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an Iterator with all the offline <tt>Messages</tt> of the user. The returned offline
|
||||
* Returns a List of Messages with all the offline <tt>Messages</tt> of the user. The returned offline
|
||||
* messages will not be deleted from the server. Use {@link #deleteMessages(java.util.List)}
|
||||
* to delete the messages.
|
||||
*
|
||||
|
@ -181,17 +185,23 @@ public class OfflineMessageManager {
|
|||
List<Message> messages = new ArrayList<Message>();
|
||||
OfflineMessageRequest request = new OfflineMessageRequest();
|
||||
request.setFetch(true);
|
||||
connection.createPacketCollectorAndSend(request).nextResultOrThrow();
|
||||
|
||||
PacketCollector messageCollector = connection.createPacketCollector(PACKET_FILTER);
|
||||
// Collect the received offline messages
|
||||
Message message = (Message) messageCollector.nextResult();
|
||||
while (message != null) {
|
||||
messages.add(message);
|
||||
message = (Message) messageCollector.nextResult();
|
||||
PacketCollector resultCollector = connection.createPacketCollectorAndSend(request);
|
||||
|
||||
try {
|
||||
// Collect the received offline messages
|
||||
Message message = (Message) messageCollector.nextResult();
|
||||
while (message != null) {
|
||||
messages.add(message);
|
||||
message = (Message) messageCollector.nextResult();
|
||||
}
|
||||
resultCollector.nextResultOrThrow();
|
||||
}
|
||||
finally {
|
||||
messageCollector.cancel();
|
||||
resultCollector.cancel();
|
||||
}
|
||||
// Stop queuing offline messages
|
||||
messageCollector.cancel();
|
||||
return messages;
|
||||
}
|
||||
|
||||
|
|
|
@ -577,12 +577,23 @@ public class ConfigureForm extends Form
|
|||
* Determines if subscriptions are allowed.
|
||||
*
|
||||
* @return true if subscriptions are allowed, false otherwise
|
||||
* @deprecated use {@link #isSubscribe()} instead
|
||||
*/
|
||||
@Deprecated
|
||||
public boolean isSubscibe()
|
||||
{
|
||||
return parseBoolean(getFieldValue(ConfigureNodeFields.subscribe));
|
||||
return isSubscribe();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determines if subscriptions are allowed.
|
||||
*
|
||||
* @return true if subscriptions are allowed, false otherwise
|
||||
*/
|
||||
public boolean isSubscribe() {
|
||||
return parseBoolean(getFieldValue(ConfigureNodeFields.subscribe));
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets whether subscriptions are allowed.
|
||||
*
|
||||
|
|
|
@ -313,7 +313,7 @@ public class FormField {
|
|||
*/
|
||||
public static class Option {
|
||||
|
||||
public static final String ELEMNT = "option";
|
||||
public static final String ELEMENT = "option";
|
||||
|
||||
private final String value;
|
||||
private String label;
|
||||
|
@ -352,7 +352,7 @@ public class FormField {
|
|||
|
||||
public XmlStringBuilder toXML() {
|
||||
XmlStringBuilder xml = new XmlStringBuilder();
|
||||
xml.halfOpenElement(ELEMNT);
|
||||
xml.halfOpenElement(ELEMENT);
|
||||
// Add attribute
|
||||
xml.optAttribute("label", getLabel());
|
||||
xml.rightAngelBracket();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue