/// <summary>
 /// Registers a serialization provider.
 /// </summary>
 /// <param name="provider">The serialization provider.</param>
 public static void RegisterSerializationProvider(
     IBsonSerializationProvider provider
     )
 {
     lock (configLock) {
         // add new provider to the front of the list
         serializationProviders.Insert(0, provider);
     }
 }
        /// <summary>
        /// Registers the serialization provider. This behaves like a stack, so the
        /// last provider registered is the first provider consulted.
        /// </summary>
        /// <param name="serializationProvider">The serialization provider.</param>
        public void RegisterSerializationProvider(IBsonSerializationProvider serializationProvider)
        {
            if (serializationProvider == null)
            {
                throw new ArgumentNullException("serializationProvider");
            }

            _serializationProviders.Push(serializationProvider);
        }
 /// <summary>
 /// Registers a serialization provider.
 /// </summary>
 /// <param name="provider">The serialization provider.</param>
 public static void RegisterSerializationProvider(
     IBsonSerializationProvider provider
     )
 {
     configLock.EnterWriteLock();
     try {
         // add new provider to the front of the list
         serializationProviders.Insert(0, provider);
     } finally {
         configLock.ExitWriteLock();
     }
 }
Example #4
0
 /// <summary>
 /// Registers a serialization provider.
 /// </summary>
 /// <param name="provider">The serialization provider.</param>
 public static void RegisterSerializationProvider(IBsonSerializationProvider provider)
 {
     __configLock.AcquireWriterLock(-1);
     try
     {
         // add new provider to the front of the list
         __serializationProviders.Insert(0, provider);
     }
     finally
     {
         __configLock.ReleaseWriterLock();
     }
 }
 /// <summary>
 /// Registers a serialization provider.
 /// </summary>
 /// <param name="provider">The serialization provider.</param>
 public static void RegisterSerializationProvider(IBsonSerializationProvider provider)
 {
     __serializerRegistry.RegisterSerializationProvider(provider);
 }