Fixing complexity issue in AICC API

This commit is contained in:
Jonathan Putney
2019-11-10 21:58:42 -05:00
parent eae2a688f6
commit 465e9b3383
2 changed files with 45 additions and 47 deletions

View File

@@ -1,14 +1,14 @@
// @flow
import Scorm12API from './Scorm12API';
import {
CMIInteractionsCorrectResponsesObject,
CMIInteractionsObject,
CMIInteractionsObjectivesObject,
CMIObjectivesObject
} from "./cmi/scorm12_cmi";
import {CMIEvaluationCommentsObject, CMITriesObject, NAV} from "./cmi/aicc_cmi";
import {CMIEvaluationCommentsObject, CMITriesObject, NAV} from './cmi/aicc_cmi';
/**
* The AICC API class
*/
class AICC extends Scorm12API {
/**
* Constructor to create AICC API object
*/
constructor() {
super();
@@ -18,31 +18,28 @@ class AICC extends Scorm12API {
/**
* Gets or builds a new child element to add to the array.
*
* @param CMIElement
* @param value
* @param {string} CMIElement
* @param {any} value
* @return {object}
*/
getChildElement(CMIElement, value) {
let newChild;
let newChild = super.getChildElement(CMIElement);
if (this.stringContains(CMIElement, "cmi.objectives")) {
newChild = new CMIObjectivesObject(this);
} else if (this.stringContains(CMIElement, ".correct_responses")) {
newChild = new CMIInteractionsCorrectResponsesObject(this);
} else if (this.stringContains(CMIElement, ".objectives")) {
newChild = new CMIInteractionsObjectivesObject(this);
} else if (this.stringContains(CMIElement, "cmi.interactions")) {
newChild = new CMIInteractionsObject(this);
} else if (this.stringContains(CMIElement, "cmi.evaluation.comments")) {
if (!newChild) {
if (this.stringContains(CMIElement, 'cmi.evaluation.comments')) {
newChild = new CMIEvaluationCommentsObject(this);
} else if (this.stringContains(CMIElement, "cmi.student_data.tries")) {
} else if (this.stringContains(CMIElement, 'cmi.student_data.tries')) {
newChild = new CMITriesObject(this);
}
}
return newChild;
}
/**
* Replace the whole API with another
*
* @param {AICC} newAPI
*/
replaceWithAnotherScormAPI(newAPI) {
// Data Model

View File

@@ -115,6 +115,7 @@ export default class Scorm12API extends BaseAPI {
* Gets or builds a new child element to add to the array.
*
* @param CMIElement
* @param value
*/
getChildElement(CMIElement, value) {
let newChild;