2020
2121namespace MongoDB . Bson
2222{
23- //FP This could be moved somewhere else
23+ //FP This could be moved somewhere else, and maybe reordered.
2424 internal static class InternalExtensions
2525 {
26+ #region IDiscriminatorConvention
27+
2628 public static Type GetActualTypeInternal ( this IDiscriminatorConvention discriminatorConvention , IBsonReader bsonReader , Type nominalType , IBsonSerializationDomain serializationDomain )
2729 {
2830 if ( discriminatorConvention is IDiscriminatorConventionInternal internalConvention )
@@ -41,6 +43,23 @@ public static BsonValue GetDiscriminatorInternal(this IDiscriminatorConvention d
4143 return discriminatorConvention . GetDiscriminator ( nominalType , actualType ) ;
4244 }
4345
46+ #endregion
47+
48+ #region IScalarDiscriminatorConvention
49+
50+ public static BsonValue [ ] GetDiscriminatorsForTypeAndSubTypesInternal ( this IScalarDiscriminatorConvention discriminatorConvention , Type type , IBsonSerializationDomain serializationDomain )
51+ {
52+ if ( discriminatorConvention is IScalarDiscriminatorConventionInternal internalConvention )
53+ {
54+ return internalConvention . GetDiscriminatorsForTypeAndSubTypes ( type , serializationDomain ) ;
55+ }
56+ return discriminatorConvention . GetDiscriminatorsForTypeAndSubTypes ( type ) ;
57+ }
58+
59+ #endregion
60+
61+ #region IMemberMapConvention
62+
4463 public static void ApplyInternal ( this IMemberMapConvention memberMapConvention , BsonMemberMap memberMap , IBsonSerializationDomain serializationDomain )
4564 {
4665 if ( memberMapConvention is IMemberMapConventionInternal internalConvention )
@@ -53,6 +72,10 @@ public static void ApplyInternal(this IMemberMapConvention memberMapConvention,
5372 }
5473 }
5574
75+ #endregion
76+
77+ #region IPostProcessingConvention
78+
5679 public static void PostProcessInternal ( this IPostProcessingConvention postProcessingConvention , BsonClassMap classMap , IBsonSerializationDomain serializationDomain )
5780 {
5881 if ( postProcessingConvention is IPostProcessingConventionInternal internalConvention )
@@ -64,5 +87,7 @@ public static void PostProcessInternal(this IPostProcessingConvention postProces
6487 postProcessingConvention . PostProcess ( classMap ) ;
6588 }
6689 }
90+
91+ #endregion
6792 }
6893}
0 commit comments