nhibernate-core
nhibernate-core copied to clipboard
Cleanup serialization
This is a split-off of what was #1425.
This focuses only on the clean up of attributes and overloads. I used some Roslyn Analyzers that I wrote based on:
There are changes to visibility in the public API.
Possible breaking changes:
- Serialization of some exceptions has changed.
StatefulPersistenceContextandProxyObjectReferenceare now sealed.- De-serialization constructors which were public are now protected. This impacts following classes:
Configuration,DuplicateMappingException,ADOConnectionException,ConstraintViolationException,DataException,GenericADOException,LockAcquisitionException,SQLGrammarException,InvalidProxyTypeException. - Classes marked with
Serializableattribute but which were not actually serializable have no more the attribute. This impacts following classes:Mappings,NativeSQLQueryPlan,AbstractEventand all its descendants,EntityMetamodel,Propertyand all its descendants. ISerializableclasses lacking a de-serialization constructor have now one. It should be called by descendant classes own de-serialization constructor. This impacts following classes:CascadeStyle,SqlParseException,DetailedSemanticException,InvalidPathException,SemanticException,QueryExecutionRequestException,ParserException.