src/sap.ui.core/src/sap/ui/core/mvc/View.js
function initPreprocessorQueues(oView, mSettings) {
		var oViewClass = oView.getMetadata().getClass();

		function resolvePreprocessors(oPreprocessor) {
			oPreprocessor.preprocessor = initPreprocessor(oPreprocessor, mSettings.async);
		}

		// shallow copy to avoid issues when manipulating the internal object structure
		oView.mPreprocessors = jQuery.extend({}, mSettings.preprocessors);
		for (var _sType in oViewClass.PreprocessorType) {
			// build the array structure
			var sType = oViewClass.PreprocessorType[_sType];
			if (oView.mPreprocessors[sType] && !Array.isArray(oView.mPreprocessors[sType])) {
				oView.mPreprocessors[sType] = [oView.mPreprocessors[sType]];
			} else if (!oView.mPreprocessors[sType]) {
				oView.mPreprocessors[sType] = [];
			}
			oView.mPreprocessors[sType].forEach(alignPreprocessorStructure);
			oView.mPreprocessors[sType] = getPreprocessorQueue.call(oView, oViewClass._sType, sType);
			oView.mPreprocessors[sType].forEach(resolvePreprocessors);
		}
	}
function initPreprocessorQueues(oView, mSettings) {
		var oViewClass = oView.getMetadata().getClass();

		function resolvePreprocessors(oPreprocessor) {
			oPreprocessor.preprocessor = initPreprocessor(oPreprocessor, mSettings.async);
		}

		// shallow copy to avoid issues when manipulating the internal object structure
		oView.mPreprocessors = jQuery.extend({}, mSettings.preprocessors);
		for (var _sType in oViewClass.PreprocessorType) {
			// build the array structure
			var sType = oViewClass.PreprocessorType[_sType];
			if (oView.mPreprocessors[sType] && !Array.isArray(oView.mPreprocessors[sType])) {
				oView.mPreprocessors[sType] = [oView.mPreprocessors[sType]];
			} else if (!oView.mPreprocessors[sType]) {
				oView.mPreprocessors[sType] = [];
			}
			oView.mPreprocessors[sType].forEach(alignPreprocessorStructure);
			oView.mPreprocessors[sType] = getPreprocessorQueue.call(oView, oViewClass._sType, sType);
			oView.mPreprocessors[sType].forEach(resolvePreprocessors);
		}
	}
function initPreprocessorQueues ( oView , mSettings ) { var oViewClass = oView . getMetadata ( ) . getClass ( ) ; function resolvePreprocessors ( oPreprocessor ) { oPreprocessor . preprocessor = initPreprocessor ( oPreprocessor , mSettings . async ) ; } // shallow copy to avoid issues when manipulating the internal object structure oView . mPreprocessors = jQuery . extend ( { } , mSettings . preprocessors ) ; for ( var _sType in oViewClass . PreprocessorType ) { // build the array structure var sType = oViewClass . PreprocessorType [ _sType ] ; if ( oView . mPreprocessors [ sType ] && ! Array . isArray ( oView . mPreprocessors [ sType ] ) ) { oView . mPreprocessors [ sType ] = [ oView . mPreprocessors [ sType ] ] ; } else if ( ! oView . mPreprocessors [ sType ] ) { oView . mPreprocessors [ sType ] = [ ] ; } oView . mPreprocessors [ sType ] . forEach ( alignPreprocessorStructure ) ; oView . mPreprocessors [ sType ] = getPreprocessorQueue . call ( oView , oViewClass . _sType , sType ) ; oView . mPreprocessors [ sType ] . forEach ( resolvePreprocessors ) ; } }
init internal registry and convert single declarations to array, for compatibility

@param {sap.ui.core.mvc.View} oView This view instance
@param {object} mSettings Settings for the view
@private
init internal registry and convert single declarations to array for compatibility