Class: ImgFlipMemes::BaseMeme
- Inherits:
-
Object
- Object
- ImgFlipMemes::BaseMeme
- Defined in:
- lib/edi/services/img_flip_memes/base_meme.rb
Direct Known Subclasses
AfraidToAsk, AndItsGone, Everywhere, GonnaHaveABadTime, MostInterestingMan, NotSureIf, OneDoesNotSimply, OverlyAttachedGirlfriend, Picard, SuccessKid, SuddenClarity, WhatIfIToldYou, WillyWonka, YUNo
Instance Attribute Summary collapse
-
#captures ⇒ Object
Returns the value of attribute captures.
-
#imgflip_password ⇒ Object
Returns the value of attribute imgflip_password.
-
#imgflip_user ⇒ Object
Returns the value of attribute imgflip_user.
-
#message ⇒ Object
Returns the value of attribute message.
-
#text0 ⇒ Object
Returns the value of attribute text0.
-
#text1 ⇒ Object
Returns the value of attribute text1.
Instance Method Summary collapse
- #create_meme ⇒ Object
-
#initialize(message, imgflip_user, imgflip_password) ⇒ BaseMeme
constructor
A new instance of BaseMeme.
- #method_missing(name, *args, &block) ⇒ Object
- #template_id ⇒ Object
- #tokenize ⇒ Object
- #trim_captures ⇒ Object
- #url ⇒ Object
Constructor Details
#initialize(message, imgflip_user, imgflip_password) ⇒ BaseMeme
Returns a new instance of BaseMeme.
4 5 6 7 8 9 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 4 def initialize(, imgflip_user, imgflip_password) @message = @imgflip_user = imgflip_user @imgflip_password = imgflip_password @captures = {} end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
52 53 54 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 52 def method_missing(name, *args, &block) .public_send(name, *args, &block) end |
Instance Attribute Details
#captures ⇒ Object
Returns the value of attribute captures.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def captures @captures end |
#imgflip_password ⇒ Object
Returns the value of attribute imgflip_password.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def imgflip_password @imgflip_password end |
#imgflip_user ⇒ Object
Returns the value of attribute imgflip_user.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def imgflip_user @imgflip_user end |
#message ⇒ Object
Returns the value of attribute message.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def @message end |
#text0 ⇒ Object
Returns the value of attribute text0.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def text0 @text0 end |
#text1 ⇒ Object
Returns the value of attribute text1.
3 4 5 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 3 def text1 @text1 end |
Instance Method Details
#create_meme ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 17 def create_meme tokenize trim_captures body = { template_id: template_id, username: imgflip_user, password: imgflip_password, text0: text0, text1: text1 } response = EDI.post(url, body: body).response unless response["success"] raise EDI::ThirdPartyAPIFailure else response["data"]["url"] end end |
#template_id ⇒ Object
14 15 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 14 def template_id end |
#tokenize ⇒ Object
11 12 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 11 def tokenize end |
#trim_captures ⇒ Object
47 48 49 50 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 47 def trim_captures self.captures[:text0] = self.captures[:text0].strip if self.captures[:text0] self.captures[:text1] = self.captures[:text1].strip if self.captures[:text1] end |
#url ⇒ Object
35 36 37 |
# File 'lib/edi/services/img_flip_memes/base_meme.rb', line 35 def url "https://api.imgflip.com/caption_image" end |