diff --git a/Plan/api/src/main/java/com/djrapitops/plan/capability/CapabilityService.java b/Plan/api/src/main/java/com/djrapitops/plan/capability/CapabilityService.java index 9cce97aaa..02cfdf934 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/capability/CapabilityService.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/capability/CapabilityService.java @@ -64,6 +64,9 @@ public interface CapabilityService { return Capability.getByName(capabilityName).isPresent(); } + /** + * Singleton holder for listeners. + */ class ListHolder { static final AtomicReference>> enableListeners = new AtomicReference<>( new CopyOnWriteArrayList<>() diff --git a/Plan/api/src/main/java/com/djrapitops/plan/component/ComponentService.java b/Plan/api/src/main/java/com/djrapitops/plan/component/ComponentService.java index cbf3c765d..9a118dd0b 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/component/ComponentService.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/component/ComponentService.java @@ -89,7 +89,7 @@ public interface ComponentService { * Converts the given input into a {@link Component}. * Input example {@code §ctext}. * - * @param legacy the input legacy + * @param legacy the input legacy * @param character the character to use as the color prefix, usually {@code §}. * @return a {@link Component} * @see #fromLegacy(String) @@ -115,7 +115,7 @@ public interface ComponentService { * Input example: {@code &#rrggbbtext}. * * @param adventureLegacy the input adventure legacy - * @param character the character to use as the color prefix, usually {@code &}. + * @param character the character to use as the color prefix, usually {@code &}. * @return a {@link Component} * @see #fromAdventureLegacy(String) * @see Component#SECTION @@ -139,7 +139,7 @@ public interface ComponentService { * Input example: {@code §x§r§r§g§g§b§btext}. * * @param bungeeLegacy the input bungee legacy - * @param character the character to use as the color prefix, usually {@code §}. + * @param character the character to use as the color prefix, usually {@code §}. * @return a {@link Component} * @see Component#SECTION * @see Component#AMPERSAND @@ -164,6 +164,9 @@ public interface ComponentService { */ Component fromJson(String json); + /** + * Singleton holder for ComponentService. + */ class Holder { static final AtomicReference service = new AtomicReference<>(); diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/package-info.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/package-info.java index 1bba5ac9a..4f63b1272 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/package-info.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/package-info.java @@ -1,6 +1,5 @@ /** * PageExtension API for extending the webserver and the website. - * * Documentation */ package com.djrapitops.plan.delivery.web; \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/CompositeResolver.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/CompositeResolver.java index 0d20d1326..424ea5252 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/CompositeResolver.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/CompositeResolver.java @@ -46,6 +46,11 @@ public final class CompositeResolver implements Resolver { this.resolvers = new ArrayList<>(); } + /** + * Create a new builder for a . + * + * @return a builder. + */ public static CompositeResolver.Builder builder() { return new Builder(); } @@ -100,6 +105,9 @@ public final class CompositeResolver implements Resolver { return getResolver(forThis.getPath()).map(resolver -> resolver.requiresAuth(forThis)).orElse(true); } + /** + * Builder class for {@link CompositeResolver}. + */ public static class Builder { private final CompositeResolver composite; @@ -132,6 +140,11 @@ public final class CompositeResolver implements Resolver { return this; } + /** + * Build the final result after adding all resolvers. + * + * @return The {@link CompositeResolver} + */ public CompositeResolver build() { return composite; } diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/FunctionalResolverWrapper.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/FunctionalResolverWrapper.java index d9a867c5a..8924ef46c 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/FunctionalResolverWrapper.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/FunctionalResolverWrapper.java @@ -22,11 +22,20 @@ import java.util.Optional; import java.util.function.Function; import java.util.function.Predicate; +/** + * Utility class for constructing a {@link Resolver} with Functional Interfaces. + */ public class FunctionalResolverWrapper implements Resolver { private final Function> resolver; private final Predicate accessCheck; + /** + * Default constructor. + * + * @param resolver Function that solves the {@link Request} into an Optional {@link Response}. + * @param accessCheck Predicate that checks if {@link Request} is allowed or if 403 Forbidden should be given. + */ public FunctionalResolverWrapper(Function> resolver, Predicate accessCheck) { this.resolver = resolver; this.accessCheck = accessCheck; diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/Resolver.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/Resolver.java index d64e5cb4f..b969baf59 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/Resolver.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/Resolver.java @@ -72,10 +72,21 @@ public interface Resolver { */ Optional resolve(Request request); + /** + * Creates a new {@link ResponseBuilder} for a {@link Response}. + * + * @return a new builder. + */ default ResponseBuilder newResponseBuilder() { return Response.builder(); } + /** + * Used to check if the resolver requires authentication to be used. + * + * @param request Incoming request that you can use to figure out if authentication is required. + * @return true if you want 401 to be given when user has not logged in. + */ default boolean requiresAuth(Request request) { return true; } diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/ResponseBuilder.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/ResponseBuilder.java index c2ae8c216..00311f748 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/ResponseBuilder.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/ResponseBuilder.java @@ -33,7 +33,7 @@ public class ResponseBuilder { /** * Set MIME Type of the Response. * - * @param mimeType MIME type of the Response https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types + * @param mimeType MIME type of the Response Documentation * @return this builder. * @see MimeType for common MIME types. */ @@ -46,7 +46,7 @@ public class ResponseBuilder { *

* Default status code is 200 (OK) if not set. * - * @param code 1xx, 2xx, 3xx, 4xx, 5xx, https://developer.mozilla.org/en-US/docs/Web/HTTP/Status + * @param code 1xx, 2xx, 3xx, 4xx, 5xx, Documentation * @return this builder. */ public ResponseBuilder setStatus(int code) { @@ -57,7 +57,7 @@ public class ResponseBuilder { /** * Set HTTP Response header. * - * @param header Key of the header. https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers + * @param header Key of the header. Documentation * @param value Value for the header. * @return this builder. */ @@ -75,7 +75,7 @@ public class ResponseBuilder { * Utility method for building redirects. * * @param url URL to redirect the client to with 302 Found. - * @return https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Location + * @return Documentation */ public ResponseBuilder redirectTo(String url) { return setStatus(302).setHeader("Location", url).setContent(new byte[0]); diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/exception/BadRequestException.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/exception/BadRequestException.java index 21a9e5d83..9208ed345 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/exception/BadRequestException.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/exception/BadRequestException.java @@ -26,6 +26,11 @@ package com.djrapitops.plan.delivery.web.resolver.exception; */ public class BadRequestException extends IllegalArgumentException { + /** + * Default constructor. + * + * @param message Error message - avoid including any input incoming in the request to prevent XSS. + */ public BadRequestException(String message) { super(message); } diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/package-info.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/package-info.java index 87b8be4eb..bb49600fc 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/package-info.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/package-info.java @@ -1,6 +1,5 @@ /** * Classes for implementing functionality with {@link com.djrapitops.plan.delivery.web.ResolverService}. - * * Documentation */ package com.djrapitops.plan.delivery.web.resolver; \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/request/Request.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/request/Request.java index 681822e09..86e62eaa5 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/request/Request.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resolver/request/Request.java @@ -43,7 +43,7 @@ public final class Request { * @param path Requested path /example/target * @param query Request parameters ?param=value etc * @param user Web user doing the request (if authenticated) - * @param headers Request headers https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers + * @param headers Request headers Documentation * @param requestBody Raw body as bytes, if present */ public Request(String method, URIPath path, URIQuery query, WebUser user, Map headers, byte[] requestBody) { @@ -57,6 +57,11 @@ public final class Request { /** * Special constructor that figures out URIPath and URIQuery from "/path/and?query=params" and has no request body. + * + * @param method HTTP requst method + * @param target The requested path and query, e.g. "/path/and?query=params" + * @param user User that made the request + * @param headers HTTP request headers */ public Request(String method, String target, WebUser user, Map headers) { this.method = method; @@ -121,7 +126,7 @@ public final class Request { /** * Get a header in the request. * - * @param key https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers + * @param key Documentation * @return Value if it is present in the request. */ public Optional getHeader(String key) { diff --git a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resource/package-info.java b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resource/package-info.java index ec954ef09..66c734e4d 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resource/package-info.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/delivery/web/resource/package-info.java @@ -1,6 +1,5 @@ /** * Classes for implementing functionality with {@link com.djrapitops.plan.delivery.web.ResourceService}. - * * Documentation */ package com.djrapitops.plan.delivery.web.resource; \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/DataExtension.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/DataExtension.java index 42cfcd28e..12fa02b38 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/DataExtension.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/DataExtension.java @@ -113,6 +113,7 @@ public interface DataExtension { *

* Requires Capability DATA_EXTENSION_BUILDER_API * + * @param text Text that is displayed next to the value. * @return new builder. */ default ValueBuilder valueBuilder(String text) { diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/ExtensionService.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/ExtensionService.java index 9bcf81c3a..be195a7e1 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/ExtensionService.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/ExtensionService.java @@ -81,6 +81,9 @@ public interface ExtensionService { */ void unregister(DataExtension extension); + /** + * Singleton holder for {@link ExtensionService}. + */ class Holder { static final AtomicReference service = new AtomicReference<>(); diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/FormatType.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/FormatType.java index 4029e2b05..35109f6f3 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/FormatType.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/FormatType.java @@ -42,6 +42,12 @@ public enum FormatType { */ NONE; + /** + * Get a format type by the enum name without exception. + * + * @param name FormatType#name() + * @return Optional if the format type is found by that name, empty if not found. + */ public static Optional getByName(String name) { if (name == null) { return Optional.empty(); @@ -51,4 +57,5 @@ public enum FormatType { } catch (IllegalArgumentException e) { return Optional.empty(); } - }} + } +} diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/Group.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/Group.java index 9d09292b8..de12c9d7b 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/Group.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/Group.java @@ -30,6 +30,11 @@ package com.djrapitops.plan.extension; */ public interface Group { + /** + * Get the name of the group. + * + * @return Name of the group given by a {@link com.djrapitops.plan.extension.annotation.GroupProvider}, e.g. "Miner" + */ String getGroupName(); } \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/BooleanProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/BooleanProvider.java index dae1a0f9d..ebbb47587 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/BooleanProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/BooleanProvider.java @@ -89,7 +89,7 @@ public @interface BooleanProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -98,7 +98,7 @@ public @interface BooleanProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/ComponentProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/ComponentProvider.java index 1c29220c2..348dec90d 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/ComponentProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/ComponentProvider.java @@ -76,7 +76,7 @@ public @interface ComponentProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -85,7 +85,7 @@ public @interface ComponentProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/DoubleProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/DoubleProvider.java index 4bbee7129..3aa431528 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/DoubleProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/DoubleProvider.java @@ -67,7 +67,7 @@ public @interface DoubleProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -76,7 +76,7 @@ public @interface DoubleProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/GroupProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/GroupProvider.java index 63b968d45..a0691340b 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/GroupProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/GroupProvider.java @@ -62,7 +62,7 @@ public @interface GroupProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -71,7 +71,7 @@ public @interface GroupProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/InvalidateMethod.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/InvalidateMethod.java index 7a31bd74b..af88d5f7c 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/InvalidateMethod.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/InvalidateMethod.java @@ -39,10 +39,18 @@ public @interface InvalidateMethod { */ String value(); + /** + * Multiple {@link InvalidateMethod} annotations are supported per class. + */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) @interface Multiple { + /** + * All the annotations. + * + * @return All InvalidateMethod annotations in the class. + */ InvalidateMethod[] value(); } diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/NumberProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/NumberProvider.java index 002b73379..62f160dbd 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/NumberProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/NumberProvider.java @@ -79,7 +79,7 @@ public @interface NumberProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -88,7 +88,7 @@ public @interface NumberProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PercentageProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PercentageProvider.java index 628e5d2a0..82ae3bb6d 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PercentageProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PercentageProvider.java @@ -70,7 +70,7 @@ public @interface PercentageProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -79,7 +79,7 @@ public @interface PercentageProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PluginInfo.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PluginInfo.java index b2345465e..6462f8a3d 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PluginInfo.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/PluginInfo.java @@ -44,7 +44,7 @@ public @interface PluginInfo { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -53,7 +53,7 @@ public @interface PluginInfo { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/StringProvider.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/StringProvider.java index e2b7ef68b..1e153bb26 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/StringProvider.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/StringProvider.java @@ -79,7 +79,7 @@ public @interface StringProvider { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -88,7 +88,7 @@ public @interface StringProvider { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/TabInfo.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/TabInfo.java index 8938d4c1f..62283210f 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/TabInfo.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/annotation/TabInfo.java @@ -41,7 +41,7 @@ public @interface TabInfo { /** * Name of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Name of the icon, if name is not valid no icon is shown. */ @@ -50,7 +50,7 @@ public @interface TabInfo { /** * Family of Font Awesome icon. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @return Family that matches an icon, if there is no icon for this family no icon is shown. */ diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/builder/ValueBuilder.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/builder/ValueBuilder.java index cf4d6aff3..5b5019f24 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/builder/ValueBuilder.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/builder/ValueBuilder.java @@ -18,7 +18,10 @@ package com.djrapitops.plan.extension.builder; import com.djrapitops.plan.component.Component; import com.djrapitops.plan.extension.FormatType; -import com.djrapitops.plan.extension.annotation.*; +import com.djrapitops.plan.extension.annotation.BooleanProvider; +import com.djrapitops.plan.extension.annotation.Conditional; +import com.djrapitops.plan.extension.annotation.StringProvider; +import com.djrapitops.plan.extension.annotation.Tab; import com.djrapitops.plan.extension.extractor.ExtensionMethod; import com.djrapitops.plan.extension.icon.Color; import com.djrapitops.plan.extension.icon.Family; @@ -64,7 +67,7 @@ public interface ValueBuilder { /** * Icon displayed next to the value. *

- * See https://fontawesome.com/icons (select 'free')) for icons + * See FontAwesome (select 'free')) for icons * * @param iconName Name of the icon * @param iconFamily Family of the icon @@ -78,7 +81,7 @@ public interface ValueBuilder { /** * Icon displayed next to the value. *

- * See https://fontawesome.com/icons (select 'free')) for icons + * See FontAwesome (select 'free')) for icons * * @param icon Icon built using the methods in {@link Icon}. * @return This builder. diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Color.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Color.java index 289849402..c59fc2c83 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Color.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Color.java @@ -47,6 +47,12 @@ public enum Color { BLACK, NONE; + /** + * Get a color by the enum name without exception. + * + * @param name Color#name() + * @return Optional if the color is found by that name, empty if not found. + */ public static Optional getByName(String name) { if (name == null) { return Optional.empty(); @@ -56,4 +62,5 @@ public enum Color { } catch (IllegalArgumentException e) { return Optional.empty(); } - }} + } +} diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Family.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Family.java index ef854197a..5c647bba9 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Family.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Family.java @@ -37,6 +37,12 @@ public enum Family { */ BRAND; + /** + * Get a family by the enum name without exception. + * + * @param name Family#name() + * @return Optional if the family is found by that name, empty if not found. + */ public static Optional getByName(String name) { if (name == null) { return Optional.empty(); diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Icon.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Icon.java index f881433b5..2133a277d 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Icon.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/icon/Icon.java @@ -21,7 +21,7 @@ import java.util.Objects; /** * Object that represents an icon on the website. *

- * See https://fontawesome.com/icons (select 'free')) for icons and their {@link Family}. + * See FontAwesome (select 'free')) for icons and their {@link Family}. * * @author AuroraLS3 */ @@ -92,6 +92,9 @@ public class Icon { return "Icon{" + type.name() + ", '" + name + '\'' + ", " + color.name() + '}'; } + /** + * Builder for an {@link Icon}. + */ public static class Builder { private final Icon icon; diff --git a/Plan/api/src/main/java/com/djrapitops/plan/extension/package-info.java b/Plan/api/src/main/java/com/djrapitops/plan/extension/package-info.java index 8d29245cc..44a375fea 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/extension/package-info.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/extension/package-info.java @@ -1,6 +1,5 @@ /** * DataExtension API and related classes. - * * Documentation */ package com.djrapitops.plan.extension; \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/query/CommonQueries.java b/Plan/api/src/main/java/com/djrapitops/plan/query/CommonQueries.java index 36ebba3e2..aa77f36d2 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/query/CommonQueries.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/query/CommonQueries.java @@ -62,14 +62,44 @@ public interface CommonQueries { */ long fetchLastSeen(UUID playerUUID, UUID serverUUID); + /** + * Get the UUIDs of all servers Plan has registered. + * + * @return Set of Server UUIDs + */ Set fetchServerUUIDs(); + /** + * Fetch UUID of a player by name. + * + * @param playerName Name of the player + * @return UUID if it is found by Plan or empty if not found. + */ Optional fetchUUIDOf(String playerName); + /** + * Fetch name of a player by UUID. + * + * @param playerUUID UUID of the player + * @return Name if it is known by Plan or empty if not. + */ Optional fetchNameOf(UUID playerUUID); + /** + * Check that schema has table you are using in your queries. + * + * @param table Name of the table, e.g. plan_users. + * @return true if table exists. + */ boolean doesDBHaveTable(String table); + /** + * Check that schema table has a column you are using in your queries. + * + * @param table Name of the table, e.g. plan_users. + * @param column Name of the column, e.g. id + * @return true if table and column exist. + */ boolean doesDBHaveTableColumn(String table, String column); /** diff --git a/Plan/api/src/main/java/com/djrapitops/plan/query/QueryService.java b/Plan/api/src/main/java/com/djrapitops/plan/query/QueryService.java index 09d01a37c..f2b62444c 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/query/QueryService.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/query/QueryService.java @@ -126,7 +126,7 @@ public interface QueryService { CommonQueries getCommonQueries(); /** - * See https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html + * See Functional Interfaces */ @FunctionalInterface interface ThrowingConsumer { @@ -134,7 +134,7 @@ public interface QueryService { } /** - * See https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html + * See Functional Interfaces */ @FunctionalInterface interface ThrowingFunction { @@ -142,7 +142,7 @@ public interface QueryService { } /** - * See https://docs.oracle.com/javase/8/docs/api/java/util/function/package-summary.html + * See Functional Interfaces */ @FunctionalInterface interface VoidFunction { diff --git a/Plan/api/src/main/java/com/djrapitops/plan/query/package-info.java b/Plan/api/src/main/java/com/djrapitops/plan/query/package-info.java index 15fdc7f04..5b5fc866e 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/query/package-info.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/query/package-info.java @@ -1,6 +1,5 @@ /** * Query API related classes. - * * Documentation */ package com.djrapitops.plan.query; \ No newline at end of file diff --git a/Plan/api/src/main/java/com/djrapitops/plan/settings/ListenerService.java b/Plan/api/src/main/java/com/djrapitops/plan/settings/ListenerService.java index 6744ea194..f6a618a51 100644 --- a/Plan/api/src/main/java/com/djrapitops/plan/settings/ListenerService.java +++ b/Plan/api/src/main/java/com/djrapitops/plan/settings/ListenerService.java @@ -51,6 +51,9 @@ public interface ListenerService { */ void registerListenerForPlan(Object listener); + /** + * Singleton holder for listeners. + */ class Holder { static final AtomicReference service = new AtomicReference<>(); diff --git a/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/importing/data/BukkitUserImportRefiner.java b/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/importing/data/BukkitUserImportRefiner.java index f975bc46b..ce674fe58 100644 --- a/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/importing/data/BukkitUserImportRefiner.java +++ b/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/importing/data/BukkitUserImportRefiner.java @@ -25,7 +25,7 @@ import java.util.stream.Collectors; /** * UserImportRefiner attempts to find any crucial information that is missing. - * + *

* - Finds UUIDs if only name is present. * - Finds Names if only UUID is present. * - Removes any importers that do not have any identifiers. diff --git a/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/timed/BukkitPingCounter.java b/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/timed/BukkitPingCounter.java index c9db84a03..952a83db2 100644 --- a/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/timed/BukkitPingCounter.java +++ b/Plan/bukkit/src/main/java/com/djrapitops/plan/gathering/timed/BukkitPingCounter.java @@ -53,7 +53,7 @@ import java.util.logging.Logger; * Task that handles player ping calculation on Bukkit based servers. *

* Modified PingManager from LagMonitor plugin. - * https://github.com/games647/LagMonitor/blob/master/src/main/java/com/github/games647/lagmonitor/task/PingManager.java + * original * * @author games647 */ diff --git a/Plan/bukkit/src/main/java/com/djrapitops/plan/utilities/java/Reflection.java b/Plan/bukkit/src/main/java/com/djrapitops/plan/utilities/java/Reflection.java index f6e150a74..93471f314 100644 --- a/Plan/bukkit/src/main/java/com/djrapitops/plan/utilities/java/Reflection.java +++ b/Plan/bukkit/src/main/java/com/djrapitops/plan/utilities/java/Reflection.java @@ -32,7 +32,7 @@ import java.lang.reflect.Field; * An utility class that simplifies reflection in Bukkit plugins. *

* Modified Reflection utility from LagMonitor plugin. - * https://github.com/games647/LagMonitor/blob/master/src/main/java/com/github/games647/lagmonitor/traffic/Reflection.java + * original code * * @author Kristian */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/api/CommonAPI.java b/Plan/common/src/main/java/com/djrapitops/plan/api/CommonAPI.java index 6d8c68a9d..ea65baa85 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/api/CommonAPI.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/api/CommonAPI.java @@ -43,7 +43,7 @@ import java.util.stream.Collectors; * PlanAPI extension for all implementations. * * @author AuroraLS3 - * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (https://github.com/plan-player-analytics/Plan/wiki/APIv5). + * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (wiki). */ @Singleton @Deprecated(forRemoval = true, since = "5.0") diff --git a/Plan/common/src/main/java/com/djrapitops/plan/api/PlanAPI.java b/Plan/common/src/main/java/com/djrapitops/plan/api/PlanAPI.java index 2f5fa51d8..f0a5ade76 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/api/PlanAPI.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/api/PlanAPI.java @@ -35,7 +35,7 @@ import java.util.UUID; * Interface for PlanAPI methods. * * @author AuroraLS3 - * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (https://github.com/plan-player-analytics/Plan/wiki/APIv5). + * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (wiki). */ @Deprecated(since = "5.0") public interface PlanAPI { @@ -65,7 +65,7 @@ public interface PlanAPI { } /** - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated void addPluginDataSource(PluginData pluginData); diff --git a/Plan/common/src/main/java/com/djrapitops/plan/api/data/PlayerContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/api/data/PlayerContainer.java index c308dcd13..f883be102 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/api/data/PlayerContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/api/data/PlayerContainer.java @@ -29,7 +29,7 @@ import java.util.Optional; * The Keys might change in the future, but the Optional API should help dealing with those cases. * * @author AuroraLS3 - * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (https://github.com/plan-player-analytics/Plan/wiki/APIv5). + * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (wiki). */ @Deprecated(since = "5.0") public class PlayerContainer { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/api/data/ServerContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/api/data/ServerContainer.java index 1c93f364f..08d68cf59 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/api/data/ServerContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/api/data/ServerContainer.java @@ -28,7 +28,7 @@ import java.util.Optional; * The Keys might change in the future, but the Optional API should help dealing with those cases. * * @author AuroraLS3 - * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (https://github.com/plan-player-analytics/Plan/wiki/APIv5). + * @deprecated Plan API v4 has been deprecated, use the APIv5 instead (wiki). */ @Deprecated(forRemoval = true, since = "5.0") public class ServerContainer { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/element/AnalysisContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/data/element/AnalysisContainer.java index 618f566f0..dd47672d2 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/element/AnalysisContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/element/AnalysisContainer.java @@ -27,7 +27,7 @@ import java.util.UUID; * @author AuroraLS3 * @see TableContainer * @see InspectContainer - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated(since = "5.0") public final class AnalysisContainer extends InspectContainer { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/element/InspectContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/data/element/InspectContainer.java index 964ca0462..dc18e3b50 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/element/InspectContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/element/InspectContainer.java @@ -27,7 +27,7 @@ import java.util.TreeMap; * * @author AuroraLS3 * @see TableContainer - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated(since = "5.0") public class InspectContainer { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/element/TableContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/data/element/TableContainer.java index e265e21f5..27df41d8a 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/element/TableContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/element/TableContainer.java @@ -26,7 +26,7 @@ import java.util.List; * Container used for creating Html tables. * * @author AuroraLS3 - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated(since = "5.0") public class TableContainer { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/BanData.java b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/BanData.java index ea2e31153..4f7ce3da9 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/BanData.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/BanData.java @@ -23,7 +23,7 @@ import java.util.UUID; * Interface for PluginData objects that affect Ban state of players. * * @author AuroraLS3 - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated(since = "5.0") public interface BanData { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/ContainerSize.java b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/ContainerSize.java index 6bb365c2b..0ec8d008d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/ContainerSize.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/ContainerSize.java @@ -20,7 +20,7 @@ package com.djrapitops.plan.data.plugin; * Enum class for PluginData to estimate the required width of the contained items. * * @author AuroraLS3 - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated public enum ContainerSize { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/PluginData.java b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/PluginData.java index 96f849a09..bd48f1751 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/PluginData.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/data/plugin/PluginData.java @@ -33,7 +33,7 @@ import java.util.UUID; * to register objects extending this class. * * @author AuroraLS3 - * @deprecated PluginData API has been deprecated - see https://github.com/plan-player-analytics/Plan/wiki/APIv5---DataExtension-API for new API. + * @deprecated PluginData API has been deprecated - see wiki for new API. */ @Deprecated(since = "5.0") public abstract class PluginData { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/container/DataContainer.java b/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/container/DataContainer.java index dfbc6d272..d7cf82dba 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/container/DataContainer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/container/DataContainer.java @@ -139,7 +139,6 @@ public interface DataContainer { /** * Get formatted Value identified by the Key. - *

* * @param key Key that identifies the Value * @param formatter Formatter for the Optional returned by {@link DataContainer#getValue(Key)} diff --git a/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/mutators/ActivityIndex.java b/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/mutators/ActivityIndex.java index c853ab938..69d7c5c78 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/mutators/ActivityIndex.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/delivery/domain/mutators/ActivityIndex.java @@ -38,15 +38,16 @@ import java.util.concurrent.TimeUnit; *

* Activity for a single week is calculated using {@code A(t) = (1 / (pi/2 * (t/T) + 1))}. * A(t) is based on function f(x) = 1 / (x + 1), which has property f(0) = 1, decreasing from there, but not in a straight line. - * You can see the function plotted here https://www.wolframalpha.com/input/?i=1+%2F+(x%2B1)+from+-1+to+2 + * You can see the function plotted here *

* To fine tune the curve pi/2 is used since it felt like a good curve. *

* Activity index A is calculated by using the formula: * {@code A = 5 - 5 * [A(t1) + A(t2) + A(t3)] / 3} *

+ * * Plot for A and limits - * https://www.wolframalpha.com/input/?i=plot+y+%3D+5+-+5+*+(1+%2F+(pi%2F2+*+x%2B1))+and+y+%3D1+and+y+%3D+2+and+y+%3D+3+and+y+%3D+3.75+from+-0.5+to+3 + * *

* New Limits for A would thus be * {@code < 1: Inactive} diff --git a/Plan/common/src/main/java/com/djrapitops/plan/delivery/formatting/time/HttpLastModifiedDateFormatter.java b/Plan/common/src/main/java/com/djrapitops/plan/delivery/formatting/time/HttpLastModifiedDateFormatter.java index 7ccf6034e..7726d54dc 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/delivery/formatting/time/HttpLastModifiedDateFormatter.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/delivery/formatting/time/HttpLastModifiedDateFormatter.java @@ -24,7 +24,7 @@ import java.util.TimeZone; /** * Formats timestamps to the Last-Modified header time format. - * https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified + * Documentation for the header * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/PlayersTableJSONCreator.java b/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/PlayersTableJSONCreator.java index a545217d7..2a3893418 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/PlayersTableJSONCreator.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/PlayersTableJSONCreator.java @@ -42,8 +42,6 @@ import java.util.stream.Collectors; /** * Utility for creating jQuery Datatables JSON for a Players Table. - *

- * See https://www.datatables.net/manual/data/orthogonal-data#HTML-5 for sort kinds * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/settings/config/Config.java b/Plan/common/src/main/java/com/djrapitops/plan/settings/config/Config.java index 4a5ee2148..126b4d205 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/settings/config/Config.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/settings/config/Config.java @@ -31,9 +31,6 @@ import java.util.Objects; /** * Configuration utility for storing settings in a .yml file. - *

- * Based on - * https://github.com/AuroraLS3/Abstract-Plugin-Framework/blob/72e221d3571ef200727713d10d3684c51e9f469d/AbstractPluginFramework/api/src/main/java/com/djrapitops/plugin/config/Config.java * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/settings/config/ConfigNode.java b/Plan/common/src/main/java/com/djrapitops/plan/settings/config/ConfigNode.java index 90c8b3258..fbce7f56e 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/settings/config/ConfigNode.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/settings/config/ConfigNode.java @@ -34,9 +34,6 @@ import java.util.stream.Collectors; /** * Represents a single node in a configuration file - *

- * Based on - * https://github.com/AuroraLS3/Abstract-Plugin-Framework/blob/72e221d3571ef200727713d10d3684c51e9f469d/AbstractPluginFramework/api/src/main/java/com/djrapitops/plugin/config/ConfigNode.java * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/LangCode.java b/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/LangCode.java index 31e5d251d..b6cf720fb 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/LangCode.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/settings/locale/LangCode.java @@ -27,7 +27,7 @@ public enum LangCode { EN("English", "AuroraLS3"), ES("Español", "Catalina, itaquito, Elguerrero & 4drian3d"), CN("\u6C49\u8BED", "f0rb1d (\u4f5b\u58c1\u706f), qsefthuopq, shaokeyibb, Fur_xia, 10935336, SkipM4, TheLittle_Yang & jhqwqmc"), // Simplified Chinese - CS("čeština", "Shadowhackercz, QuakyCZ, MrFriggo & WolverStones"), + CS("\u010de\u0161tina", "Shadowhackercz, QuakyCZ, MrFriggo & WolverStones"), DE("Deutsch", "Eyremba, fuzzlemann, Morsmorse, hallo1142 & DubHacker"), FI("suomi", "AuroraLS3, KasperiP"), FR("français", "CyanTech, Aurelien & Nogapra"), @@ -35,9 +35,9 @@ public enum LangCode { JA("\u65E5\u672C\u8A9E", "yukieji, inductor, lis2a, yu_solt , Jumala9163 & ringoXD"), KO("\uD55C\uAD6D\uC5B4", "Guinness_Akihiko"), NL("Nederlands", "Sander0542"), - RU("русский", "Saph1s, Perhun_Pak, BratishkaErik & stashenko"), + RU("ру\u0441\u0441к\u0438\u0439", "Saph1s, Perhun_Pak, BratishkaErik & stashenko"), TR("Türkçe", "TDJisvan, BruilsiozPro & EyuphanMandiraci"), - UK("українська мова", "xlanyleeet"), + UK("україн\u0441ька \u043cо\u0432а", "xlanyleeet"), PT_BR("Português", "jvmuller"), ZH_TW("\u6F22\u8A9E", "\u6d1b\u4f0a & zisunny104"); diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/ActivityIndexQueries.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/ActivityIndexQueries.java index 5413b7b60..f946ee56b 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/ActivityIndexQueries.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/ActivityIndexQueries.java @@ -50,15 +50,16 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; *

* Activity for a single week is calculated using {@code A(t) = (1 / (pi/2 * (t/T) + 1))}. * A(t) is based on function f(x) = 1 / (x + 1), which has property f(0) = 1, decreasing from there, but not in a straight line. - * You can see the function plotted here https://www.wolframalpha.com/input/?i=1+%2F+(x%2B1)+from+-1+to+2 + * You can see the function plotted here *

* To fine tune the curve pi/2 is used since it felt like a good curve. *

* Activity index A is calculated by using the formula: * {@code A = 5 - 5 * [A(t1) + A(t2) + A(t3)] / 3} *

+ * * Plot for A and limits - * https://www.wolframalpha.com/input/?i=plot+y+%3D+5+-+5+*+(1+%2F+(pi%2F2+*+x%2B1))+and+y+%3D1+and+y+%3D+2+and+y+%3D+3+and+y+%3D+3.75+from+-0.5+to+3 + * *

* New Limits for A would thus be * {@code < 1: Inactive} diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/NetworkActivityIndexQueries.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/NetworkActivityIndexQueries.java index f027bd24f..07519c2c6 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/NetworkActivityIndexQueries.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/analysis/NetworkActivityIndexQueries.java @@ -46,15 +46,16 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; *

* Activity for a single week is calculated using {@code A(t) = (1 / (pi/2 * (t/T) + 1))}. * A(t) is based on function f(x) = 1 / (x + 1), which has property f(0) = 1, decreasing from there, but not in a straight line. - * You can see the function plotted here https://www.wolframalpha.com/input/?i=1+%2F+(x%2B1)+from+-1+to+2 + * You can see the function plotted here *

* To fine tune the curve pi/2 is used since it felt like a good curve. *

* Activity index A is calculated by using the formula: * {@code A = 5 - 5 * [A(t1) + A(t2) + A(t3)] / 3} *

+ * * Plot for A and limits - * https://www.wolframalpha.com/input/?i=plot+y+%3D+5+-+5+*+(1+%2F+(pi%2F2+*+x%2B1))+and+y+%3D1+and+y+%3D+2+and+y+%3D+3+and+y+%3D+3.75+from+-0.5+to+3 + * *

* New Limits for A would thus be * {@code < 1: Inactive} diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/init/RemoveDuplicateUserInfoTransaction.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/init/RemoveDuplicateUserInfoTransaction.java index a370b2330..e62e486fe 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/init/RemoveDuplicateUserInfoTransaction.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/init/RemoveDuplicateUserInfoTransaction.java @@ -33,8 +33,9 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Transaction for removing duplicate data in plan_user_info. *

- * https://github.com/plan-player-analytics/Plan/issues/956 - * https://github.com/plan-player-analytics/Plan/issues/967 + * Related issues: + * Issue #956 + * Issue #967 * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/BadNukkitRegisterValuePatch.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/BadNukkitRegisterValuePatch.java index ff6e552f9..d66a2967d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/BadNukkitRegisterValuePatch.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/BadNukkitRegisterValuePatch.java @@ -28,7 +28,7 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Patch to fix incorrect register dates for nukkit. - * https://github.com/plan-player-analytics/Plan/issues/1320 + * Related issue * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/CommandUsageTableRemovalPatch.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/CommandUsageTableRemovalPatch.java index 5f8f6764d..92a9f867c 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/CommandUsageTableRemovalPatch.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/CommandUsageTableRemovalPatch.java @@ -19,7 +19,7 @@ package com.djrapitops.plan.storage.database.transactions.patches; /** * Patch that removes plan_commandusages table. *

- * See https://github.com/plan-player-analytics/Plan/issues/1240 for more details + * See related issue for more details * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/LitebansTableHeaderPatch.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/LitebansTableHeaderPatch.java index 19f8fbee7..c99a9550e 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/LitebansTableHeaderPatch.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/LitebansTableHeaderPatch.java @@ -31,7 +31,7 @@ import java.util.Set; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Removes invalid data caused by https://github.com/plan-player-analytics/Plan/issues/1355. + * Removes invalid data caused by issue #1355. * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/ServerIsProxyPatch.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/ServerIsProxyPatch.java index f0b09581d..89b342129 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/ServerIsProxyPatch.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/transactions/patches/ServerIsProxyPatch.java @@ -28,7 +28,7 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.WHERE; /** * Adds a is_proxy field to remove technical debt assuming name field "BungeeCord" being the proxy. *

- * See https://github.com/plan-player-analytics/Plan/issues/1678 for more details + * See issue #1678 for more details * * @author AuroraLS3 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/utilities/PassEncryptUtil.java b/Plan/common/src/main/java/com/djrapitops/plan/utilities/PassEncryptUtil.java index 7b3d9ae30..7e356594f 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/utilities/PassEncryptUtil.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/utilities/PassEncryptUtil.java @@ -30,7 +30,7 @@ import java.util.Base64; /** * Password Encryption utility. *

- * https://github.com/defuse/password-hashing/blob/master/PasswordStorage.java + * Based on this code * * @author Defuse */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/ChatFormatter.java b/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/ChatFormatter.java index 104cb440d..239baf9f6 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/ChatFormatter.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/ChatFormatter.java @@ -24,7 +24,7 @@ import java.util.List; /** * Formats chat messages in different ways. *

- * Original code: https://hastebin.com/uziyajirag.avrasm + * Original code */ public class ChatFormatter { private static final int CENTER_PX = 154; diff --git a/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/DefaultFontInfo.java b/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/DefaultFontInfo.java index 129caf49d..f31a253cb 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/DefaultFontInfo.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/utilities/chat/DefaultFontInfo.java @@ -19,7 +19,7 @@ package com.djrapitops.plan.utilities.chat; /** * Contains width of characters in the chat with default font. *

- * Original code form https://www.spigotmc.org/threads/free-code-sending-perfectly-centered-chat-message.95872/page-2 + * Original code */ public enum DefaultFontInfo { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/utilities/java/Lists.java b/Plan/common/src/main/java/com/djrapitops/plan/utilities/java/Lists.java index c98258821..4f1305096 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/utilities/java/Lists.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/utilities/java/Lists.java @@ -81,7 +81,7 @@ public class Lists { * @param mapper Function to change object of type A to type B * @param Type of the old list objects * @param Type of the new list objects - * @return List with elements in original that keep returned true for. + * @return Set with elements in original that keep returned true for. */ public static Set mapUnique(Collection original, Function mapper) { Set mapped = new HashSet<>(); diff --git a/Plan/common/src/main/java/com/djrapitops/plan/version/VersionInfo.java b/Plan/common/src/main/java/com/djrapitops/plan/version/VersionInfo.java index 457764abf..660a12af1 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/version/VersionInfo.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/version/VersionInfo.java @@ -19,7 +19,7 @@ package com.djrapitops.plan.version; import java.util.Objects; /** - * Data class for reading version.txt in https://github.com/AuroraLS3/Plan-PlayerAnalytics. + * Data class for reading version.txt in Github Repository. * * @author AuroraLS3 */ diff --git a/Plan/nukkit/src/main/java/com/djrapitops/plan/gathering/timed/NukkitPingCounter.java b/Plan/nukkit/src/main/java/com/djrapitops/plan/gathering/timed/NukkitPingCounter.java index 0feefe2e6..59880cc80 100644 --- a/Plan/nukkit/src/main/java/com/djrapitops/plan/gathering/timed/NukkitPingCounter.java +++ b/Plan/nukkit/src/main/java/com/djrapitops/plan/gathering/timed/NukkitPingCounter.java @@ -49,9 +49,6 @@ import java.util.concurrent.TimeUnit; /** * Task that handles player ping calculation on Nukkit based servers. - *

- * Modified PingManager from LagMonitor plugin. - * https://github.com/games647/LagMonitor/blob/master/src/main/java/com/github/games647/lagmonitor/task/PingManager.java * * @author games647 */