package net.pterodactylus.sone.data; import static net.pterodactylus.sone.data.Sone.ShowCustomAvatars.NEVER; import net.pterodactylus.sone.data.Sone.ShowCustomAvatars; /** * All Sone-specific options. * * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a> */ public interface SoneOptions { boolean isAutoFollow(); void setAutoFollow(boolean autoFollow); boolean isSoneInsertNotificationEnabled(); void setSoneInsertNotificationEnabled(boolean soneInsertNotificationEnabled); boolean isShowNewSoneNotifications(); void setShowNewSoneNotifications(boolean showNewSoneNotifications); boolean isShowNewPostNotifications(); void setShowNewPostNotifications(boolean showNewPostNotifications); boolean isShowNewReplyNotifications(); void setShowNewReplyNotifications(boolean showNewReplyNotifications); ShowCustomAvatars getShowCustomAvatars(); void setShowCustomAvatars(ShowCustomAvatars showCustomAvatars); /** * {@link SoneOptions} implementation. * * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a> */ public class DefaultSoneOptions implements SoneOptions { private boolean autoFollow = false; private boolean soneInsertNotificationsEnabled = false; private boolean showNewSoneNotifications = true; private boolean showNewPostNotifications = true; private boolean showNewReplyNotifications = true; private ShowCustomAvatars showCustomAvatars = NEVER; @Override public boolean isAutoFollow() { return autoFollow; } @Override public void setAutoFollow(boolean autoFollow) { this.autoFollow = autoFollow; } @Override public boolean isSoneInsertNotificationEnabled() { return soneInsertNotificationsEnabled; } @Override public void setSoneInsertNotificationEnabled(boolean soneInsertNotificationEnabled) { this.soneInsertNotificationsEnabled = soneInsertNotificationEnabled; } @Override public boolean isShowNewSoneNotifications() { return showNewSoneNotifications; } @Override public void setShowNewSoneNotifications(boolean showNewSoneNotifications) { this.showNewSoneNotifications = showNewSoneNotifications; } @Override public boolean isShowNewPostNotifications() { return showNewPostNotifications; } @Override public void setShowNewPostNotifications(boolean showNewPostNotifications) { this.showNewPostNotifications = showNewPostNotifications; } @Override public boolean isShowNewReplyNotifications() { return showNewReplyNotifications; } @Override public void setShowNewReplyNotifications(boolean showNewReplyNotifications) { this.showNewReplyNotifications = showNewReplyNotifications; } @Override public ShowCustomAvatars getShowCustomAvatars() { return showCustomAvatars; } @Override public void setShowCustomAvatars(ShowCustomAvatars showCustomAvatars) { this.showCustomAvatars = showCustomAvatars; } } }