Module: Banzai::CrossProjectReference
- Included in:
- Filter::References::AbstractReferenceFilter
- Defined in:
- lib/banzai/cross_project_reference.rb
Overview
Common methods for ReferenceFilters that support an optional cross-project reference.
Instance Method Summary collapse
-
#parent_from_ref(ref) ⇒ Object
Given a cross-project reference string, get the Project record.
Instance Method Details
#parent_from_ref(ref) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/banzai/cross_project_reference.rb', line 16 def parent_from_ref(ref) return context[:project] || context[:group] unless ref return context[:project] if context[:project]&.full_path == ref if reference_cache.cache_loaded? # optimization to reuse the parent_per_reference query information reference_cache.parent_per_reference[ref || reference_cache.current_parent_path] else Project.find_by_full_path(ref) end end |