Class: GroupGroupLink

Inherits:
ApplicationRecord show all
Includes:
Expirable
Defined in:
app/models/group_group_link.rb

Constant Summary

Constants included from Expirable

Expirable::DAYS_TO_EXPIRE

Constants inherited from ApplicationRecord

ApplicationRecord::MAX_PLUCK

Constants included from HasCheckConstraints

HasCheckConstraints::NOT_NULL_CHECK_PATTERN

Constants included from ResetOnColumnErrors

ResetOnColumnErrors::MAX_RESET_PERIOD

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Expirable

#expired?, #expires?, #expires_soon?

Methods inherited from ApplicationRecord

===, cached_column_list, #create_or_load_association, current_transaction, declarative_enum, default_select_columns, delete_all_returning, #deleted_from_database?, id_in, id_not_in, iid_in, nullable_column?, primary_key_in, #readable_by?, safe_ensure_unique, safe_find_or_create_by, safe_find_or_create_by!, #to_ability_name, underscore, where_exists, where_not_exists, with_fast_read_statement_timeout, without_order

Methods included from Organizations::Sharding

#sharding_organization

Methods included from ResetOnColumnErrors

#reset_on_union_error, #reset_on_unknown_attribute_error

Methods included from Gitlab::SensitiveSerializableHash

#serializable_hash

Class Method Details

.access_optionsObject



67
68
69
# File 'app/models/group_group_link.rb', line 67

def self.access_options
  Gitlab::Access.options_with_owner
end

.default_accessObject



71
72
73
# File 'app/models/group_group_link.rb', line 71

def self.default_access
  Gitlab::Access::DEVELOPER
end

.search(query, **options) ⇒ Object



63
64
65
# File 'app/models/group_group_link.rb', line 63

def self.search(query, **options)
  joins(:shared_with_group).merge(Group.search(query, **options))
end

Instance Method Details

#human_accessObject



75
76
77
# File 'app/models/group_group_link.rb', line 75

def human_access
  Gitlab::Access.human_access(self.group_access)
end