Class: Mpp::Extensions::MCP::MCPReceipt
- Inherits:
-
Data
- Object
- Data
- Mpp::Extensions::MCP::MCPReceipt
- Defined in:
- lib/mpp/extensions/mcp/types.rb
Instance Attribute Summary collapse
-
#challenge_id ⇒ Object
readonly
Returns the value of attribute challenge_id.
-
#method ⇒ Object
readonly
Returns the value of attribute method.
-
#reference ⇒ Object
readonly
Returns the value of attribute reference.
-
#settlement ⇒ Object
readonly
Returns the value of attribute settlement.
-
#status ⇒ Object
readonly
Returns the value of attribute status.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
Class Method Summary collapse
- .from_core(receipt, challenge_id:, method:, settlement: nil) ⇒ Object
- .from_dict(data) ⇒ Object
- .from_meta(meta) ⇒ Object
Instance Method Summary collapse
-
#initialize(status:, challenge_id:, method:, timestamp:, reference: nil, settlement: nil) ⇒ MCPReceipt
constructor
A new instance of MCPReceipt.
- #to_core ⇒ Object
- #to_dict ⇒ Object
- #to_meta ⇒ Object
Constructor Details
#initialize(status:, challenge_id:, method:, timestamp:, reference: nil, settlement: nil) ⇒ MCPReceipt
Returns a new instance of MCPReceipt.
143 144 145 146 |
# File 'lib/mpp/extensions/mcp/types.rb', line 143 def initialize(status:, challenge_id:, method:, timestamp:, reference: nil, settlement: nil) super end |
Instance Attribute Details
#challenge_id ⇒ Object (readonly)
Returns the value of attribute challenge_id
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def challenge_id @challenge_id end |
#method ⇒ Object (readonly)
Returns the value of attribute method
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def method @method end |
#reference ⇒ Object (readonly)
Returns the value of attribute reference
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def reference @reference end |
#settlement ⇒ Object (readonly)
Returns the value of attribute settlement
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def settlement @settlement end |
#status ⇒ Object (readonly)
Returns the value of attribute status
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def status @status end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp
141 142 143 |
# File 'lib/mpp/extensions/mcp/types.rb', line 141 def @timestamp end |
Class Method Details
.from_core(receipt, challenge_id:, method:, settlement: nil) ⇒ Object
189 190 191 192 193 194 195 196 197 198 199 200 201 |
# File 'lib/mpp/extensions/mcp/types.rb', line 189 def self.from_core(receipt, challenge_id:, method:, settlement: nil) ts = receipt..utc.iso8601 ts = ts.sub(/\+00:00$/, "Z") new( status: receipt.status, challenge_id: challenge_id, method: method, timestamp: ts, reference: receipt.reference.empty? ? nil : receipt.reference, settlement: settlement ) end |
.from_dict(data) ⇒ Object
164 165 166 167 168 169 170 171 172 173 |
# File 'lib/mpp/extensions/mcp/types.rb', line 164 def self.from_dict(data) new( status: data["status"], challenge_id: data["challengeId"], method: data["method"], timestamp: data["timestamp"], reference: data["reference"], settlement: data["settlement"] ) end |
.from_meta(meta) ⇒ Object
175 176 177 178 179 |
# File 'lib/mpp/extensions/mcp/types.rb', line 175 def self.() return nil unless .key?(META_RECEIPT) from_dict([META_RECEIPT]) end |
Instance Method Details
#to_core ⇒ Object
181 182 183 184 185 186 187 |
# File 'lib/mpp/extensions/mcp/types.rb', line 181 def to_core Mpp::Receipt.new( status: status, timestamp: Time.iso8601(.gsub("Z", "+00:00")), reference: reference || "" ) end |
#to_dict ⇒ Object
148 149 150 151 152 153 154 155 156 157 158 |
# File 'lib/mpp/extensions/mcp/types.rb', line 148 def to_dict result = { "status" => status, "challengeId" => challenge_id, "method" => method, "timestamp" => } result["reference"] = reference if reference result["settlement"] = settlement if settlement result end |
#to_meta ⇒ Object
160 161 162 |
# File 'lib/mpp/extensions/mcp/types.rb', line 160 def {META_RECEIPT => to_dict} end |