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  -
 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  -
 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. | 
 Jörg Schaible
 made changes  -
 Jörg Schaible
 made changes  - 
        | Resolution | Fixed [ 1 ] | |
| Fix Version/s | 1.4.x Maintenance [ 19602 ] | |
| Status | Open [ 1 ] | Resolved [ 5 ] | 


Fixed in master and v-1.4.x branch.