public void FixtureSetUp()
        {
            BootStrapper.Bootstrap();

            SessionSource = ObjectFactory.GetInstance <ISessionSource>();
            SessionSource.BuildSchema();
        }
Exemplo n.º 2
0
        //private int _lastIndex = -1;
        //private float _lastValue;

        #region protected Function(IFunction data)
        /// <summary>
        /// Функция индикатора может иметь исходные данные двух типов
        /// iBars - данные Open, High, Low и Close, в данном случае функция не может
        ///         быть расчитана от другого индикатора.
        /// iBars.RateData - данные Open, High, Low или Close, в данном случае функция
        ///         может быть рассчитана от этих цен
        /// Function - данные другой функции, в данном случае функция может быть рассчитана
        ///         от этих цен, либо от другой функции
        /// </summary>
        /// <param name="data"></param>
        protected Function(IFunction inData)
        {
            if (inData == null)
            {
                throw (new ArgumentNullException("inData"));
            }

            _inData = inData;
            _items  = new ItemCollection(this);

            /* Поик основателя, установка сессии с ним */
            if (inData is iBars.RateData)
            {
                _sessionSource = (inData as iBars.RateData).Session;
            }
            else if (inData is iBars)
            {
                _sessionSource = (inData as iBars).Session;
            }
            else if (inData is Function)
            {
                _sessionSource = (inData as Function)._sessionSource;
            }

            if (_sessionSource == null)
            {
                throw (new NullReferenceException("InitializeSession error. Session not found"));
            }
            _sessionDest = new SessionDest(_sessionSource);
        }
Exemplo n.º 3
0
        public iBars(IBarsData barsData)
        {
            _barsData = barsData;

            ISession session = barsData as ISession;

            if (session == null)
            {
                throw (new ArgumentException("Parameter is not a ISession", "barsData"));
            }
            _sessionSource = new SessionSource(session.Session);

            int bLenght = Math.Min(Math.Max(300, _barsData.Count), 2000);

            _buffer = new Bar[bLenght];
            Trace.WriteLine(string.Format("Initialize bars buffer: size={0}", bLenght));

            _fxClose    = new FxClose(this);
            _fxHigh     = new FxHigh(this);
            _fxLow      = new FxLow(this);
            _fxOpen     = new FxOpen(this);
            _fxMedian   = new FxMedian(this);
            _fxTypical  = new FxTypical(this);
            _fxWeighted = new FxWeighted(this);
        }
Exemplo n.º 4
0
 public BarManager(BarsManager owner, TimeFrame timeFrame)
 {
     _session      = owner.Session;
     _savedSession = new SessionDest(_session);
     _owner        = owner;
     _timeFrame    = timeFrame;
 }
        public static ISession OpenTemporarySession()
        {
            lock (factorylock)
            {
                if (_sessionSource == null)
                {
                    var persistenceModel = new PersistenceModel();
                    persistenceModel.AddMappingsFromAssembly(typeof(JiraIssueMap).Assembly);

                    var sqLiteConfiguration = new SQLiteConfiguration()
                                              .InMemory()
                                              .ShowSql();

                    var sessionSource = new SessionSource(sqLiteConfiguration.ToProperties(), persistenceModel);

                    _sessionSource = sessionSource;
                }
            }

            var session = _sessionSource.CreateSession();

            _sessionSource.BuildSchema(session);

            return(session);
        }
Exemplo n.º 6
0
    private static void BuildSchema(FluentConfiguration configuration)
    {
        var sessionSource = new SessionSource(configuration);
        var session       = sessionSource.CreateSession();

        sessionSource.BuildSchema(session);
    }
