Class: Packages::Rubygems::CreatePackageFileService
- Inherits:
-
Object
- Object
- Packages::Rubygems::CreatePackageFileService
- Defined in:
- app/services/packages/rubygems/create_package_file_service.rb
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(package:, params: {}) ⇒ CreatePackageFileService
constructor
A new instance of CreatePackageFileService.
Constructor Details
#initialize(package:, params: {}) ⇒ CreatePackageFileService
Returns a new instance of CreatePackageFileService.
6 7 8 9 |
# File 'app/services/packages/rubygems/create_package_file_service.rb', line 6 def initialize(package:, params: {}) @package = package @params = params end |
Instance Method Details
#execute ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'app/services/packages/rubygems/create_package_file_service.rb', line 11 def execute unless package.present? return ServiceResponse.error(message: 'Package is required', reason: :package_is_required) end package_file = ::Packages::CreatePackageFileService.new(package, params).execute package_file.run_after_commit_or_now do ::Packages::Rubygems::ExtractionWorker.perform_async(package_file.id) end ServiceResponse.success(payload: { package_file: package_file }) end |