private Object readResolve()

in xstream/src/java/com/thoughtworks/xstream/converters/collections/TreeSetConverter.java [101:142]


    private Object readResolve() {
        treeMapConverter = new TreeMapConverter(mapper()) {

            @Override
            protected void populateMap(final HierarchicalStreamReader reader, final UnmarshallingContext context,
                    final Map<?, ?> map, final Map<?, ?> target) {
                populateCollection(reader, context, new AbstractList<Object>() {
                    @Override
                    public boolean add(final Object object) {
                        @SuppressWarnings("unchecked")
                        final Map<Object, Object> collectionTarget = (Map<Object, Object>)target;
                        return collectionTarget
                            .put(object, Reflections.constantValue != null
                                ? Reflections.constantValue
                                : object) != null;
                    }

                    @Override
                    public Object get(final int location) {
                        return null;
                    }

                    @Override
                    public int size() {
                        return target.size();
                    }
                });
            }

            @Override
            protected void putCurrentEntryIntoMap(final HierarchicalStreamReader reader,
                    final UnmarshallingContext context, final Map<?, ?> map, final Map<?, ?> target) {
                // call readBareItem when deprecated method is removed
                @SuppressWarnings("deprecation")
                final Object key = readItem(reader, context, map);
                @SuppressWarnings("unchecked")
                final Map<Object, Object> checkedTarget = (Map<Object, Object>)target;
                checkedTarget.put(key, key);
            }
        };
        return this;
    }