protected SubDefDescriptorImpl(DefDescriptor<P> parentDescriptor, String subName, Class<T> defClass) {
if (AuraTextUtil.isNullEmptyOrWhitespace(subName)) {
throw new AuraRuntimeException("Sub definition name cannot be null");
}
LoggingService loggingService = Aura.getLoggingService();
loggingService.startTimer(LoggingService.TIMER_DEF_DESCRIPTOR_CREATION);
try {
this.parentDescriptor = parentDescriptor;
this.name = subName;
this.defType = DefType.getDefType(defClass);
this.qualifiedName = String.format("%s/%s$%s", parentDescriptor.getQualifiedName(), defType.toString(),