Class DataObjectResolver

java.lang.Object
io.github.kaktushose.jdac.message.resolver.DataObjectResolver
All Implemented Interfaces:
Resolver<DataObject>

public final class DataObjectResolver extends Object implements Resolver<DataObject>

Resolver implementation that is capable of resolving JDAs DataObject.

Will traverse the DataObject down to every textual JSON node and will resolve all the fields that were configured at the constructor.

DataObject object = DataObject.fromJson("""
        {
            "resolve": "my-key",
            "skip": "not resolved"
        }
        """);
DataObjectResolver objectResolver = new DataObjectResolver(messageResolver, Set.of("resolve"));
object = objectResolver.resolve(object, Locale.ENGLISH, Map.of());

Note that many JDA objects can be directly serialized as and deserialized from a DataObject.