23
23
import java .util .Optional ;
24
24
import java .util .UUID ;
25
25
import java .util .function .Consumer ;
26
- import java .util .logging .Level ;
27
26
28
27
public final class Main extends JavaPlugin {
28
+ private final boolean VERBOSE_LOGGING = false ;
29
+ private void verboseLog (String message ) {
30
+ if (VERBOSE_LOGGING ) getLogger ().info (message );
31
+ }
32
+
29
33
@ Override
30
34
public void onEnable () {
31
35
new Metrics (this , 16426 );
32
36
33
37
BlueMapAPI .onEnable (blueMapOnEnableListener );
34
38
35
39
getLogger ().info ("BlueMap Floodgate compatibility plugin enabled!" );
36
- // getLogger().setLevel(Level.FINE);
37
40
}
38
41
39
42
private final Consumer <BlueMapAPI > blueMapOnEnableListener = blueMapAPI -> {
@@ -43,25 +46,22 @@ public void onEnable() {
43
46
44
47
@ Override
45
48
public Optional <BufferedImage > load (UUID playerUUID ) throws IOException {
46
- getLogger ().log (Level .FINE , "Loading skin for " + playerUUID );
47
49
if (floodgateApi .isFloodgatePlayer (playerUUID )) {
48
- getLogger ().log (Level .FINE , "Player is a Floodgate player" );
49
50
FloodgatePlayer floodgatePlayer = floodgateApi .getPlayer (playerUUID );
50
51
String xuid = floodgatePlayer .getXuid ();
51
52
@ Nullable String textureID = textureIDFromXUID (xuid );
52
53
if (textureID == null ) {
53
- getLogger (). log ( Level . FINE , "TextureID for " + playerUUID + " is null" );
54
+ verboseLog ( "TextureID for " + playerUUID + " is null" );
54
55
return Optional .empty ();
55
56
}
56
57
@ Nullable BufferedImage skin = skinFromTextureID (textureID );
57
58
if (skin == null ) {
58
- getLogger (). log ( Level . FINE , "Skin for " + playerUUID + " is null" );
59
+ verboseLog ( "Skin for " + playerUUID + " is null" );
59
60
return Optional .empty ();
60
61
}
61
- getLogger (). log ( Level . FINE , "Skin for " + playerUUID + " successfully gotten!" );
62
+ verboseLog ( "Skin for " + playerUUID + " successfully gotten!" );
62
63
return Optional .of (skin );
63
64
} else {
64
- getLogger ().log (Level .FINE , "Player is not a Floodgate player" );
65
65
return defaultSkinProvider .load (playerUUID );
66
66
}
67
67
}
@@ -89,36 +89,37 @@ public void onDisable() {
89
89
private @ Nullable String textureIDFromXUID (@ NotNull String xuid ) {
90
90
try {
91
91
URL url = new URL ("https://api.geysermc.org/v2/skin/" + xuid );
92
- getLogger (). log ( Level . FINE , "Getting textureID from " + url );
92
+ verboseLog ( "Getting textureID from " + url );
93
93
try {
94
94
URLConnection request = url .openConnection ();
95
95
request .connect ();
96
96
97
97
JsonObject joRoot = JsonParser .parseReader (new InputStreamReader ((InputStream ) request .getContent ())).getAsJsonObject ();
98
98
if (joRoot == null ) {
99
- getLogger (). log ( Level . WARNING , "joRoot is null!" );
99
+ verboseLog ( "joRoot is null!" );
100
100
return null ;
101
101
}
102
102
103
103
JsonElement jeTextureID = joRoot .get ("texture_id" );
104
104
if (jeTextureID == null ) {
105
- getLogger (). log ( Level . WARNING , "jeTextureID is null!" );
105
+ verboseLog ( "jeTextureID is null!" );
106
106
return null ;
107
107
}
108
108
109
109
String textureID = jeTextureID .getAsString ();
110
110
if (textureID == null ) {
111
- getLogger (). log ( Level . WARNING , "textureID is null!" );
111
+ verboseLog ( "textureID is null!" );
112
112
return null ;
113
113
}
114
114
115
115
return textureID ;
116
116
} catch (IOException e ) {
117
- getLogger ().log (Level .WARNING , "Failed to get the textureID for " + xuid + " from " + url , e );
117
+ getLogger ().warning ("Failed to get the textureID for " + xuid + " from " + url );
118
+ e .printStackTrace ();
118
119
return null ;
119
120
}
120
121
} catch (MalformedURLException e ) {
121
- getLogger (). log ( Level . SEVERE , "Geyser API URL is malformed" , e );
122
+ e . printStackTrace ( );
122
123
return null ;
123
124
}
124
125
}
@@ -128,7 +129,7 @@ public void onDisable() {
128
129
* @return the skin of the player, or null if it could not be found
129
130
*/
130
131
private @ Nullable BufferedImage skinFromTextureID (@ NotNull String textureID ) {
131
- getLogger (). log ( Level . FINE , "Getting skin from textureID: " + textureID );
132
+ verboseLog ( "Getting skin from textureID: " + textureID );
132
133
return imageFromURL ("https://textures.minecraft.net/texture/" + textureID );
133
134
}
134
135
@@ -140,17 +141,18 @@ public void onDisable() {
140
141
BufferedImage result ;
141
142
try {
142
143
URL imageUrl = new URL (url );
143
- getLogger (). log ( Level . FINE , "Getting image from URL: " + url );
144
+ verboseLog ( "Getting image from URL: " + url );
144
145
try {
145
146
InputStream in = imageUrl .openStream ();
146
147
result = ImageIO .read (in );
147
148
in .close ();
148
149
} catch (IOException e ) {
149
- getLogger ().log (Level .SEVERE , "Failed to get the image from " + url , e );
150
+ getLogger ().warning ("Failed to get the image from " + url );
151
+ e .printStackTrace ();
150
152
return null ;
151
153
}
152
154
} catch (MalformedURLException e ) {
153
- getLogger (). log ( Level . SEVERE , "URL is malformed: " + url , e );
155
+ e . printStackTrace ( );
154
156
return null ;
155
157
}
156
158
return result ;
0 commit comments