Use hyphenated UUID format

This commit is contained in:
Jedediah Smith 2017-02-06 08:15:06 -05:00
parent 315462be73
commit 8a79575b18
4 changed files with 5 additions and 27 deletions

View File

@ -5,16 +5,15 @@ import java.util.UUID;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import tc.oc.api.util.UUIDs;
public class UuidTypeAdapter extends NullableTypeAdapter<UUID> {
@Override
protected void writeNonNull(JsonWriter out, UUID value) throws IOException {
out.value(UUIDs.normalize(value));
out.value(value.toString());
}
@Override
protected UUID readNonNull(JsonReader in) throws IOException {
return UUIDs.parse(in.nextString());
return UUID.fromString(in.nextString());
}
}

View File

@ -1,18 +0,0 @@
package tc.oc.api.util;
import java.util.UUID;
public abstract class UUIDs {
public static String normalize(UUID uuid) {
return uuid == null ? null : uuid.toString().replace("-", "");
}
public static UUID parse(String s) {
if(s.length() != 32) throw new IllegalArgumentException("Invalid UUID: " + s);
return UUID.fromString(s.substring(0, 8) + '-' +
s.substring(8, 12) + '-' +
s.substring(12, 16) + '-' +
s.substring(16, 20) + '-' +
s.substring(20, 32));
}
}

View File

@ -15,8 +15,6 @@ import tc.oc.api.docs.SimplePlayerId;
import tc.oc.api.docs.User;
import tc.oc.api.docs.virtual.UserDoc;
import tc.oc.api.minecraft.servers.DefaultPermissions;
import tc.oc.api.util.Permissions;
import tc.oc.api.util.UUIDs;
import tc.oc.minecraft.api.entity.OfflinePlayer;
public class LocalUserDocument extends SimplePlayerId implements User {
@ -24,8 +22,8 @@ public class LocalUserDocument extends SimplePlayerId implements User {
private final OfflinePlayer player;
public LocalUserDocument(OfflinePlayer player) {
super(UUIDs.normalize(player.getUniqueId()),
UUIDs.normalize(player.getUniqueId()),
super(player.getUniqueId().toString(),
player.getUniqueId().toString(),
player.getLastKnownName().orElse(""));
this.player = player;

View File

@ -29,7 +29,6 @@ import tc.oc.api.users.UserSearchRequest;
import tc.oc.api.users.UserSearchResponse;
import tc.oc.api.users.UserService;
import tc.oc.api.users.UserUpdateResponse;
import tc.oc.api.util.UUIDs;
import tc.oc.commons.core.concurrent.FutureUtils;
import tc.oc.minecraft.api.entity.OfflinePlayer;
import tc.oc.minecraft.api.server.LocalServer;
@ -42,7 +41,7 @@ public class LocalUserService extends NullModelService<User, UserDoc.Partial> im
@Override
public ListenableFuture<User> find(UserId userId) {
return Futures.immediateFuture(new LocalUserDocument(minecraftServer.getOfflinePlayer(UUIDs.parse(userId.player_id()))));
return Futures.immediateFuture(new LocalUserDocument(minecraftServer.getOfflinePlayer(UUID.fromString(userId.player_id()))));
}
@Override