Validate the set of classes and singletons.
A registered class is removed from the set of registered classes if an instance of that class is a member of the set of registered singletons.
A registered class that is an interface or an abstract class is removed from the registered classes.
File extension to media type and language mappings in the properties {@link #PROPERTY_MEDIA_TYPE_MAPPINGS} and {@link #PROPERTY_LANGUAGE_MAPPINGS}, respectively, are processed and key/values pairs added to the maps returned from {@link #getMediaTypeMappings() } and {@link #getLanguageMappings() }, respectively. The characters of file extension values will be contextually encoded according to the set of valid characters defined for a path segment.
@throws IllegalArgumentException if the set of registered singletons contains more than one instance of the same root resource class, or validation of media type and language mappings failed.