@Override protected TimeMachine parse(Object json) { WSUtils utils = WSUtils.getINSTANCE(); Object cols = utils.getField(json, "cols"); if (cols == null) { throw new IllegalArgumentException("cols must be set"); } Object cells = utils.getField(json, "cells"); if (cells == null) { throw new IllegalArgumentException("cells must be set"); } return new TimeMachine(toColumns(cols), toCells(cells)); }
private void parseMeasures(Object json, Resource resource) { WSUtils utils = WSUtils.getINSTANCE(); Object measuresJson = utils.getField(json, "msr"); if (measuresJson != null) { resource.setMeasures(parseMeasures(measuresJson)); } }
private void parseRuleParameters(WSUtils utils, Profile.Rule rule, Object ruleJson) { Object paramsJson = utils.getField(ruleJson, "params"); if (paramsJson != null) { for (int indexParam = 0; indexParam < utils.getArraySize(paramsJson); indexParam++) { Object paramJson = utils.getArrayElement(paramsJson, indexParam); rule.addParameter(utils.getString(paramJson, "key"), utils.getString(paramJson, "value")); } } }
private TimeMachineCell[] toCells(Object cells) { WSUtils utils = WSUtils.getINSTANCE(); int size = utils.getArraySize(cells); TimeMachineCell[] result = new TimeMachineCell[size]; for (int i = 0; i < size; i++) { Object cellJson = utils.getArrayElement(cells, i); Object valuesJson = utils.getField(cellJson, "v"); if (valuesJson != null) { Object[] resultValues = new Object[utils.getArraySize(valuesJson)]; for (int indexValue = 0; indexValue < utils.getArraySize(valuesJson); indexValue++) { Object value = utils.getArrayElement(valuesJson, indexValue); resultValues[indexValue] = value; } result[i] = new TimeMachineCell(utils.getDateTime(cellJson, "d"), resultValues); } } return result; }
private void parseRules(WSUtils utils, Profile profile, Object json) { Object rulesJson = utils.getField(json, "rules"); if (rulesJson != null) { for (int i = 0; i < utils.getArraySize(rulesJson); i++) { Object ruleJson = utils.getArrayElement(rulesJson, i); if (ruleJson != null) { Profile.Rule rule = new Profile.Rule(); rule.setKey(utils.getString(ruleJson, "key")); rule.setRepository(utils.getString(ruleJson, "repo")); rule.setSeverity(utils.getString(ruleJson, "severity")); rule.setInheritance(utils.getString(ruleJson, "inheritance")); parseRuleParameters(utils, rule, ruleJson); profile.addRule(rule); } } } }
@Override protected DependencyTree parse(Object json) { WSUtils utils = WSUtils.getINSTANCE(); DependencyTree tree = new DependencyTree() .setDepId(utils.getString(json, "did")) .setResourceId(utils.getString(json, "rid")) .setResourceKey(utils.getString(json, "k")) .setResourceName(utils.getString(json, "n")) .setResourceScope(utils.getString(json, "s")) .setResourceQualifier(utils.getString(json, "q")) .setResourceVersion(utils.getString(json, "v")) .setUsage(utils.getString(json, "u")) .setWeight(utils.getInteger(json, "w")); List<DependencyTree> to = new ArrayList<DependencyTree>(); tree.setTo(to); Object toJson = utils.getField(json, "to"); if (toJson != null) { for (int i = 0; i < utils.getArraySize(toJson); i++) { to.add(parse(utils.getArrayElement(toJson, i))); } } return tree; } }