/** * Gets this watcher object's serializer. Will return null if the * serializer was never specified. * * @return The serializer, or null */ public Serializer getSerializer() { if (getSerializer == null) { getSerializer = Accessors.getMethodAccessor(FuzzyReflection.fromClass(HANDLE_TYPE, true) .getMethodByParameters("getSerializer", MinecraftReflection.getDataWatcherSerializerClass(), new Class[0])); } Object serializer = getSerializer.invoke(handle); if (serializer != null) { Serializer wrapper = Registry.fromHandle(serializer); if (wrapper != null) { return wrapper; } else { return new Serializer(null, serializer, false); } } else { return null; } }