lib/jsonapi/link_builder.rb in jsonapi-resources-0.9.10 vs lib/jsonapi/link_builder.rb in jsonapi-resources-0.9.11
- old
+ new
@@ -103,19 +103,22 @@
def format_route(route)
route_formatter.format(route)
end
def formatted_module_path_from_class(klass)
- scopes = if @engine
- module_scopes_from_class(klass)[1..-1]
- else
- module_scopes_from_class(klass)
- end
+ @_module_path_cache ||= {}
+ @_module_path_cache[klass] ||= begin
+ scopes = if @engine
+ module_scopes_from_class(klass)[1..-1]
+ else
+ module_scopes_from_class(klass)
+ end
- unless scopes.empty?
- "/#{ scopes.map {|scope| format_route(scope.to_s.underscore)}.compact.join('/') }/"
- else
- "/"
+ unless scopes.empty?
+ "/#{ scopes.map {|scope| format_route(scope.to_s.underscore)}.compact.join('/') }/"
+ else
+ "/"
+ end
end
end
def module_scopes_from_class(klass)
klass.name.to_s.split("::")[0...-1]