Interface JDACProperty<T>

All Superinterfaces:
SpecificProperty<T>
All Known Implementing Classes:
JDACEnumerationProperty, JDACMappingProperty, JDACSingletonProperty

public interface JDACProperty<T> extends SpecificProperty<T>

A JDACProperty is an identifier for a certain component of a JDA-Commands.

A JDA-Commands component is just some sort of arbitrary information. That could be some service like MessageResolver, some setting configured by the user via a builder (like JDACBuilder.localizeCommands(boolean)), a custom implementation of an interface (like Instantiator) or something else.

There are basically 3 types of properties:

  • Singleton for values consisting of one instance
  • Enumeration for values consisting of multiple instances (reference to Collection)
  • Mapping for values representing a mapping between keys and values (reference to Map)

Beside their purpose, each type hold a slightly different set of information, but they share some common values: - a unique name - a scope to which this property is bound - a source, from which the values of this property can be retrieved.

See Also: