File tree Expand file tree Collapse file tree 1 file changed +20
-4
lines changed
src/main/java/net/onelitefeather/bettergopaint/objects/other Expand file tree Collapse file tree 1 file changed +20
-4
lines changed Original file line number Diff line number Diff line change 2323import org .bukkit .block .Block ;
2424import org .jetbrains .annotations .NotNull ;
2525
26- import java .util .Arrays ;
2726import java .util .Optional ;
2827
2928public enum SurfaceMode {
@@ -46,19 +45,36 @@ public enum SurfaceMode {
4645 */
4746 RELATIVE ("Relative" );
4847
48+ private static final SurfaceMode [] VALUES = values ();
49+
4950 private final @ NotNull String name ;
5051
52+ /**
53+ * Constructs a new surface mode entry with the given name.
54+ * @param name the name of the surface mode
55+ */
5156 SurfaceMode (@ NotNull String name ) {
5257 this .name = name ;
5358 }
5459
60+ /**
61+ * Gets the name of the surface mode.
62+ * @return the name from the surface mode
63+ */
5564 public @ NotNull String getName () {
5665 return name ;
5766 }
5867
68+ /**
69+ * Returns the {@link SurfaceMode} enum entry by the given name.
70+ * @param name the name of the surface mode
71+ * @return the surface mode by the given name wrapped in an {@link Optional}
72+ */
5973 public static @ NotNull Optional <SurfaceMode > byName (@ NotNull String name ) {
60- return Arrays .stream (values ())
61- .filter (surfaceMode -> surfaceMode .getName ().equals (name ))
62- .findAny ();
74+ SurfaceMode surfaceMode = null ;
75+ for (int i = 0 ; i < VALUES .length && surfaceMode == null ; i ++) {
76+ surfaceMode = VALUES [i ].getName ().equals (name ) ? VALUES [i ] : null ;
77+ }
78+ return Optional .ofNullable (surfaceMode );
6379 }
6480}
You can’t perform that action at this time.
0 commit comments