Use Extension::getType(), getName() and getPath() so we can make properties private.
Tweak alexpott's PR: Use Extension::getType(), getName() and getPath() so we can make properties private.