/**
 * 
 */
package de.bstly.board.businesslogic;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

/**
 * The Class SettingsManager.
 */
@Component
public class SettingsManager {

	@Value("${bstly.board.ranking.gravity:1.2}")
	private float GRAVITY;
	@Value("${bstly.board.size:30}")
	private int SIZE;
	@Value("${bstly.board.entry.changePeriod:1}")
	private long ENTRY_CHANGE_PERIDO;
	@Value("${bstly.board.comment.changePeriod:1}")
	private long COMMENT_CHANGE_PERIDO;
	@Value("${bstly.board.unvoteThresh:10}")
	private long UNVOTE_THRESH;
	@Value("${bstly.board.flagThresh:3}")
	private long FLAG_THRESH;
	@Value("${bstly.board.maxTags:3}")
	private int MAX_TAGS;
	@Value("${bstly.board.maxViews:10}")
	private long MAX_VIEWS;

	/**
	 * Gets the gravity.
	 *
	 * @return the gravity
	 */
	public float getGravity() {
		return GRAVITY;
	}

	/**
	 * Gets the page size.
	 *
	 * @return the page size
	 */
	public int getPageSize() {
		return SIZE;
	}

	/**
	 * Gets the entry delay.
	 *
	 * @return the entry delay
	 */
	public long getEntryDelay() {
		return ENTRY_CHANGE_PERIDO;
	}

	/**
	 * Gets the comment delay.
	 *
	 * @return the comment delay
	 */
	public long getCommentDelay() {
		return COMMENT_CHANGE_PERIDO;
	}

	/**
	 * Gets the unvote thresh.
	 *
	 * @return the unvote thresh
	 */
	public long getUnvoteThresh() {
		return UNVOTE_THRESH;
	}

	/**
	 * Gets the flah thresh.
	 *
	 * @return the flah thresh
	 */
	public long getFlahThresh() {
		return FLAG_THRESH;
	}

	/**
	 * Gets the max tags.
	 *
	 * @return the max tags
	 */
	public int getMaxTags() {
		return MAX_TAGS;
	}

	/**
	 * Gets the max user pages.
	 *
	 * @return the max user pages
	 */
	public long getMaxViews() {
		return MAX_VIEWS;
	}
}