Exemplo n.º 7
0
        /// <summary>
        /// Configures the storage with the user supplied persistence configuration
        /// Azure tables are created if requested by the user
        /// </summary>
        /// <param name="config"></param>
        /// <param name="connectionString"></param>
        /// <param name="createSchema"></param>
        /// <returns></returns>
        public static Configure AzureSubcriptionStorage(this Configure config,
                                                        string connectionString,
                                                        bool createSchema)
        {
            var database = MsSqlConfiguration.MsSql2005
                           .ConnectionString(connectionString)
                           .Provider(typeof(TableStorageConnectionProvider).AssemblyQualifiedName)
                           .Dialect(typeof(TableStorageDialect).AssemblyQualifiedName)
                           .Driver(typeof(TableStorageDriver).AssemblyQualifiedName)
                           .ProxyFactoryFactory(typeof(ProxyFactoryFactory).AssemblyQualifiedName);

            var fluentConfiguration = Fluently.Configure()
                                      .Database(database)
                                      .Mappings(m => m.FluentMappings.Add(typeof(SubscriptionMap)));
            var configuration = fluentConfiguration.BuildConfiguration();

            var sessionSource = new SessionSource(fluentConfiguration);

            if (createSchema)
            {
                using (var session = sessionSource.CreateSession())
                {
                    new SchemaExport(configuration).Execute(true, true, false, session.Connection, null);
                    session.Flush();
                }
            }

            config.Configurer.RegisterSingleton <ISessionSource>(sessionSource);
            config.Configurer.ConfigureComponent <SubscriptionStorage>(DependencyLifecycle.InstancePerCall);

            return(config);
        }
Exemplo n.º 8
0
 public SessionDetails(DateTimeOffset?createdAt, string cartToken, string browserIp, SessionSource source)
 {
     CreatedAt = createdAt;
     CartToken = cartToken;
     BrowserIp = browserIp;
     Source    = source;
 }
 public override void OnResultExecuted(ResultExecutedContext filterContext)
 {
     if (filterContext.IsChildAction)
     {
         return;
     }
     SessionSource.EndContextSession();
 }
Exemplo n.º 10
0
 /// <summary>
 /// Finalizes the request. If current session exists the method flushes it and
 /// closes. Call this method at the end of ASP.NET request.
 /// </summary>
 public static void EndRequest()
 {
     if (HasCurrent())
     {
         Close();
     }
     SessionSource.Set(null);
 }
Exemplo n.º 11
0
 protected virtual void Before_each_test()
 {
     SessionSource = new SessionSource(new TestModel());
     Session       = SessionSource.CreateSession();
     SessionSource.BuildSchema(Session);
     CreateInitialData(Session);
     Session.Clear();
 }
        public void RecreateDb(ISession session)
        {
            InitSessionFactory();
            var sessionSource = new SessionSource(_fluentConfiguration);

            sessionSource.BuildSchema(session);
            session.Flush();
        }
 protected virtual void Context()
 {
     SessionSource = new SessionSource(new TModel());
     Session       = SessionSource.CreateSession();
     SessionSource.BuildSchema(Session);
     CreateInitialData(Session);
     Session.Flush();
     Session.Clear();
 }
Exemplo n.º 14
0
        /// <summary>
        /// Flushes current session.
        /// </summary>
        public static void Flush()
        {
            ISession session = SessionSource.Get();

            if (session != null)
            {
                session.Flush();
            }
        }
Exemplo n.º 15
0
        public ISessionSource CreateSessionSource(PersistenceModel model)
        {
            var properties = GetProperties();
            var source     = new SessionSource(properties, model);

            create_schema_if_it_does_not_already_exist(source);

            return(source);
        }
Exemplo n.º 16
0
        public TicksManager()
        {
            _sessionSource = new SessionSource();
            _sessionDest   = new SessionDest(_sessionSource);
            _sessionSource.IncrementsLevel1();

            _barsManager = new BarsManager(this);
            _map         = new TicksMapManager(this);
        }
Exemplo n.º 17
0
        private void TestConnection(string connectionString)
        {
            SessionSource sessionSource = SqLiteConnector.CreateDebugSessionSource(connectionString);

            using (ISession session = sessionSource.CreateSession())
            {
                sessionSource.BuildSchema(session);
            }
        }
 public void AutoCriarBancoDeDados()
 {
     if (_fluentConfiguration != null)
     {
         var      sessionSource = new SessionSource(_fluentConfiguration);
         ISession session       = sessionSource.CreateSession();
         sessionSource.BuildSchema(session);
     }
 }
Exemplo n.º 19
0
        public void ReturnsFalseIfEmailBelongsToUser()
        {
            var repository = new UserRepository(null, SessionSource.CreateSession());
            var user       = new User {
                Name = "test", Credentials = new Credentials("*****@*****.**", "pass")
            };

            repository.Save(user);
            Assert.False(repository.EmailExists(user));
        }
Exemplo n.º 20
0
 public BarsManager(TicksManager owner)
 {
     _owner   = owner;
     _session = owner.Session;
     foreach (TimeFrame timeFrame in TimeFrameManager.TimeFrames)
     {
         BarManager barManager = new BarManager(this, timeFrame);
         _bars.Add(timeFrame.Second, barManager);
     }
 }
Exemplo n.º 21
0
        /// <summary>
        /// Flushes and closes current session.
        /// </summary>
        public static void CloseAndFlush()
        {
            ISession session = SessionSource.Get();

            if (session != null)
            {
                session.Flush();
                session.Close();
                SessionSource.Set(null);
            }
        }
Exemplo n.º 22
0
        public void ReturnsFalseIfEmailIsntInUse()
        {
            var user = new User {
                Credentials = new Credentials {
                    Email = "*****@*****.**"
                }
            };
            var repository = new UserRepository(null, SessionSource.CreateSession());

            Assert.False(repository.EmailExists(user));
        }
Exemplo n.º 23
0
        public void Should_map_all_event_fields_correctly()
        {
            var newEvent = new Conference("Some event");

            SaveEntities(newEvent);

            var newSession = SessionSource.CreateSession();

            var savedEvent = newSession.Load <Conference>(newEvent.Id);

            savedEvent.Name.ShouldEqual(newEvent.Name);
        }
Exemplo n.º 24
0
        public void Should_map_session_fields()
        {
            var speaker = new Speaker("Joe", "Schmoe");
            var session = new Session("Foo", new string('a', 5000), speaker);

            SaveEntities(session);

            var loaded = SessionSource.CreateSession().Load <Session>(session.Id);

            loaded.Title.ShouldEqual(session.Title);
            loaded.Abstract.ShouldEqual(session.Abstract);
        }
Exemplo n.º 25
0
        public void ReturnsTrueIfEmailExistsForDifferentUser()
        {
            var repository = new UserRepository(null, SessionSource.CreateSession());
            var user       = new User {
                Name = "test", Credentials = new Credentials("*****@*****.**", "pass")
            };

            repository.Save(new User {
                Name = "test", Credentials = new Credentials("*****@*****.**", "pass")
            });
            Assert.True(repository.EmailExists(user));
        }
Exemplo n.º 26
0
        public void Should_get_events_by_name()
        {
            var conference = new Conference("Foo");

            SaveEntities(conference);

            var repos = new ConferenceRepository(SessionSource.CreateSession());

            var loaded = repos.GetByName("Foo");

            loaded.ShouldEqual(conference);
        }
Exemplo n.º 27
0
        public void Should_cascade_to_speaker()
        {
            var speaker = new Speaker("Joe", "Schmoe");
            var session = new Session("Foo", "Bar", speaker);

            SaveEntities(session);

            var loaded = SessionSource.CreateSession().Load <Session>(session.Id);

            loaded.Speaker.ShouldEqual(speaker);

            loaded.Speaker.GetSessions().Count().ShouldEqual(1);
        }
Exemplo n.º 28
0
        /// <summary>
        /// Closes current session.
        /// </summary>
        /// <remarks><b>N.B.</b> Close do not flush the session.</remarks>
        public static void Close()
        {
            ISession session = SessionSource.Get();

            if (session != null)
            {
                session.Close();
                session.Dispose();
                GC.Collect();
                GC.WaitForPendingFinalizers();
                SessionSource.Set(null);
            }
        }
Exemplo n.º 29
0
        private TicksFileData(FileInfo file, bool loadInfo)
        {
            _file = file;

            _sessionSource = new SessionSource();
            _sessionDest   = new SessionDest(_sessionSource);
            _sessionSource.IncrementsLevel1();

            if (loadInfo)
            {
                this.LoadFileInfo();
            }
        }
Exemplo n.º 30
0
        public void Should_cascade_attendee()
        {
            var attendee = new Attendee("Joe", "Schmoe");
            var newEvent = new Conference("Some event");

            attendee.RegisterFor(newEvent);

            SaveEntities(newEvent);

            var loaded = SessionSource.CreateSession().Load <Conference>(newEvent.Id);

            loaded.GetAttendees().Count().ShouldEqual(1);
            loaded.GetAttendees().ElementAt(0).Conference.ShouldEqual(loaded);
        }