Module: IMS::LTI::Extensions::OutcomeData::OutcomeRequest
- Includes:
- ExtensionBase, Base
- Defined in:
- lib/ims/lti/extensions/outcome_data.rb
Instance Attribute Summary collapse
-
#needs_additional_review ⇒ Object
Returns the value of attribute needs_additional_review.
-
#outcome_cdata_text ⇒ Object
Returns the value of attribute outcome_cdata_text.
-
#outcome_lti_launch_url ⇒ Object
Returns the value of attribute outcome_lti_launch_url.
-
#outcome_text ⇒ Object
Returns the value of attribute outcome_text.
-
#outcome_url ⇒ Object
Returns the value of attribute outcome_url.
-
#prioritize_non_tool_grade ⇒ Object
Returns the value of attribute prioritize_non_tool_grade.
-
#submitted_at ⇒ Object
Returns the value of attribute submitted_at.
-
#total_score ⇒ Object
Returns the value of attribute total_score.
Instance Method Summary collapse
- #details(node) ⇒ Object
- #extention_process_xml(doc) ⇒ Object
- #has_details_data? ⇒ Boolean
- #has_result_data? ⇒ Boolean
- #result_values(node) ⇒ Object
- #score ⇒ Object
Methods included from Base
Methods included from ExtensionBase
#outcome_request_extensions, #outcome_response_extensions
Instance Attribute Details
#needs_additional_review ⇒ Object
Returns the value of attribute needs_additional_review.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def needs_additional_review @needs_additional_review end |
#outcome_cdata_text ⇒ Object
Returns the value of attribute outcome_cdata_text.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def outcome_cdata_text @outcome_cdata_text end |
#outcome_lti_launch_url ⇒ Object
Returns the value of attribute outcome_lti_launch_url.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def outcome_lti_launch_url @outcome_lti_launch_url end |
#outcome_text ⇒ Object
Returns the value of attribute outcome_text.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def outcome_text @outcome_text end |
#outcome_url ⇒ Object
Returns the value of attribute outcome_url.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def outcome_url @outcome_url end |
#prioritize_non_tool_grade ⇒ Object
Returns the value of attribute prioritize_non_tool_grade.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def prioritize_non_tool_grade @prioritize_non_tool_grade end |
#submitted_at ⇒ Object
Returns the value of attribute submitted_at.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def submitted_at @submitted_at end |
#total_score ⇒ Object
Returns the value of attribute total_score.
174 175 176 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 174 def total_score @total_score end |
Instance Method Details
#details(node) ⇒ Object
209 210 211 212 213 214 215 216 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 209 def details(node) super return unless has_details_data? node.submittedAt submitted_at if submitted_at node.needsAdditionalReview if needs_additional_review node.prioritizeNonToolGrade if prioritize_non_tool_grade end |
#extention_process_xml(doc) ⇒ Object
230 231 232 233 234 235 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 230 def extention_process_xml(doc) super @outcome_text = doc.get_text("//resultRecord/result/resultData/text") @outcome_url = doc.get_text("//resultRecord/result/resultData/url") @outcome_lti_launch_url = doc.get_text("//resultRecord/result/resultData/ltiLaunchUrl") end |
#has_details_data? ⇒ Boolean
226 227 228 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 226 def has_details_data? !!submitted_at || !!needs_additional_review || !!prioritize_non_tool_grade end |
#has_result_data? ⇒ Boolean
222 223 224 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 222 def has_result_data? !!outcome_text || !!outcome_url || !!outcome_lti_launch_url || !!outcome_cdata_text || !!total_score || super end |
#result_values(node) ⇒ Object
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 183 def result_values(node) super if total_score node.resultTotalScore do |res_total_score| res_total_score.language "en" # 'en' represents the format of the number res_total_score.textString total_score.to_s end end if outcome_text || outcome_url || outcome_cdata_text || outcome_lti_launch_url node.resultData do |res_data| if outcome_cdata_text res_data.text { res_data.cdata! outcome_cdata_text } elsif outcome_text res_data.text outcome_text elsif outcome_lti_launch_url res_data.ltiLaunchUrl outcome_lti_launch_url end res_data.url outcome_url if outcome_url end end end |
#score ⇒ Object
218 219 220 |
# File 'lib/ims/lti/extensions/outcome_data.rb', line 218 def score total_score ? nil : @score end |