def resolveCommand(cmd, parentPackage)
return @resolveCommand[[parentPackage, cmd]] if @resolveCommand.has_key?([parentPackage, cmd])
package = @packageResolver.packageByCommand(parentPackage, cmd)
result = nil
if package
extensionContainer = @extensionFactory.extensionContainer(package)
if extensionContainer.respond_to?(cmd)
result = extensionContainer
else
className = cmd.to_s[0..0].upcase + cmd.to_s[1..-1]
result = package.eClasses.find{|c| c.name == className}
end
end
@resolveCommand[[parentPackage, cmd]] = [package, result]
end