private void AddConfigDataSerializableFactories(
     IDictionary <int, IDataSerializableFactory> dataSerializableFactories, SerializationConfig config)
 {
     foreach (var entry in config.GetDataSerializableFactories())
     {
         int factoryId = entry.Key;
         IDataSerializableFactory factory = entry.Value;
         if (factoryId <= 0)
         {
             throw new ArgumentException("IDataSerializableFactory factoryId must be positive! -> " + factory);
         }
         if (dataSerializableFactories.ContainsKey(factoryId))
         {
             throw new ArgumentException("IDataSerializableFactory with factoryId '" + factoryId +
                                         "' is already registered!");
         }
         dataSerializableFactories.Add(factoryId, factory);
     }
     foreach (var entry in config.GetDataSerializableFactoryClasses())
     {
         int    factoryId        = entry.Key;
         string factoryClassName = entry.Value;
         if (factoryId <= 0)
         {
             throw new ArgumentException("IDataSerializableFactory factoryId must be positive! -> " +
                                         factoryClassName);
         }
         if (dataSerializableFactories.ContainsKey(factoryId))
         {
             throw new ArgumentException("IDataSerializableFactory with factoryId '" + factoryId +
                                         "' is already registered!");
         }
         IDataSerializableFactory factory = null;
         try
         {
             Type type = Type.GetType(factoryClassName);
             if (type != null)
             {
                 factory = Activator.CreateInstance(type) as IDataSerializableFactory;
             }
         }
         catch (Exception e)
         {
             //ClassLoaderUtil.newInstance(cl, factoryClassName);
             throw new HazelcastSerializationException(e);
         }
         dataSerializableFactories.Add(factoryId, factory);
     }
     foreach (IDataSerializableFactory f in dataSerializableFactories.Values)
     {
         var aware = f as IHazelcastInstanceAware;
         if (aware != null)
         {
             aware.SetHazelcastInstance(_hazelcastInstance);
         }
     }
 }
Example #2
0
 private void Register(int factoryId, IDataSerializableFactory factory)
 {
     _factories.TryGetValue(factoryId, out var current);
     if (current != null)
     {
         if (current.Equals(factory))
         {
             _logger.LogWarning("DataSerializableFactory[" + factoryId + "] is already registered! Skipping " +
                                factory);
         }
         else
         {
             throw new ArgumentException("DataSerializableFactory[" + factoryId + "] is already registered! " +
                                         current + " -> " + factory);
         }
     }
     else
     {
         _factories.Add(factoryId, factory);
     }
 }
 public virtual SerializationConfig AddDataSerializableFactory(int factoryId,
     IDataSerializableFactory dataSerializableFactory)
 {
     GetDataSerializableFactories().Add(factoryId, dataSerializableFactory);
     return this;
 }
 /// <summary>
 /// Adds a <see cref="IDataSerializableFactory"/> mapped with a factory id to be registered
 /// </summary>
 /// <param name="factoryId">factory ID of <see cref="IDataSerializableFactory"/> to be registered</param>
 /// <param name="dataSerializableFactory"><see cref="IDataSerializableFactory"/>object to be registered</param>
 /// <returns>configured <see cref="SerializationConfig"/> for chaining</returns>
 public virtual SerializationConfig AddDataSerializableFactory(int factoryId,
                                                               IDataSerializableFactory dataSerializableFactory)
 {
     GetDataSerializableFactories().Add(factoryId, dataSerializableFactory);
     return(this);
 }
Example #5
0
 public ISerializationServiceBuilder AddDataSerializableFactory(int id, IDataSerializableFactory factory)
 {
     _dataSerializableFactories.Add(id, factory);
     return(this);
 }
Example #6
0
 public SerializationConfig AddDataSerializableFactory(int factoryId, IDataSerializableFactory dataSerializableFactory)
 {
     DataSerializableFactories.Add(factoryId, dataSerializableFactory);
     return(this);
 }
 public ISerializationServiceBuilder AddDataSerializableFactory(int id, IDataSerializableFactory factory)
 {
     _dataSerializableFactories.Add(id, factory);
     return this;
 }