com.avos.avospush.session.StaleMessageDepot Maven / Gradle / Ivy
The newest version!
package com.avos.avospush.session;
import com.avos.avoscloud.AVUtils;
public class StaleMessageDepot {
MessageQueue messageDepot;
private static final int MAXLENGTH = 50;
public StaleMessageDepot(String depotName) {
this.messageDepot = new MessageQueue(depotName, String.class);
}
/**
*
* @param messageId
* @return false if message arrived before. true
*/
public synchronized boolean putStableMessage(String messageId) {
if (AVUtils.isBlankString(messageId)) {
return true;
}
boolean isContains = messageDepot.contains(messageId);
if (!isContains) {
messageDepot.offer(messageId);
while (messageDepot.size() > MAXLENGTH) {
messageDepot.poll();
}
}
return !isContains;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy