MCPcopy Index your code
hub / github.com/SpringRoll/SpringRoll / setupPlugins

Method setupPlugins

src/Application.js:318–361  ·  view source on GitHub ↗

* preloads, initializes and starts plugins. * @return {Promise } * @memberof Application

()

Source from the content-addressed store, hash-verified

316 * @memberof Application
317 */
318 setupPlugins() {
319 const preloads = [];
320
321 for (let i = 0; i < Application._plugins.length; i++) {
322 if (Application._plugins[i].preload) {
323 preloads.push(
324 Application._plugins[i]
325 .preload(this)
326 .catch(function preloadFail(error) {
327 Application._plugins[i].preloadFailed = true;
328 console.warn(
329 Application._plugins[i].name,
330 'Preload Failed:',
331 error
332 );
333 })
334 );
335 }
336 }
337
338 // ~wait for all preloads to resolve
339 return Promise.all(preloads).then(() => {
340 // Remove plugins that fail to load.
341 Application._plugins = Application._plugins.filter(
342 plugin => plugin.preloadFailed !== true
343 );
344
345 //init
346 for (let i = 0; i < Application._plugins.length; i++) {
347 if (!Application._plugins[i].init) {
348 continue;
349 }
350 Application._plugins[i].init(this);
351 }
352
353 //start
354 for (let i = 0; i < Application._plugins.length; i++) {
355 if (!Application._plugins[i].start) {
356 continue;
357 }
358 Application._plugins[i].start(this);
359 }
360 });
361 }
362 //test
363 /**
364 * returns instance of a plugin.

Callers 1

constructorMethod · 0.95

Calls 3

preloadMethod · 0.45
initMethod · 0.45
startMethod · 0.45

Tested by

no test coverage detected