Merge "Correct namespace 'Template' for gom-deva"
[lhc/web/wiklou.git] / includes / config / ConfigFactory.php
index e175765..769364f 100644 (file)
@@ -20,8 +20,8 @@
  *
  * @file
  */
-use MediaWiki\Services\SalvageableService;
 use Wikimedia\Assert\Assert;
+use Wikimedia\Services\SalvageableService;
 
 /**
  * Factory class to create Config objects
@@ -105,7 +105,12 @@ class ConfigFactory implements SalvageableService {
         */
        public function register( $name, $callback ) {
                if ( !is_callable( $callback ) && !( $callback instanceof Config ) ) {
-                       throw new InvalidArgumentException( 'Invalid callback provided' );
+                       if ( is_array( $callback ) ) {
+                               $callback = '[ ' . implode( ', ', $callback ) . ' ]';
+                       } elseif ( is_object( $callback ) ) {
+                               $callback = 'instanceof ' . get_class( $callback );
+                       }
+                       throw new InvalidArgumentException( 'Invalid callback \'' . $callback . '\' provided' );
                }
 
                unset( $this->configs[$name] );