Class: JiraConnect::AppDataSerializer

Inherits:
Object
  • Object
show all
Includes:
API::Helpers::RelatedResourcesHelpers, Gitlab::Routing
Defined in:
app/serializers/jira_connect/app_data_serializer.rb

Instance Method Summary collapse

Methods included from API::Helpers::RelatedResourcesHelpers

#expose_path, #expose_url, #issues_available?, #mrs_available?, #project_feature_string_access_level

Methods included from Gitlab::Routing

includes_helpers, redirect_legacy_paths, url_helpers

Constructor Details

#initialize(subscriptions) ⇒ AppDataSerializer

Returns a new instance of AppDataSerializer.



7
8
9
# File 'app/serializers/jira_connect/app_data_serializer.rb', line 7

def initialize(subscriptions)
  @subscriptions = subscriptions
end

Instance Method Details

#as_jsonObject



11
12
13
14
15
16
17
18
19
# File 'app/serializers/jira_connect/app_data_serializer.rb', line 11

def as_json
  skip_groups = @subscriptions.map(&:namespace_id)

  {
    groups_path: api_v4_groups_path(params: { min_access_level: Gitlab::Access::MAINTAINER, skip_groups: skip_groups }),
    subscriptions: JiraConnect::SubscriptionEntity.represent(@subscriptions).as_json,
    subscriptions_path: jira_connect_subscriptions_path
  }
end