Class ConversionHelp


  • public class ConversionHelp
    extends Object
    Utility conversion routines for use with XStream
    • Constructor Detail

      • ConversionHelp

        public ConversionHelp()
    • Method Detail

      • setInVersion

        public static void setInVersion​(String v)
      • setOutVersion

        public static void setOutVersion​(String v)
      • encode

        public static String encode​(String p)
        Encode a string (if necessary) for output to a JTL file. Strings are only encoded if the output version is 1.0, but nulls are always converted to the empty string.
        Parameters:
        p - string to encode
        Returns:
        encoded string (will never be null)
      • decode

        public static String decode​(String p)
        Decode a string if inVersion equals 1.0
        Parameters:
        p - the string to be decoded
        Returns:
        the newly decoded string
      • cdata

        public static String cdata​(byte[] chars,
                                   String encoding)
                            throws UnsupportedEncodingException
        Embed an array of bytes as a string with encoding in a xml-cdata section
        Parameters:
        chars - bytes to be encoded and embedded
        encoding - the encoding to be used
        Returns:
        the encoded string embedded in a xml-cdata section
        Throws:
        UnsupportedEncodingException - when the bytes can not be encoded using encoding
      • isSpecialProperty

        public static boolean isSpecialProperty​(String name)
        Check whether name specifies a special property
        Parameters:
        name - the name of the property to be checked
        Returns:
        true if name is the name of a special property
      • getPropertyName

        public static String getPropertyName​(HierarchicalStreamReader reader,
                                             UnmarshallingContext context)
        Get the property name, updating it if necessary using NameUpdater.
        Parameters:
        reader - where to read the name attribute
        context - the unmarshalling context
        Returns:
        the property name, may be null if the property has been deleted.
        See Also:
        #getUpgradePropertyName(String, UnmarshallingContext)
      • getPropertyValue

        public static String getPropertyValue​(HierarchicalStreamReader reader,
                                              UnmarshallingContext context,
                                              String name)
        Get the property value, updating it if necessary using NameUpdater. Do not use for GUI_CLASS or TEST_CLASS.
        Parameters:
        reader - where to read the value
        context - the unmarshalling context
        name - the name of the property
        Returns:
        the property value, updated if necessary.
        See Also:
        #getUpgradePropertyValue(String, String, UnmarshallingContext)
      • getUpgradePropertyName

        public static String getUpgradePropertyName​(String name,
                                                    UnmarshallingContext context)
        Update a property name using NameUpdater.
        Parameters:
        name - the original property name
        context - the unmarshalling context
        Returns:
        the property name, may be null if the property has been deleted.
      • getUpgradePropertyValue

        public static String getUpgradePropertyValue​(String name,
                                                     String value,
                                                     UnmarshallingContext context)
        Update a property value using NameUpdater.getCurrentName(String, String, String). Do not use for GUI_CLASS or TEST_CLASS.
        Parameters:
        name - the original property name
        value - the original property value
        context - the unmarshalling context
        Returns:
        the property value, updated if necessary
      • saveSpecialProperties

        public static void saveSpecialProperties​(TestElement testElement,
                                                 HierarchicalStreamWriter writer)
        Save the special properties:
        • TestElement.GUI_CLASS
        • TestElement.TEST_CLASS
        • TestElement.NAME
        • TestElement.ENABLED
        Parameters:
        testElement - element for which the special properties should be saved
        writer - HierarchicalStreamWriter in which the special properties should be saved
      • restoreSpecialProperties

        public static void restoreSpecialProperties​(TestElement testElement,
                                                    HierarchicalStreamReader reader)
        Restore the special properties:
        • TestElement.GUI_CLASS
        • TestElement.TEST_CLASS
        • TestElement.NAME
        • TestElement.ENABLED
        Parameters:
        testElement - in which the special properties should be restored
        reader - HierarchicalStreamReader from which the special properties should be restored