X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2FSoneOptions.java;fp=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fdata%2FSoneOptions.java;h=819e94a1ae8ea6c2492c2a5ac73f411e2aac6f37;hb=e25b3f1ea99a8dffc55efe4b68246937a55ebd33;hp=0000000000000000000000000000000000000000;hpb=4469a8def6097375442a98576e07b7405e3acce3;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/data/SoneOptions.java b/src/main/java/net/pterodactylus/sone/data/SoneOptions.java new file mode 100644 index 0000000..819e94a --- /dev/null +++ b/src/main/java/net/pterodactylus/sone/data/SoneOptions.java @@ -0,0 +1,108 @@ +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 David ‘Bombe’ Roden + */ +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 David ‘Bombe’ Roden + */ + 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; + } + + } + +}