Class: Applications::CreateService

Inherits:
Object
  • Object
show all
Defined in:
app/services/applications/create_service.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(current_user, request, params) ⇒ CreateService

EE would override and use request arg



18
19
20
21
22
# File 'app/services/applications/create_service.rb', line 18

def initialize(current_user, request, params)
  @current_user = current_user
  @request = request
  @params = params.except(:ip_address)
end

Instance Attribute Details

#current_userObject (readonly)

Returns the value of attribute current_user.



5
6
7
# File 'app/services/applications/create_service.rb', line 5

def current_user
  @current_user
end

#paramsObject (readonly)

Returns the value of attribute params.



5
6
7
# File 'app/services/applications/create_service.rb', line 5

def params
  @params
end

#requestObject (readonly)

Returns the value of attribute request.



5
6
7
# File 'app/services/applications/create_service.rb', line 5

def request
  @request
end

Class Method Details

.disable_ropc_available?Boolean

Overridden in EE

Returns:

  • (Boolean)


8
9
10
# File 'app/services/applications/create_service.rb', line 8

def self.disable_ropc_available?
  false
end

.disable_ropc_for_all_applications?Boolean

Overridden in EE

Returns:

  • (Boolean)


13
14
15
# File 'app/services/applications/create_service.rb', line 13

def self.disable_ropc_for_all_applications?
  false
end

Instance Method Details

#executeObject



24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'app/services/applications/create_service.rb', line 24

def execute
  @application = Authn::OauthApplication.new(params)

  unless params[:scopes].present?
    @application.errors.add(:base, _("Scopes can't be blank"))

    return @application
  end

  @application.ropc_enabled = false if self.class.disable_ropc_available?
  @application.save
  @application
end