@Override
        public MODEL createModel(ConfigModelContext context) {
            try {
                Constructor<MODEL> constructor = configModelClass.getConstructor(ConfigModelContext.class);
                return constructor.newInstance(context);
            } catch (NoSuchMethodException | InvocationTargetException | InstantiationException | IllegalAccessException e) {
                throw new RuntimeException("Error constructing model '" + configModelClass.getName() + "'", e);
            }
        }
Builds an instance of this component model.
This calls instantiate(...), instance.setUp(...), doBuild(instance, ...).

@param factory A factory capable of creating models.
@param spec the XML element this is constructed from
@param context A context object containing various data used by builders.
config-model/src/main/java/com/yahoo/config/model/builder/xml/ConfigModelBuilder.java