multi_video_streaming 1.0.0.beta2 → 1.0.0.beta4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 576ef1a45eec87fcae6d0ff4f9a4242d9c59cc7472f8440126db5610aa77beaf
4
- data.tar.gz: 9ed14f0f89b288cb6a43c1c9058491f0addbc2243eb9428a31826052439f676d
3
+ metadata.gz: 6214bfc2510cc8ff7505d337b1bba056166885780013b6f63fcda015b3fb00dd
4
+ data.tar.gz: 126b70be46b9c501e73b744f46aa224c4ff392b743935b0d08cff5d850cbfe53
5
5
  SHA512:
6
- metadata.gz: 5ffb28c7493a0503dcba1c6efd42b1660deef94ff22a80a73053d3b1b10c39b7c4b4c2b3d657f2b4ea34cd50fcb62bd4108603a8cb23ba677c429636d40792d9
7
- data.tar.gz: 4edd27ce4ac7871057254aea303093c512f0aebe22a4dd457f687fadc90529ad93b17d0615c72dbdec052a9945895d10affba89e53dc4671136551f5a9f15c35
6
+ metadata.gz: 1add05cefbd4a34d1eba73dad3b2f8c51581a4335cf5210a4a277a59cca36c48aed7bb789981935c7a413963822e76f987c4a47eaa9086b9ec9261b3bc8fd809
7
+ data.tar.gz: 57d7ba6966c5394c83b636cc6749ccb93351420aed76fbade17af4375d64411b4eb052b8f1e06aed143565a42163f2839447ef93306d1741111a65c054290fb3
@@ -29,7 +29,7 @@ module MultiVideoStreaming
29
29
  response = Aws::S3::Resource.new().bucket(bucket).object(video_id)
30
30
  video_url = response.public_url
31
31
 
32
- url_signed = MultiVideoStreaming::Utils::S3.generate_presign_url(bucket: bucket, key: video_id)
32
+ url_signed = MultiVideoStreaming::Utils::S3.generate_presign_url(method: :get, bucket: bucket, key: video_id)
33
33
  data = {
34
34
  "key": response.key,
35
35
  "title": response.key,
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MultiVideoStreaming
4
+ module Errors
5
+ class InvalidS3MethodName < StandardError
6
+ def initialize(method)
7
+ super("Method name #{method} is invalid")
8
+ end
9
+ end
10
+ end
11
+ end
@@ -3,5 +3,6 @@
3
3
  require "multi_video_streaming/errors/duplicated_platform_name"
4
4
  require "multi_video_streaming/errors/invalid_platform_name"
5
5
  require "multi_video_streaming/errors/invalid_platforms_param"
6
+ require "multi_video_streaming/errors/invalid_s3_method_name"
6
7
  require "multi_video_streaming/errors/missing_param"
7
8
  require "multi_video_streaming/errors/s3_is_not_valid_to_upload"
@@ -3,9 +3,12 @@
3
3
  module MultiVideoStreaming
4
4
  module Utils
5
5
  module S3
6
- def self.generate_presign_url(bucket:, key:)
6
+ def self.generate_presign_url(method:, bucket:, key:)
7
+ methods = { :get => :get_object, :put => :put_object, :delete => :delete_object }
8
+ method_to_generate_presign_url = methods[method]
9
+ raise MultiVideoStreaming::Errors::InvalidS3MethodName.new(method) if method_to_generate_presign_url.nil?
7
10
  signer = Aws::S3::Presigner.new
8
- signer.presigned_url(:get_object, bucket: bucket, key: key, expires_in: 900)
11
+ signer.presigned_url(method_to_generate_presign_url, bucket: bucket, key: key, expires_in: 900)
9
12
  end
10
13
  end
11
14
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MultiVideoStreaming
4
- VERSION = "1.0.0.beta2"
4
+ VERSION = "1.0.0.beta4"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multi_video_streaming
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta2
4
+ version: 1.0.0.beta4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henrique Schmeller
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-10-03 00:00:00.000000000 Z
13
+ date: 2022-10-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rspec
@@ -83,6 +83,7 @@ files:
83
83
  - lib/multi_video_streaming/errors/duplicated_platform_name.rb
84
84
  - lib/multi_video_streaming/errors/invalid_platform_name.rb
85
85
  - lib/multi_video_streaming/errors/invalid_platforms_param.rb
86
+ - lib/multi_video_streaming/errors/invalid_s3_method_name.rb
86
87
  - lib/multi_video_streaming/errors/missing_param.rb
87
88
  - lib/multi_video_streaming/errors/s3_is_not_valid_to_upload.rb
88
89
  - lib/multi_video_streaming/factories.rb