XStream
  1. XStream
  2. XSTR-771

UUID's are not immutable by default

    Details

    • Type: Improvement Improvement
    • Status: Resolved Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.4.7
    • Fix Version/s: 1.4.x Maintenance
    • Component/s: Converters
    • Labels:
      None
    • JDK version and platform:
      1.5

      Description

      Currently XStream has a number of built-in immutable types, including the Java Primitives and java.lang.String. XStream does not consider java.util.UUID to be immutable by default.

      The single biggest functional difference between Immutable types and mutable ones, to XStream, is the use of XPath's to ensure reference equality once deserialized. This means that XStream maintains reference equality on UUID's. performing a reference-equals on UUID's is just as taboo as performing a reference-equals on two strings.

      Therefore UUID should be added to the list of default Immutable types.

        Activity

        Geoff Groos made changes -
        Field Original Value New Value
        Description Currently XStream has a number of built-in immutable types, including the Java Primatifves and java.lang.String. XStream does not consider java.util.UUID to be immutable by default.

        The single biggest functional difference between Immutable types and mutable ones, to XStream, is the use of XPath's to ensure reference equality once deserialized. This means that XStream maintains reference equality on UUID's. performing a reference-equals on UUID's is just as taboo as performing a reference-equals on two strings.

        Therefore UUID should be added to the list of default Immutable types.
        Currently XStream has a number of built-in immutable types, including the Java Primitives and [[java.lang.String]]. XStream does not consider [[java.util.UUID]] to be immutable by default.

        The single biggest functional difference between Immutable types and mutable ones, to XStream, is the use of XPath's to ensure reference equality once deserialized. This means that XStream maintains reference equality on UUID's. performing a reference-equals on UUID's is just as taboo as performing a reference-equals on two strings.

        Therefore UUID should be added to the list of default Immutable types.
        Geoff Groos made changes -
        Description Currently XStream has a number of built-in immutable types, including the Java Primitives and [[java.lang.String]]. XStream does not consider [[java.util.UUID]] to be immutable by default.

        The single biggest functional difference between Immutable types and mutable ones, to XStream, is the use of XPath's to ensure reference equality once deserialized. This means that XStream maintains reference equality on UUID's. performing a reference-equals on UUID's is just as taboo as performing a reference-equals on two strings.

        Therefore UUID should be added to the list of default Immutable types.
        Currently XStream has a number of built-in immutable types, including the Java Primitives and {{java.lang.String}}. XStream does not consider {{java.util.UUID}} to be immutable by default.

        The single biggest functional difference between Immutable types and mutable ones, to XStream, is the use of XPath's to ensure reference equality once deserialized. This means that XStream maintains reference equality on UUID's. performing a reference-equals on UUID's is just as taboo as performing a reference-equals on two strings.

        Therefore UUID should be added to the list of default Immutable types.
        Hide
        Jörg Schaible added a comment -

        Fixed in master and v-1.4.x branch.

        Show
        Jörg Schaible added a comment - Fixed in master and v-1.4.x branch.
        Jörg Schaible made changes -
        Resolution Fixed [ 1 ]
        Fix Version/s 1.4.x Maintenance [ 19602 ]
        Status Open [ 1 ] Resolved [ 5 ]

          People

          • Assignee:
            Jörg Schaible
            Reporter:
            Geoff Groos
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: