public void Init()
 {
     var serializer = new AggregateSerializer( new PlatformAdapter() );
     serializer.AddSerializer(new DefaultSerializer());
     serializer.AddSerializer(new TestSerializer());
     _target = serializer;            
 }
 /// <summary>
 ///     Add a new serializer
 /// </summary>
 /// <param name="serializer">The serializer</param>
 public void AddSerializer(ISterlingSerializer serializer)
 {
     if (!_serializers.Contains(serializer))
     {
         _serializers.Add(serializer);
     }
 }
Exemplo n.º 3
0
 protected virtual ISterlingDriver GetDriver(string test, ISterlingSerializer serializer)
 {
     return(new MemoryDriver()
     {
         DatabaseInstanceName = test, DatabaseSerializer = serializer
     });
 }
        public void Init()
        {
            var serializer = new AggregateSerializer(new PlatformAdapter());

            serializer.AddSerializer(new DefaultSerializer());
            serializer.AddSerializer(new TestSerializer());
            _target = serializer;
        }
Exemplo n.º 5
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="database">Database this is a helper for</param>
 /// <param name="serializer">The serializer</param>
 /// <param name="logManager">The logger</param>
 /// <param name="typeResolver"></param>
 /// <param name="typeIndexer"></param>
 public SerializationHelper(ISterlingDatabaseInstance database, ISterlingSerializer serializer,
                            LogManager logManager, Func <string, int> typeResolver, Func <int, string> typeIndexer)
 {
     _database     = database;
     _serializer   = serializer;
     _logManager   = logManager;
     _typeResolver = typeResolver;
     _typeIndexer  = typeIndexer;
 }
Exemplo n.º 6
0
 /// <summary>
 ///     Clone the aggregate serializer and leave out the requesting (to avoid infinite loops)
 /// </summary>
 /// <param name="serializer">The serializer requesting the aggregate clone</param>
 /// <returns>An aggregate serializer that omits the requesting serializer</returns>
 public ISterlingSerializer CloneFor(ISterlingSerializer serializer)
 {
     var aggregateSerializer = new AggregateSerializer( _platformAdapter );
     var query = from s in _serializers where !s.GetType().Equals(serializer.GetType()) select s;
     foreach(var s in query)
     {
         aggregateSerializer.AddSerializer(s);
     }
     return aggregateSerializer;
 }
        /// <summary>
        ///     Clone the aggregate serializer and leave out the requesting (to avoid infinite loops)
        /// </summary>
        /// <param name="serializer">The serializer requesting the aggregate clone</param>
        /// <returns>An aggregate serializer that omits the requesting serializer</returns>
        public ISterlingSerializer CloneFor(ISterlingSerializer serializer)
        {
            var aggregateSerializer = new AggregateSerializer();
            var query = from s in _serializers where !s.GetType().Equals(serializer.GetType()) select s;

            foreach (var s in query)
            {
                aggregateSerializer.AddSerializer(s);
            }
            return(aggregateSerializer);
        }
Exemplo n.º 8
0
        protected override ISterlingDriver GetDriver( string test, ISterlingSerializer serializer )
        {
#if NETFX_CORE
            return new WindowsStorageDriver() { DatabaseInstanceName = test, DatabaseSerializer = serializer };
#elif SILVERLIGHT
            return new IsolatedStorageDriver()  { DatabaseInstanceName = test, DatabaseSerializer = serializer };
#elif AZURE_DRIVER
            return new Wintellect.Sterling.Server.Azure.TableStorage.Driver() { DatabaseInstanceName = test, DatabaseSerializer = serializer };
#else
            return new FileSystemDriver()  { DatabaseInstanceName = test, DatabaseSerializer = serializer };
#endif
        }
Exemplo n.º 9
0
        /// <summary>
        /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
        /// </summary>
        public void Deactivate()
        {
            lock (Lock)
            {
                _activated = false;
                _Unload();
                _databases.Clear();
                BaseDatabaseInstance.Deactivate();
                _serializer = new AggregateSerializer();
            }

            return;
        }
Exemplo n.º 10
0
 /// <summary>
 ///     Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Deactivate()
 {
     lock (_lock)
     {
         if (_activated)
         {
             _activated = false;
             _Unload();
             _databases.Clear();
             _serializer = new AggregateSerializer(Engine.PlatformAdapter);
         }
     }
 }
Exemplo n.º 11
0
        protected override ISterlingDriver GetDriver(string test, ISterlingSerializer serializer)
        {
#if NETFX_CORE
            return(new WindowsStorageDriver()
            {
                DatabaseInstanceName = test, DatabaseSerializer = serializer
            });
#elif SILVERLIGHT
            return(new IsolatedStorageDriver()
            {
                DatabaseInstanceName = test, DatabaseSerializer = serializer
            });
#elif AZURE_DRIVER
            return(new Wintellect.Sterling.Server.Azure.TableStorage.Driver()
            {
                DatabaseInstanceName = test, DatabaseSerializer = serializer
            });
#else
            return(new FileSystemDriver()
            {
                DatabaseInstanceName = test, DatabaseSerializer = serializer
            });
#endif
        }
Exemplo n.º 12
0
        /// <summary>
        ///     Register a serializer with the system
        /// </summary>
        /// <typeparam name="T">The type of the serliaizer</typeparam>
        public void RegisterSerializer <T>() where T : BaseSerializer
        {
            if (_activated)
            {
                throw new SterlingActivationException(string.Format("RegisterSerializer<{0}>", typeof(T).FullName));
            }

            ISterlingSerializer serializer = null;

            if (typeof(T) == typeof(AggregateSerializer))
            {
                serializer = new AggregateSerializer(Engine.PlatformAdapter);
            }
            else if (typeof(T) == typeof(ExtendedSerializer))
            {
                serializer = new ExtendedSerializer(Engine.PlatformAdapter);
            }
            else
            {
                serializer = (ISterlingSerializer)Activator.CreateInstance(typeof(T));
            }

            ((AggregateSerializer)_serializer).AddSerializer(serializer);
        }
Exemplo n.º 13
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="database">Database</param>
 /// <param name="serializer">Serializer</param>
 /// <param name="log">Logging delegate</param>
 protected BaseDriver(ISterlingDatabaseInstance database, ISterlingSerializer serializer, Action <SterlingLogLevel, string, Exception> log) : this()
 {
     this.Database           = database;
     this.DatabaseSerializer = serializer;
     this.Log = log;
 }
 public SterlingSerializerException(ISterlingSerializer serializer, Type targetType) :
     base(string.Format(Exceptions.SterlingSerializerException, serializer.GetType().FullName, targetType.FullName))
 {
 }
 public SterlingSerializerException(ISterlingSerializer serializer, Type targetType) : 
     base(string.Format(Exceptions.SterlingSerializerException, serializer.GetType().FullName, targetType.FullName))
 {
     
 }
Exemplo n.º 16
0
 public void Init()
 {
     _target = new ExtendedSerializer( new PlatformAdapter() );
 }
Exemplo n.º 17
0
 public MemoryDriver(string databaseName, ISterlingSerializer serializer, Action <SterlingLogLevel, string, Exception> log) : base(databaseName, serializer, log)
 {
 }
Exemplo n.º 18
0
 public SterlingDatabase(SterlingEngine engine)
 {
     Engine       = engine;
     TypeResolver = new TableTypeResolver();
     _serializer  = new AggregateSerializer(engine.PlatformAdapter);
 }
Exemplo n.º 19
0
 public void Init()
 {
     _target = new ExtendedSerializer(new PlatformAdapter());
 }
Exemplo n.º 20
0
 /// <summary>
 ///     Add a new serializer
 /// </summary>
 /// <param name="serializer">The serializer</param>
 public void AddSerializer(ISterlingSerializer serializer)
 {
     if (!_serializers.Contains(serializer))
     {
         _serializers.Add(serializer);
     }
 }
Exemplo n.º 21
0
 public void Init()
 {
     _target = new DefaultSerializer();
 }
Exemplo n.º 22
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="databaseName">Database</param>
 /// <param name="serializer">Serializer</param>
 /// <param name="log">Logging delegate</param>
 protected BaseDriver(string databaseName, ISterlingSerializer serializer, Action <SterlingLogLevel, string, Exception> log) : this()
 {
     DatabaseName       = databaseName;
     DatabaseSerializer = serializer;
     Log = log;
 }
Exemplo n.º 23
0
 protected virtual ISterlingDriver GetDriver( string test, ISterlingSerializer serializer )
 {
     return new MemoryDriver() { DatabaseInstanceName = test, DatabaseSerializer = serializer };
 }
Exemplo n.º 24
0
 public void Init()
 {
     _target = new DefaultSerializer();
 }
Exemplo n.º 25
0
 public MemoryDriver(ISterlingDatabaseInstance database, ISterlingSerializer serializer, Action <SterlingLogLevel, string, Exception> log) : base(database, serializer, log)
 {
 }
Exemplo n.º 26
0
 public SterlingSerializerException(ISterlingSerializer serializer, Type targetType) :
     base($"{serializer.GetType().FullName} {targetType.FullName}")
 {
 }