normalizeSchemaConstructor(schema) {
		if (Object.prototype.isPrototypeOf.call(this.ServiceFactory, schema)) {
			return schema;
		}
		// Sometimes the schame was loaded from another node_module or is a object copy.
		// Then we will check if the constructor name is the same, asume that is a derivate object
		// and adjust the prototype of the schema.
		let serviceName = utils.getConstructorName(this.ServiceFactory);
		let target = utils.getConstructorName(schema);
		if (serviceName === target) {
			Object.setPrototypeOf(schema, this.ServiceFactory);
			return schema;
		}
		// Depending how the schema was create the correct constructor name (from base class) will be locate on __proto__.
		target = utils.getConstructorName(Object.getPrototypeOf(schema));
		if (serviceName === target) {
			Object.setPrototypeOf(Object.getPrototypeOf(schema), this.ServiceFactory);
			return schema;
		}
		// This is just to handle some idiosyncrasies from Jest.
		if (schema._isMockFunction) {
			target = utils.getConstructorName(Object.getPrototypeOf(schema.prototype));
			if (serviceName === target) {
				Object.setPrototypeOf(schema, this.ServiceFactory);
				return schema;
			}
		}
		return schema;
	}
Ensure the service schema will be prototype of ServiceFactory;

@param {any} schema
@returns {string}