public SampleSaveConfigurationConverter(Mapper arg0) { super(new MyWrapper(arg0),rp); }
/** * Restore the special properties: * <ul> * <li>TestElement.GUI_CLASS</li> * <li>TestElement.TEST_CLASS</li> * <li>TestElement.NAME</li> * <li>TestElement.ENABLED</li> * </ul> * * @param testElement * in which the special properties should be restored * @param reader * {@link HierarchicalStreamReader} from which the special * properties should be restored */ public static void restoreSpecialProperties(TestElement testElement, HierarchicalStreamReader reader) { restoreClass(testElement,reader,TestElement.GUI_CLASS); restoreClass(testElement,reader,TestElement.TEST_CLASS); restoreItem(testElement,reader,TestElement.NAME,true); restoreItem(testElement,reader,TestElement.ENABLED,false); } }
/** * Save the special properties: * <ul> * <li>TestElement.GUI_CLASS</li> * <li>TestElement.TEST_CLASS</li> * <li>TestElement.NAME</li> * <li>TestElement.ENABLED</li> * </ul> * * @param testElement * element for which the special properties should be saved * @param writer * {@link HierarchicalStreamWriter} in which the special * properties should be saved */ public static void saveSpecialProperties(TestElement testElement, HierarchicalStreamWriter writer) { saveClass(testElement,writer,TestElement.GUI_CLASS); saveClass(testElement,writer,TestElement.TEST_CLASS); saveItem(testElement,writer,TestElement.NAME,true); saveItem(testElement,writer,TestElement.ENABLED,false); }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext context) { SampleResult res = (SampleResult) obj; SampleSaveConfiguration save = res.getSaveConfig(); setAttributes(writer, context, res, save); saveAssertions(writer, context, res, save); saveSubResults(writer, context, res, save); saveResponseHeaders(writer, context, res, save); saveRequestHeaders(writer, context, res, save); saveResponseData(writer, context, res, save); saveSamplerData(writer, context, res, save); }
/** {@inheritDoc} */ @Override public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { MultiProperty prop = (MultiProperty) createCollection(context.getRequiredType()); prop.setName(ConversionHelp.decode(reader.getAttribute(ConversionHelp.ATT_NAME))); while (reader.hasMoreChildren()) { reader.moveDown(); JMeterProperty subProp = (JMeterProperty) readItem(reader, context, prop); if (subProp != null) { // could be null if it has been deleted via NameUpdater prop.addProperty(subProp); } reader.moveUp(); } return prop; }
/** * Get the property name, updating it if necessary using {@link NameUpdater}. * @param reader where to read the name attribute * @param context the unmarshalling context * * @return the property name, may be null if the property has been deleted. * @see #getUpgradePropertyName(String, UnmarshallingContext) */ public static String getPropertyName(HierarchicalStreamReader reader, UnmarshallingContext context) { String name = ConversionHelp.decode(reader.getAttribute(ATT_NAME)); return getUpgradePropertyName(name, context); }
/** {@inheritDoc} */ @Override public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { final String name = ConversionHelp.getPropertyName(reader, context); if (name == null) { return null; } final String value = ConversionHelp.getPropertyValue(reader, context, name); StringProperty prop = new StringProperty(name, value); return prop; } }
/** * Get the property value, updating it if necessary using {@link NameUpdater}. * * Do not use for GUI_CLASS or TEST_CLASS. * * @param reader where to read the value * @param context the unmarshalling context * @param name the name of the property * * @return the property value, updated if necessary. * @see #getUpgradePropertyValue(String, String, UnmarshallingContext) */ public static String getPropertyValue(HierarchicalStreamReader reader, UnmarshallingContext context, String name) { String value = ConversionHelp.decode(reader.getValue()); return getUpgradePropertyValue(name, value, context); }
/** {@inheritDoc} */ @Override public void marshal(Object arg0, HierarchicalStreamWriter writer, MarshallingContext context) { MultiProperty prop = (MultiProperty) arg0; writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName())); for (JMeterProperty jMeterProperty : prop) { writeItem(jMeterProperty, context, writer); } }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext arg2) { StringProperty prop = (StringProperty) obj; writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName())); writer.setValue(ConversionHelp.encode(prop.getStringValue())); }
/** {@inheritDoc} */ @Override public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { final String name = ConversionHelp.getPropertyName(reader, context); if (name == null) { return null; } BooleanProperty prop = new BooleanProperty(name, Boolean.valueOf(reader.getValue()).booleanValue()); return prop; } }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext context) { super.marshal(obj, writer, context); // Save most things SampleSaveConfiguration prop = (SampleSaveConfiguration) obj; // Save the new fields - but only if they are true // This list MUST agree with the list in MyWrapper#shouldSerializeMember() createNode(writer,prop.saveBytes(),NODE_BYTES); createNode(writer,prop.saveSentBytes(),NODE_SENT_BYTES); createNode(writer,prop.saveUrl(),NODE_URL); createNode(writer,prop.saveFileName(),NODE_FILENAME); createNode(writer,prop.saveHostname(),NODE_HOSTNAME); createNode(writer,prop.saveThreadCounts(),NODE_THREAD_COUNT); createNode(writer,prop.saveSampleCount(),NODE_SAMPLE_COUNT); createNode(writer,prop.saveIdleTime(),NODE_IDLE_TIME); createNode(writer, prop.saveConnectTime(), NODE_CONNECT_TIME); }
private static void restoreItem(TestElement el, HierarchicalStreamReader reader, String prop, boolean decode) { String att=propertyToAttribute.get(prop); String value=reader.getAttribute(att); if (value!=null){ if (decode) { value=ConversionHelp.decode(value); } el.setProperty(prop,value); } }
/** * Save request headers from the sample result into the stream * * @param writer * stream to save objects into * @param context * context for xstream to allow nested objects * @param res * sample to be saved * @param save * configuration telling us what to save */ protected void saveRequestHeaders(HierarchicalStreamWriter writer, MarshallingContext context, SampleResult res, SampleSaveConfiguration save) { if (save.saveRequestHeaders()) { writeString(writer, TAG_REQUEST_HEADER, res.getRequestHeaders()); } }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext arg2) { LongProperty prop = (LongProperty) obj; writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName())); writer.setValue(prop.getStringValue()); }
/** {@inheritDoc} */ @Override public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { final String name = ConversionHelp.getPropertyName(reader, context); if (name == null) { return null; } IntegerProperty prop = new IntegerProperty(name, Integer.parseInt(reader.getValue())); return prop; } }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext arg2) { IntegerProperty prop = (IntegerProperty) obj; writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName())); writer.setValue(prop.getStringValue()); }
/** {@inheritDoc} */ @Override public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) { final String name = ConversionHelp.getPropertyName(reader, context); if (name == null) { return null; } LongProperty prop = new LongProperty(name, Long.parseLong(reader.getValue())); return prop; } }
/** {@inheritDoc} */ @Override public void marshal(Object obj, HierarchicalStreamWriter writer, MarshallingContext arg2) { BooleanProperty prop = (BooleanProperty) obj; writer.addAttribute(ConversionHelp.ATT_NAME, ConversionHelp.encode(prop.getName())); writer.setValue(prop.getStringValue()); }