mangopay-v4 4.0.0 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.gitignore +29 -29
- data/.rspec +3 -3
- data/.rubocop.yml +1 -1
- data/.travis.yml +21 -13
- data/Gemfile +2 -2
- data/LICENSE +20 -20
- data/README.md +379 -379
- data/bin/mangopay +9 -9
- data/lib/mangopay.rb +132 -132
- data/lib/mangopay/api/api.rb +8 -8
- data/lib/mangopay/api/api_methods.rb +160 -136
- data/lib/mangopay/api/auth_token_manager.rb +173 -173
- data/lib/mangopay/api/http_client.rb +324 -324
- data/lib/mangopay/api/service/bank_accounts.rb +145 -145
- data/lib/mangopay/api/service/banking_aliases.rb +83 -0
- data/lib/mangopay/api/service/cards.rb +151 -151
- data/lib/mangopay/api/service/client_wallets.rb +88 -88
- data/lib/mangopay/api/service/clients.rb +67 -67
- data/lib/mangopay/api/service/dispute_documents.rb +157 -157
- data/lib/mangopay/api/service/disputes.rb +186 -186
- data/lib/mangopay/api/service/e_money.rb +63 -41
- data/lib/mangopay/api/service/events.rb +46 -46
- data/lib/mangopay/api/service/hooks.rb +92 -92
- data/lib/mangopay/api/service/kyc_documents.rb +152 -152
- data/lib/mangopay/api/service/mandates.rb +141 -141
- data/lib/mangopay/api/service/oauth_tokens.rb +24 -24
- data/lib/mangopay/api/service/pay_ins.rb +369 -259
- data/lib/mangopay/api/service/pay_outs.rb +53 -53
- data/lib/mangopay/api/service/pre_authorizations.rb +126 -68
- data/lib/mangopay/api/service/refunds.rb +159 -61
- data/lib/mangopay/api/service/reports.rb +150 -150
- data/lib/mangopay/api/service/repudiations.rb +31 -31
- data/lib/mangopay/api/service/responses.rb +101 -101
- data/lib/mangopay/api/service/settlement_transfers.rb +54 -54
- data/lib/mangopay/api/service/transactions.rb +246 -182
- data/lib/mangopay/api/service/transfers.rb +53 -53
- data/lib/mangopay/api/service/ubo_declarations.rb +94 -69
- data/lib/mangopay/api/service/users.rb +162 -162
- data/lib/mangopay/api/service/wallets.rb +98 -98
- data/lib/mangopay/api/uri_provider.rb +32 -34
- data/lib/mangopay/common/json_tag_converter.rb +70 -67
- data/lib/mangopay/common/jsonifier.rb +266 -248
- data/lib/mangopay/common/log_provider.rb +33 -33
- data/lib/mangopay/common/rate_limit_interval.rb +16 -16
- data/lib/mangopay/common/read_only_fields.rb +26 -26
- data/lib/mangopay/common/response_error.rb +61 -61
- data/lib/mangopay/common/sort_direction.rb +14 -14
- data/lib/mangopay/common/sort_field.rb +12 -12
- data/lib/mangopay/common/template_url_options.rb +8 -8
- data/lib/mangopay/configuration.rb +38 -38
- data/lib/mangopay/environment.rb +65 -65
- data/lib/mangopay/model/address.rb +26 -26
- data/lib/mangopay/model/billing.rb +13 -0
- data/lib/mangopay/model/birthplace.rb +15 -0
- data/lib/mangopay/model/declared_ubo.rb +20 -20
- data/lib/mangopay/model/dispute_reason.rb +14 -14
- data/lib/mangopay/model/document_page_consult.rb +14 -14
- data/lib/mangopay/model/e_money.rb +17 -17
- data/lib/mangopay/model/entity/account/bank_account.rb +25 -25
- data/lib/mangopay/model/entity/account/ca_bank_account.rb +26 -26
- data/lib/mangopay/model/entity/account/debited_bank_account.rb +31 -0
- data/lib/mangopay/model/entity/account/gb_bank_account.rb +20 -20
- data/lib/mangopay/model/entity/account/iban_bank_account.rb +20 -20
- data/lib/mangopay/model/entity/account/other_bank_account.rb +23 -23
- data/lib/mangopay/model/entity/account/us_bank_account.rb +23 -23
- data/lib/mangopay/model/entity/banking_alias.rb +27 -0
- data/lib/mangopay/model/entity/card.rb +44 -44
- data/lib/mangopay/model/entity/card_registration.rb +42 -42
- data/lib/mangopay/model/entity/client.rb +65 -62
- data/lib/mangopay/model/entity/client_wallet.rb +22 -22
- data/lib/mangopay/model/entity/dispute.rb +49 -49
- data/lib/mangopay/model/entity/dispute_document.rb +28 -28
- data/lib/mangopay/model/entity/entity_base.rb +17 -17
- data/lib/mangopay/model/entity/hook.rb +25 -25
- data/lib/mangopay/model/entity/kyc_document.rb +27 -27
- data/lib/mangopay/model/entity/mandate.rb +50 -50
- data/lib/mangopay/model/entity/pay_in/apple_pay_direct_pay_in.rb +26 -0
- data/lib/mangopay/model/entity/pay_in/bank_wire_direct_pay_in.rb +24 -21
- data/lib/mangopay/model/entity/pay_in/bank_wire_external_instruction_pay_in.rb +19 -0
- data/lib/mangopay/model/entity/pay_in/card_direct_pay_in.rb +41 -32
- data/lib/mangopay/model/entity/pay_in/card_pre_authorized_pay_in.rb +15 -12
- data/lib/mangopay/model/entity/pay_in/card_web_pay_in.rb +36 -39
- data/lib/mangopay/model/entity/pay_in/direct_debit_direct_pay_in.rb +25 -22
- data/lib/mangopay/model/entity/pay_in/direct_debit_web_pay_in.rb +37 -37
- data/lib/mangopay/model/entity/pay_in/google_pay_direct_pay_in.rb +28 -0
- data/lib/mangopay/model/entity/pay_in/pay_in.rb +18 -15
- data/lib/mangopay/model/entity/pay_in/paypal_web_pay_in.rb +15 -0
- data/lib/mangopay/model/entity/pay_out.rb +21 -21
- data/lib/mangopay/model/entity/pre_authorization.rb +74 -67
- data/lib/mangopay/model/entity/refund.rb +17 -17
- data/lib/mangopay/model/entity/report.rb +50 -50
- data/lib/mangopay/model/entity/repudiation.rb +17 -17
- data/lib/mangopay/model/entity/settlement_transfer.rb +16 -16
- data/lib/mangopay/model/entity/transaction.rb +51 -51
- data/lib/mangopay/model/entity/transfer.rb +12 -12
- data/lib/mangopay/model/entity/ubo.rb +30 -0
- data/lib/mangopay/model/entity/ubo_declaration.rb +29 -31
- data/lib/mangopay/model/entity/user/legal_user.rb +55 -52
- data/lib/mangopay/model/entity/user/natural_user.rb +49 -49
- data/lib/mangopay/model/entity/user/user.rb +17 -17
- data/lib/mangopay/model/entity/wallet.rb +27 -27
- data/lib/mangopay/model/enum/account_type.rb +23 -23
- data/lib/mangopay/model/enum/avs_result.rb +19 -0
- data/lib/mangopay/model/enum/banking_alias_type.rb +12 -0
- data/lib/mangopay/model/enum/business_type.rb +17 -0
- data/lib/mangopay/model/enum/card_status.rb +14 -14
- data/lib/mangopay/model/enum/card_type.rb +32 -32
- data/lib/mangopay/model/enum/card_validity.rb +18 -18
- data/lib/mangopay/model/enum/country_iso.rb +758 -758
- data/lib/mangopay/model/enum/culture_code.rb +43 -43
- data/lib/mangopay/model/enum/currency_iso.rb +551 -551
- data/lib/mangopay/model/enum/declared_ubo_refused_reason_type.rb +15 -15
- data/lib/mangopay/model/enum/declared_ubo_status.rb +17 -17
- data/lib/mangopay/model/enum/deposit_type.rb +14 -14
- data/lib/mangopay/model/enum/direct_debit_type.rb +12 -12
- data/lib/mangopay/model/enum/dispute_doc_refused_reason_type.rb +24 -24
- data/lib/mangopay/model/enum/dispute_document_type.rb +22 -22
- data/lib/mangopay/model/enum/dispute_reason_type.rb +32 -32
- data/lib/mangopay/model/enum/dispute_status.rb +20 -20
- data/lib/mangopay/model/enum/dispute_type.rb +14 -14
- data/lib/mangopay/model/enum/document_status.rb +20 -20
- data/lib/mangopay/model/enum/download_format.rb +10 -10
- data/lib/mangopay/model/enum/event_type.rb +76 -73
- data/lib/mangopay/model/enum/funds_type.rb +14 -14
- data/lib/mangopay/model/enum/hook_status.rb +12 -12
- data/lib/mangopay/model/enum/hook_validity.rb +14 -14
- data/lib/mangopay/model/enum/income_range.rb +20 -20
- data/lib/mangopay/model/enum/kyc_doc_refused_reason_type.rb +36 -36
- data/lib/mangopay/model/enum/kyc_document_type.rb +18 -18
- data/lib/mangopay/model/enum/kyc_level.rb +12 -12
- data/lib/mangopay/model/enum/legal_person_type.rb +14 -14
- data/lib/mangopay/model/enum/mandate_culture_code.rb +22 -22
- data/lib/mangopay/model/enum/mandate_execution_type.rb +10 -10
- data/lib/mangopay/model/enum/mandate_scheme.rb +12 -12
- data/lib/mangopay/model/enum/mandate_status.rb +23 -23
- data/lib/mangopay/model/enum/mandate_type.rb +10 -10
- data/lib/mangopay/model/enum/natural_user_capacity.rb +14 -14
- data/lib/mangopay/model/enum/pay_in_execution_type.rb +17 -17
- data/lib/mangopay/model/enum/pay_in_payment_type.rb +29 -20
- data/lib/mangopay/model/enum/pay_out_payment_type.rb +10 -10
- data/lib/mangopay/model/enum/payment_status.rb +20 -20
- data/lib/mangopay/model/enum/person_type.rb +14 -14
- data/lib/mangopay/model/enum/platform_type.rb +22 -22
- data/lib/mangopay/model/enum/pre_authorization_execution_type.rb +10 -10
- data/lib/mangopay/model/enum/pre_authorization_status.rb +17 -17
- data/lib/mangopay/model/enum/refund_reason_type.rb +20 -20
- data/lib/mangopay/model/enum/report_status.rb +16 -16
- data/lib/mangopay/model/enum/report_type.rb +12 -12
- data/lib/mangopay/model/enum/sector.rb +29 -0
- data/lib/mangopay/model/enum/secure_mode.rb +15 -15
- data/lib/mangopay/model/enum/transaction_nature.rb +16 -16
- data/lib/mangopay/model/enum/transaction_status.rb +14 -14
- data/lib/mangopay/model/enum/transaction_type.rb +14 -14
- data/lib/mangopay/model/enum/ubo_declaration_refused_reason_type.rb +18 -18
- data/lib/mangopay/model/enum/ubo_declaration_status.rb +20 -20
- data/lib/mangopay/model/event.rb +17 -17
- data/lib/mangopay/model/model.rb +214 -193
- data/lib/mangopay/model/money.rb +16 -16
- data/lib/mangopay/model/pay_in_web_extended_view.rb +30 -30
- data/lib/mangopay/model/platform_categorization.rb +15 -0
- data/lib/mangopay/model/refund_reason.rb +14 -14
- data/lib/mangopay/model/report_filter.rb +82 -82
- data/lib/mangopay/model/request/cancel_request.rb +15 -15
- data/lib/mangopay/model/request/complete_registration_request.rb +12 -12
- data/lib/mangopay/model/request/currency_request.rb +12 -12
- data/lib/mangopay/model/request/deactivation_request.rb +9 -9
- data/lib/mangopay/model/request/filter_request.rb +37 -37
- data/lib/mangopay/model/request/submit_document_request.rb +13 -13
- data/lib/mangopay/model/request/submit_ubo_declaration_request.rb +16 -13
- data/lib/mangopay/model/request/upload_file_request.rb +8 -8
- data/lib/mangopay/model/response_replica.rb +26 -26
- data/lib/mangopay/model/security_info.rb +13 -0
- data/lib/mangopay/util/custom_formatter.rb +11 -11
- data/lib/mangopay/util/custom_logger.rb +33 -33
- data/lib/mangopay/util/enum.rb +51 -51
- data/lib/mangopay/util/file_encoder.rb +15 -15
- data/lib/mangopay/util/non_instantiable.rb +5 -5
- data/lib/mangopay/util/storage_strategy.rb +9 -9
- data/lib/mangopay/util/void_logger.rb +5 -5
- data/mangopay-v4.gemspec +32 -0
- data/mangopay.gemspec +32 -32
- data/spec/context/address_context.rb +24 -24
- data/spec/context/bank_account_context.rb +137 -137
- data/spec/context/banking_alias_context.rb +17 -0
- data/spec/context/birthplace_context.rb +17 -0
- data/spec/context/card_context.rb +45 -45
- data/spec/context/client_context.rb +43 -44
- data/spec/context/dispute_context.rb +36 -36
- data/spec/context/dispute_document_context.rb +19 -19
- data/spec/context/hook_context.rb +15 -15
- data/spec/context/kyc_document_context.rb +22 -22
- data/spec/context/mandate_context.rb +26 -26
- data/spec/context/pay_in_context.rb +319 -224
- data/spec/context/pay_out_context.rb +39 -38
- data/spec/context/pre_authorization_context.rb +44 -40
- data/spec/context/refund_context.rb +32 -32
- data/spec/context/report_context.rb +21 -21
- data/spec/context/repudiation_context.rb +18 -18
- data/spec/context/settlement_transfer_context.rb +27 -27
- data/spec/context/transfer_context.rb +50 -50
- data/spec/context/ubo_declaration_context.rb +29 -24
- data/spec/context/user_context.rb +83 -82
- data/spec/context/wallet_context.rb +52 -52
- data/spec/mangopay/bank_accounts_spec.rb +228 -228
- data/spec/mangopay/banking_alias_spec.rb +85 -0
- data/spec/mangopay/cards_spec.rb +133 -134
- data/spec/mangopay/client_wallets_spec.rb +147 -147
- data/spec/mangopay/clients_spec.rb +56 -54
- data/spec/mangopay/configuration_spec.rb +125 -125
- data/spec/mangopay/dispute_documents_spec.rb +173 -173
- data/spec/mangopay/disputes_spec.rb +264 -264
- data/spec/mangopay/e_money_spec.rb +57 -37
- data/spec/mangopay/events_spec.rb +49 -49
- data/spec/mangopay/hooks_spec.rb +70 -70
- data/spec/mangopay/kyc_documents_spec.rb +179 -179
- data/spec/mangopay/mandates_spec.rb +218 -218
- data/spec/mangopay/oauth_tokens_spec.rb +40 -40
- data/spec/mangopay/pay_ins_spec.rb +279 -180
- data/spec/mangopay/pay_outs_spec.rb +38 -38
- data/spec/mangopay/pre_authorizations_spec.rb +134 -57
- data/spec/mangopay/refunds_spec.rb +187 -39
- data/spec/mangopay/reports_spec.rb +118 -120
- data/spec/mangopay/responses_spec.rb +324 -294
- data/spec/mangopay/settlement_transfers_spec.rb +36 -36
- data/spec/mangopay/transactions_spec.rb +347 -232
- data/spec/mangopay/transfers_spec.rb +37 -37
- data/spec/mangopay/ubo_declarations_spec.rb +127 -64
- data/spec/mangopay/users_spec.rb +145 -145
- data/spec/mangopay/wallets_spec.rb +103 -103
- data/spec/spec_helper.rb +72 -72
- data/spec/tmp/MangoPay.AuthorizationToken.FileStore.tmp +6 -0
- data/spec/tmp/mangopay.log.tmp +1201 -0
- metadata +31 -5
@@ -1,14 +1,14 @@
|
|
1
|
-
require_relative '../../common/jsonifier'
|
2
|
-
|
3
|
-
# Model object for body of a request to submit a document for approval
|
4
|
-
class SubmitDocumentRequest
|
5
|
-
include MangoPay::Jsonifier
|
6
|
-
|
7
|
-
# [String] Custom data added with the request
|
8
|
-
attr_accessor :tag
|
9
|
-
|
10
|
-
def initialize(tag = nil)
|
11
|
-
self.tag = tag
|
12
|
-
@status = MangoModel::DocumentStatus::VALIDATION_ASKED
|
13
|
-
end
|
1
|
+
require_relative '../../common/jsonifier'
|
2
|
+
|
3
|
+
# Model object for body of a request to submit a document for approval
|
4
|
+
class SubmitDocumentRequest
|
5
|
+
include MangoPay::Jsonifier
|
6
|
+
|
7
|
+
# [String] Custom data added with the request
|
8
|
+
attr_accessor :tag
|
9
|
+
|
10
|
+
def initialize(tag = nil)
|
11
|
+
self.tag = tag
|
12
|
+
@status = MangoModel::DocumentStatus::VALIDATION_ASKED
|
13
|
+
end
|
14
14
|
end
|
@@ -1,14 +1,17 @@
|
|
1
|
-
require_relative '../../common/jsonifier'
|
2
|
-
|
3
|
-
# Model object for body of request to submit a UBO declaration for approval
|
4
|
-
class SubmitUboDeclarationRequest
|
5
|
-
include MangoPay::Jsonifier
|
6
|
-
|
7
|
-
#
|
8
|
-
attr_accessor :
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
1
|
+
require_relative '../../common/jsonifier'
|
2
|
+
|
3
|
+
# Model object for body of request to submit a UBO declaration for approval
|
4
|
+
class SubmitUboDeclarationRequest
|
5
|
+
include MangoPay::Jsonifier
|
6
|
+
|
7
|
+
# Id of the ubo declaration
|
8
|
+
attr_accessor :id
|
9
|
+
# [String] Custom data added with the request
|
10
|
+
attr_accessor :tag
|
11
|
+
|
12
|
+
def initialize(id, tag = nil)
|
13
|
+
self.id = id
|
14
|
+
self.tag = tag
|
15
|
+
@status = MangoModel::UboDeclarationStatus::VALIDATION_ASKED
|
16
|
+
end
|
14
17
|
end
|
@@ -1,9 +1,9 @@
|
|
1
|
-
require_relative '../../common/jsonifier'
|
2
|
-
|
3
|
-
# Model object for body of request to upload a file
|
4
|
-
class UploadFileRequest
|
5
|
-
include MangoPay::Jsonifier
|
6
|
-
|
7
|
-
# [String] Base64-encoded file to be uploaded
|
8
|
-
attr_accessor :file
|
1
|
+
require_relative '../../common/jsonifier'
|
2
|
+
|
3
|
+
# Model object for body of request to upload a file
|
4
|
+
class UploadFileRequest
|
5
|
+
include MangoPay::Jsonifier
|
6
|
+
|
7
|
+
# [String] Base64-encoded file to be uploaded
|
8
|
+
attr_accessor :file
|
9
9
|
end
|
@@ -1,27 +1,27 @@
|
|
1
|
-
require_relative '../common/jsonifier'
|
2
|
-
|
3
|
-
module MangoModel
|
4
|
-
|
5
|
-
# Replication of a previous request's response
|
6
|
-
class ResponseReplica
|
7
|
-
include MangoPay::Jsonifier
|
8
|
-
|
9
|
-
# [String] Original response's status code
|
10
|
-
attr_accessor :status_code
|
11
|
-
|
12
|
-
# [String] Value of the original response's Content-Length header
|
13
|
-
attr_accessor :content_length
|
14
|
-
|
15
|
-
# [String] Value of the original response's Content-Type header
|
16
|
-
attr_accessor :content_type
|
17
|
-
|
18
|
-
# [DateTime] Time of request of the original response
|
19
|
-
attr_accessor :long_date
|
20
|
-
|
21
|
-
# [Object] The original response object
|
22
|
-
attr_accessor :resource
|
23
|
-
|
24
|
-
# [String] URL of the original request
|
25
|
-
attr_accessor :request_url
|
26
|
-
end
|
1
|
+
require_relative '../common/jsonifier'
|
2
|
+
|
3
|
+
module MangoModel
|
4
|
+
|
5
|
+
# Replication of a previous request's response
|
6
|
+
class ResponseReplica
|
7
|
+
include MangoPay::Jsonifier
|
8
|
+
|
9
|
+
# [String] Original response's status code
|
10
|
+
attr_accessor :status_code
|
11
|
+
|
12
|
+
# [String] Value of the original response's Content-Length header
|
13
|
+
attr_accessor :content_length
|
14
|
+
|
15
|
+
# [String] Value of the original response's Content-Type header
|
16
|
+
attr_accessor :content_type
|
17
|
+
|
18
|
+
# [DateTime] Time of request of the original response
|
19
|
+
attr_accessor :long_date
|
20
|
+
|
21
|
+
# [Object] The original response object
|
22
|
+
attr_accessor :resource
|
23
|
+
|
24
|
+
# [String] URL of the original request
|
25
|
+
attr_accessor :request_url
|
26
|
+
end
|
27
27
|
end
|
@@ -1,12 +1,12 @@
|
|
1
|
-
# Formatter for log messages
|
2
|
-
class CustomFormatter < Logger::Formatter
|
3
|
-
def call(severity, time, progname, msg)
|
4
|
-
"[#{time}] #{five_chars(severity)} - #{progname}: #{msg2str(msg)}\n"
|
5
|
-
end
|
6
|
-
|
7
|
-
def five_chars(string)
|
8
|
-
result = ''
|
9
|
-
(5 - string.length).times { result << ' ' }
|
10
|
-
result + string
|
11
|
-
end
|
1
|
+
# Formatter for log messages
|
2
|
+
class CustomFormatter < Logger::Formatter
|
3
|
+
def call(severity, time, progname, msg)
|
4
|
+
"[#{time}] #{five_chars(severity)} - #{progname}: #{msg2str(msg)}\n"
|
5
|
+
end
|
6
|
+
|
7
|
+
def five_chars(string)
|
8
|
+
result = ''
|
9
|
+
(5 - string.length).times { result << ' ' }
|
10
|
+
result + string
|
11
|
+
end
|
12
12
|
end
|
@@ -1,34 +1,34 @@
|
|
1
|
-
require 'logger'
|
2
|
-
|
3
|
-
# Custom Logger implementation which handles concatenation
|
4
|
-
# of multiple provided arguments into the log message string,
|
5
|
-
# allowing for much cleaner logging statements.
|
6
|
-
class CustomLogger < Logger
|
7
|
-
|
8
|
-
def debug(message, *args)
|
9
|
-
super(format(message, args))
|
10
|
-
end
|
11
|
-
|
12
|
-
def info(message, *args)
|
13
|
-
super(format(message, args))
|
14
|
-
end
|
15
|
-
|
16
|
-
def warn(message, *args)
|
17
|
-
super(format(message, args))
|
18
|
-
end
|
19
|
-
|
20
|
-
def error(message, *args)
|
21
|
-
super(format(message, args))
|
22
|
-
end
|
23
|
-
|
24
|
-
def fatal(message, *args)
|
25
|
-
super(format(message, args))
|
26
|
-
end
|
27
|
-
|
28
|
-
def format(msg, msg_args)
|
29
|
-
msg_args.each do |arg|
|
30
|
-
msg.sub! '{}', arg.to_s
|
31
|
-
end
|
32
|
-
msg
|
33
|
-
end
|
1
|
+
require 'logger'
|
2
|
+
|
3
|
+
# Custom Logger implementation which handles concatenation
|
4
|
+
# of multiple provided arguments into the log message string,
|
5
|
+
# allowing for much cleaner logging statements.
|
6
|
+
class CustomLogger < Logger
|
7
|
+
|
8
|
+
def debug(message, *args)
|
9
|
+
super(format(message, args))
|
10
|
+
end
|
11
|
+
|
12
|
+
def info(message, *args)
|
13
|
+
super(format(message, args))
|
14
|
+
end
|
15
|
+
|
16
|
+
def warn(message, *args)
|
17
|
+
super(format(message, args))
|
18
|
+
end
|
19
|
+
|
20
|
+
def error(message, *args)
|
21
|
+
super(format(message, args))
|
22
|
+
end
|
23
|
+
|
24
|
+
def fatal(message, *args)
|
25
|
+
super(format(message, args))
|
26
|
+
end
|
27
|
+
|
28
|
+
def format(msg, msg_args)
|
29
|
+
msg_args.each do |arg|
|
30
|
+
msg.sub! '{}', arg.to_s
|
31
|
+
end
|
32
|
+
msg
|
33
|
+
end
|
34
34
|
end
|
data/lib/mangopay/util/enum.rb
CHANGED
@@ -1,52 +1,52 @@
|
|
1
|
-
# Extend in order to apply methods for Enum instantiation.
|
2
|
-
module Enum
|
3
|
-
|
4
|
-
# Restrict enum instantiation to the +value+ method.
|
5
|
-
def self.extended(base)
|
6
|
-
base.class_eval do
|
7
|
-
disable_instantiation
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
def value_of(string)
|
12
|
-
value = nil
|
13
|
-
constants.each do |const|
|
14
|
-
value = const_get const if const.to_s == string
|
15
|
-
end
|
16
|
-
value
|
17
|
-
end
|
18
|
-
|
19
|
-
private
|
20
|
-
|
21
|
-
# Temporary self-called method which instantiates Enums.
|
22
|
-
# Assign returned values to accordingly-named constant variables.
|
23
|
-
#
|
24
|
-
# @param +enum_value+ Representation value for the Enum instance
|
25
|
-
def value(enum_value)
|
26
|
-
enable_instantiation
|
27
|
-
enum_instance = new
|
28
|
-
disable_instantiation
|
29
|
-
enum_instance.instance_variable_set :@value, enum_value
|
30
|
-
enum_instance.define_singleton_method :to_s do
|
31
|
-
enum_value.to_s
|
32
|
-
end
|
33
|
-
enum_instance
|
34
|
-
end
|
35
|
-
|
36
|
-
# Enables instantiation of extending class.
|
37
|
-
def enable_instantiation
|
38
|
-
class_eval do
|
39
|
-
define_method :initialize do
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
# Disables instantiation of extending class.
|
45
|
-
def disable_instantiation
|
46
|
-
class_eval do
|
47
|
-
define_method :initialize do
|
48
|
-
raise 'Use the Enum#value method to instantiate Enums.'
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
1
|
+
# Extend in order to apply methods for Enum instantiation.
|
2
|
+
module Enum
|
3
|
+
|
4
|
+
# Restrict enum instantiation to the +value+ method.
|
5
|
+
def self.extended(base)
|
6
|
+
base.class_eval do
|
7
|
+
disable_instantiation
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def value_of(string)
|
12
|
+
value = nil
|
13
|
+
constants.each do |const|
|
14
|
+
value = const_get const if const.to_s == string
|
15
|
+
end
|
16
|
+
value
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
# Temporary self-called method which instantiates Enums.
|
22
|
+
# Assign returned values to accordingly-named constant variables.
|
23
|
+
#
|
24
|
+
# @param +enum_value+ Representation value for the Enum instance
|
25
|
+
def value(enum_value)
|
26
|
+
enable_instantiation
|
27
|
+
enum_instance = new
|
28
|
+
disable_instantiation
|
29
|
+
enum_instance.instance_variable_set :@value, enum_value
|
30
|
+
enum_instance.define_singleton_method :to_s do
|
31
|
+
enum_value.to_s
|
32
|
+
end
|
33
|
+
enum_instance
|
34
|
+
end
|
35
|
+
|
36
|
+
# Enables instantiation of extending class.
|
37
|
+
def enable_instantiation
|
38
|
+
class_eval do
|
39
|
+
define_method :initialize do
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# Disables instantiation of extending class.
|
45
|
+
def disable_instantiation
|
46
|
+
class_eval do
|
47
|
+
define_method :initialize do
|
48
|
+
raise 'Use the Enum#value method to instantiate Enums.'
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
52
|
end
|
@@ -1,16 +1,16 @@
|
|
1
|
-
require 'base64'
|
2
|
-
|
3
|
-
# Encodes files
|
4
|
-
module FileEncoder
|
5
|
-
class << self
|
6
|
-
|
7
|
-
# Encodes a file to a Base64 string.
|
8
|
-
#
|
9
|
-
# @param +path+ [String] path to the file to be encoded
|
10
|
-
# @return [String] the file as a Base64-encoded string
|
11
|
-
def encode_base64(path)
|
12
|
-
data = File.open(path, 'rb', &:read)
|
13
|
-
Base64.strict_encode64 data
|
14
|
-
end
|
15
|
-
end
|
1
|
+
require 'base64'
|
2
|
+
|
3
|
+
# Encodes files
|
4
|
+
module FileEncoder
|
5
|
+
class << self
|
6
|
+
|
7
|
+
# Encodes a file to a Base64 string.
|
8
|
+
#
|
9
|
+
# @param +path+ [String] path to the file to be encoded
|
10
|
+
# @return [String] the file as a Base64-encoded string
|
11
|
+
def encode_base64(path)
|
12
|
+
data = File.open(path, 'rb', &:read)
|
13
|
+
Base64.strict_encode64 data
|
14
|
+
end
|
15
|
+
end
|
16
16
|
end
|
@@ -1,6 +1,6 @@
|
|
1
|
-
# To be extended in order to render a class non-instantiable
|
2
|
-
module NonInstantiable
|
3
|
-
def initialize(*_args)
|
4
|
-
raise "Cannot instantiate #{self.class.name.split('::').last}"
|
5
|
-
end
|
1
|
+
# To be extended in order to render a class non-instantiable
|
2
|
+
module NonInstantiable
|
3
|
+
def initialize(*_args)
|
4
|
+
raise "Cannot instantiate #{self.class.name.split('::').last}"
|
5
|
+
end
|
6
6
|
end
|
@@ -1,10 +1,10 @@
|
|
1
|
-
require_relative 'enum'
|
2
|
-
|
3
|
-
# Storage strategy enumeration
|
4
|
-
class StorageStrategy
|
5
|
-
extend Enum
|
6
|
-
|
7
|
-
MEMORY = value 'MEMORY'
|
8
|
-
|
9
|
-
FILE = value 'FILE'
|
1
|
+
require_relative 'enum'
|
2
|
+
|
3
|
+
# Storage strategy enumeration
|
4
|
+
class StorageStrategy
|
5
|
+
extend Enum
|
6
|
+
|
7
|
+
MEMORY = value 'MEMORY'
|
8
|
+
|
9
|
+
FILE = value 'FILE'
|
10
10
|
end
|
@@ -1,6 +1,6 @@
|
|
1
|
-
# Logger implementation which will not print any messages.
|
2
|
-
class VoidLogger < CustomLogger
|
3
|
-
def initialize(*_args); end
|
4
|
-
|
5
|
-
def add(*_args, &_block); end
|
1
|
+
# Logger implementation which will not print any messages.
|
2
|
+
class VoidLogger < CustomLogger
|
3
|
+
def initialize(*_args); end
|
4
|
+
|
5
|
+
def add(*_args, &_block); end
|
6
6
|
end
|
data/mangopay-v4.gemspec
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'lib'))
|
2
|
+
|
3
|
+
require 'mangopay'
|
4
|
+
|
5
|
+
Gem::Specification.new do |spec|
|
6
|
+
spec.name = 'mangopay-v4'
|
7
|
+
spec.version = MangoPay::VERSION
|
8
|
+
spec.summary = 'Ruby bindings for the version 2 of the MANGOPAY API'
|
9
|
+
spec.description = <<-EOF
|
10
|
+
The mangopay Gem makes interacting with MANGOPAY Services much easier.
|
11
|
+
For any questions regarding the use of MANGOPAY's Services feel free to contact us at http://www.mangopay.com/get-started-2/
|
12
|
+
You can find more documentation about MANGOPAY Services at http://docs.mangopay.com/
|
13
|
+
EOF
|
14
|
+
spec.authors = ['MangoTeam']
|
15
|
+
spec.email = 'support@mangopay.com'
|
16
|
+
spec.homepage = 'http://docs.mangopay.com/'
|
17
|
+
spec.license = 'MIT'
|
18
|
+
|
19
|
+
spec.required_ruby_version = '>= 1.9.2'
|
20
|
+
|
21
|
+
spec.add_dependency('multi_json', '>= 1.7.7')
|
22
|
+
|
23
|
+
spec.add_development_dependency('rake', '>= 10.1.0')
|
24
|
+
spec.add_development_dependency('rspec', '>= 3.0.0')
|
25
|
+
|
26
|
+
spec.files = `git ls-files`.split("\n")
|
27
|
+
spec.test_files = `git ls-files -- spec/*`.split("\n")
|
28
|
+
spec.executables = `git ls-files -- bin/*`
|
29
|
+
.split("\n")
|
30
|
+
.map { |file| File.basename(file) }
|
31
|
+
spec.require_paths = ['lib']
|
32
|
+
end
|