protected Map<Identifier, StringResponseData> extractStringResponseData(final HttpServletRequest httpServletRequest) { final Map<Identifier, StringResponseData> responseMap = new HashMap<Identifier, StringResponseData>(); @SuppressWarnings("unchecked") final Set<String> parameterNames = httpServletRequest.getParameterMap().keySet(); for (final String name : parameterNames) { if (name.startsWith("qtiworks_presented_")) { final String responseIdentifierString = name.substring("qtiworks_presented_".length()); final Identifier responseIdentifier; try { responseIdentifier = Identifier.parseString(responseIdentifierString); } catch (final QtiParseException e) { throw new BadResponseWebPayloadException("Bad response identifier encoded in parameter " + name, e); } final String[] responseValues = httpServletRequest.getParameterValues("qtiworks_response_" + responseIdentifierString); final StringResponseData stringResponseData = new StringResponseData(responseValues); responseMap.put(responseIdentifier, stringResponseData); } } return responseMap; }
final Date timestamp3 = ObjectUtilities.addToTime(timestamp2, 1000L); final Map<Identifier, ResponseData> responseMap = new HashMap<Identifier, ResponseData>(); responseMap.put(Identifier.parseString("RESPONSE"), new StringResponseData("ChoiceA")); itemSessionController.bindResponses(timestamp3, responseMap); System.out.println("Unbound responses: " + itemSessionState.getUnboundResponseIdentifiers());
private static ItemSessionState createItemSessionState() { final ItemSessionState itemSessionState = new ItemSessionState(); final Map<Identifier, SingleValue> recordMap = new HashMap<Identifier, SingleValue>(); recordMap.put(Identifier.parseString("PMathML"), new StringValue("Hello")); recordMap.put(Identifier.parseString("Number"), new IntegerValue(5)); final Value rv = RecordValue.createRecordValue(recordMap); itemSessionState.setShuffledInteractionChoiceOrder(Identifier.parseString("dave"), Arrays.asList(Identifier.parseString("a"))); itemSessionState.setResponseValue(Identifier.parseString("RESPONSE"), MultipleValue.createMultipleValue(new StringValue("Bad"), new StringValue("Thing"))); itemSessionState.setTemplateValue(Identifier.parseString("TEMPLATE"), NullValue.INSTANCE); itemSessionState.setOutcomeValue(Identifier.parseString("RECORD"), rv); itemSessionState.setUnboundResponseIdentifiers(new HashSet<Identifier>(Arrays.asList(Identifier.assumedLegal("RESPONSE")))); itemSessionState.setRawResponseData(Identifier.assumedLegal("A"), new StringResponseData("1", "2")); return itemSessionState; }
responseMap.put(Identifier.parseString("RESPONSE"), new StringResponseData("ChoiceA")); testSessionController.handleResponsesToCurrentItem(timestamp, responseMap);
final Date timestamp3 = ObjectUtilities.addToTime(timestamp2, 1000L); final Map<Identifier, ResponseData> responseMap = new HashMap<Identifier, ResponseData>(); responseMap.put(Identifier.parseString("RESPONSE"), new StringResponseData("1+x")); itemSessionController.bindResponses(timestamp3, responseMap); System.out.println("Unbound responses: " + itemSessionState.getUnboundResponseIdentifiers());
result.setRawResponseData(identifier, new StringResponseData(stringResponseBuilder));