private void readObject(final ObjectInputStream stream) throws IOException, ClassNotFoundException {
final Adaptor adaptor = (getField, serializable) -> {
final boolean caseSensitive = getField.get("_caseSensitive", true);
{
final Field caseSensitiveField = SimpleDictionary.class.getDeclaredField("_caseSensitive");
caseSensitiveField.setAccessible(true);
caseSensitiveField.set(serializable, caseSensitive);
}
try {
final Object oldValues = getField.get("_values", null);
if (oldValues != null) {
@SuppressWarnings("deprecation") final SimpleReferenceValues srv =
(SimpleReferenceValues) oldValues;
@SuppressWarnings("deprecation") final Object[] values = srv.getValues();
final Set<String> valueSet = createValueSet(values, caseSensitive);
final Field valuesField = SimpleDictionary.class.getDeclaredField("_valueSet");
valuesField.setAccessible(true);
valuesField.set(serializable, valueSet);
}
} catch (final IllegalArgumentException e) {
}
};
ReadObjectBuilder.create(this, SimpleDictionary.class).readObject(stream, adaptor);
}