diff --git a/platform/framework/src/load/Extension.js b/platform/framework/src/load/Extension.js index 4339aeac27..7b07f879dc 100644 --- a/platform/framework/src/load/Extension.js +++ b/platform/framework/src/load/Extension.js @@ -133,7 +133,7 @@ define( * @returns {string} path to implementation, or undefined */ Extension.prototype.getImplementationPath = function () { - return this.definition.implementation ? + return (this.hasImplementation() && !this.hasImplementationValue()) ? this.bundle.getSourcePath(this.definition.implementation) : undefined; }; diff --git a/platform/framework/src/resolve/ExtensionResolver.js b/platform/framework/src/resolve/ExtensionResolver.js index d0e30124de..567a399213 100644 --- a/platform/framework/src/resolve/ExtensionResolver.js +++ b/platform/framework/src/resolve/ExtensionResolver.js @@ -61,10 +61,9 @@ define( $log = this.$log; function loadImplementation(extension) { - var implPath = extension.getImplementationPath(), - implPromise = extension.hasImplementationValue() ? + var implPromise = extension.hasImplementationValue() ? Promise.resolve(extension.getImplementationValue()) : - loader.load(implPath), + loader.load(extension.getImplementationPath()), definition = extension.getDefinition(); // Wrap a constructor function (to avoid modifying the original) @@ -119,13 +118,15 @@ define( return extension.getDefinition(); } - // Log that loading has begun - $log.info([ - "Loading implementation ", - implPath, - " for extension ", - extension.getLogName() - ].join("")); + if (!extension.hasImplementationValue()) { + // Log that loading has begun + $log.info([ + "Loading implementation ", + extension.getImplementationPath(), + " for extension ", + extension.getLogName() + ].join("")); + } return implPromise.then(attachDefinition, handleError); }