All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.paho.mqttv5.client.DisconnectedBufferOptions Maven / Gradle / Ivy

The newest version!
/*******************************************************************************
 * Copyright (c) 2016 IBM Corp.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v2.0
 * and Eclipse Distribution License v1.0 which accompany this distribution. 
 *
 * The Eclipse Public License is available at 
 *    https://www.eclipse.org/legal/epl-2.0
 * and the Eclipse Distribution License is available at 
 *   https://www.eclipse.org/org/documents/edl-v10.php
 *
 * Contributors:
 *    James Sutton - Initial Contribution for Automatic Reconnect & Offline Buffering
 */
package org.eclipse.paho.mqttv5.client;

/**
 * Holds the set of options that govern the behaviour
 * of Offline (or Disconnected) buffering of messages
 */
public class DisconnectedBufferOptions {
	
	/**
	 * The default size of the disconnected buffer
	 */
	public static final int DISCONNECTED_BUFFER_SIZE_DEFAULT = 5000;
	
	public static final boolean DISCONNECTED_BUFFER_ENABLED_DEFAULT = false;
	
	public static final boolean PERSIST_DISCONNECTED_BUFFER_DEFAULT = false;
	
	public static final boolean DELETE_OLDEST_MESSAGES_DEFAULT = false;
	
	private int bufferSize = DISCONNECTED_BUFFER_SIZE_DEFAULT;
	private boolean bufferEnabled = DISCONNECTED_BUFFER_ENABLED_DEFAULT;
	private boolean persistBuffer = PERSIST_DISCONNECTED_BUFFER_DEFAULT;
	private boolean deleteOldestMessages = DELETE_OLDEST_MESSAGES_DEFAULT;
	
	/**
	 * Constructs a new DisconnectedBufferOptions object using the
	 * default values.
	 *
	 * The defaults are:
	 * 
    *
  • The disconnected buffer is disabled
  • *
  • The buffer holds 5000 messages
  • *
  • The buffer is not persisted
  • *
  • Once the buffer is full, old messages are not deleted
  • *
* More information about these values can be found in the setter methods. */ public DisconnectedBufferOptions() { // Do Nothing. } public int getBufferSize() { return bufferSize; } public void setBufferSize(int bufferSize) { if (bufferSize < 1) { throw new IllegalArgumentException(); } this.bufferSize = bufferSize; } public boolean isBufferEnabled() { return bufferEnabled; } public void setBufferEnabled(boolean bufferEnabled) { this.bufferEnabled = bufferEnabled; } public boolean isPersistBuffer() { return persistBuffer; } public void setPersistBuffer(boolean persistBuffer) { this.persistBuffer = persistBuffer; } public boolean isDeleteOldestMessages() { return deleteOldestMessages; } public void setDeleteOldestMessages(boolean deleteOldestMessages) { this.deleteOldestMessages = deleteOldestMessages; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy