コード例 #1
0
 public void Write(DataBase <T> pDataBase, IDbSource pTarget)
 {
     lock (_syncLock)
     {
         var stream = pTarget.GetStream();
         _serializer.Write(pDataBase, stream);
         StreamUtils.CloseStream(stream);
     }
 }
コード例 #2
0
        public DataBase <T> Read(IDbSource pSource)
        {
            DataBase <T> dataBase;

            lock (_syncLock)
            {
                var stream = pSource.GetStream();
                dataBase = _serializer.Read(stream);
                StreamUtils.CloseStream(stream);

                dataBase.DbSource = pSource;
            }

            return(dataBase);
        }
コード例 #3
0
        /// <summary>
        /// </summary>
        /// <exception cref="InitializationException"></exception>
        private void Initialize(AtmSource atmSource)
        {
            var serializer = new AtmSerializer();
            var stream     = atmSource.GetStream();

            _atm = serializer.Read(stream);

            StreamUtils.CloseStream(stream);

            if (_atm == null)
            {
                throw new InitializationException();
            }

            try
            {
                DbManager.GetInstance().SetSourceProvider(_atm.SourceProvider);
                DbManager.GetInstance().Initialize();
            }
            catch (Exception)
            {
                throw new InitializationException();
            }
        }