Ejemplo n.º 1
0
        public EventCalculationViewModel eventCalculation(string type,
                                                          string[] array)
        {
            EventCalculationViewModel ecvm;

            if (type.ToUpper() == "LOWERBARRIER")
            {
                ecvm = new LowerBarrierEventCalViewModel();
            }
            else
            {
                throw new Exception();
            }

            return(ecvm);
        }
        private EventCalculationViewModel eventCalViewModel()
        {
            EventCalculationViewModel ecvm;
            EventCalculationFactory   ecf = new EventCalculationFactory();

            #region barrierEventCal

            if (this.barrierType_.ToUpper() == "LOWER" || this.barrierType_.ToUpper() == "LOWERBARRIER")
            {
                LowerBarrierEventCalViewModel lbecvm = new LowerBarrierEventCalViewModel();

                lbecvm.DateInformationViewModel_ = new ObservableCollection <DateInformationViewModel>();
                lbecvm.LowerTrigger_             = new ObservableCollection <string>();

                lbecvm.DateInformationViewModel_.Add(this.dateInfoVM());
                lbecvm.LowerTrigger_.Add(this.downBarrierTrigger_.ToString());

                lbecvm.ReferenceCalculationInfoViewModel_.ReferenceCalculationViewModel_.Add(
                    this.referenceCalFactory_.getReferCalVM(referenceCal_downID_));

                ecvm = lbecvm;
            }
            else if (this.barrierType_.ToUpper() == "UPPER" || this.barrierType_.ToUpper() == "UPPERBARRIER")
            {
                UpperBarrierEventCalViewModel ubecvm = new UpperBarrierEventCalViewModel();

                ubecvm.DateInformationViewModel_ = new ObservableCollection <DateInformationViewModel>();
                ubecvm.UpperTrigger_             = new ObservableCollection <string>();

                ubecvm.DateInformationViewModel_.Add(this.dateInfoVM());
                ubecvm.UpperTrigger_.Add(this.upBarrierTrigger_.ToString());

                ubecvm.ReferenceCalculationInfoViewModel_.ReferenceCalculationViewModel_.Add(
                    this.referenceCalFactory_.getReferCalVM(referenceCal_downID_));

                ecvm = ubecvm;
            }
            else if (this.barrierType_.ToUpper() == "DUAL" || this.barrierType_.ToUpper() == "DUALBARRIER")
            {
                DualBarrierEventCalViewModel dbecvm = new DualBarrierEventCalViewModel();

                dbecvm.DateInformationViewModel_ = new ObservableCollection <DateInformationViewModel>();
                dbecvm.DateInformationViewModel_.Add(this.dateInfoVM());

                dbecvm.LowerTrigger_ = new ObservableCollection <string>();
                dbecvm.LowerTrigger_.Add(this.downBarrierTrigger_.ToString());

                dbecvm.UpperTrigger_ = new ObservableCollection <string>();
                dbecvm.UpperTrigger_.Add(this.downBarrierTrigger_.ToString());

                //upperPart
                ReferenceCalculationInfoViewModel u_rcivm = new ReferenceCalculationInfoViewModel();
                u_rcivm.ReferenceCalculationViewModel_.Add(this.referenceCalFactory_.getReferCalVM(referenceCal_downID_));
                dbecvm.ReferenceCalculationInfoViewModel_.Add(u_rcivm);

                //lowerPart
                ReferenceCalculationInfoViewModel l_rcivm = new ReferenceCalculationInfoViewModel();
                l_rcivm.ReferenceCalculationViewModel_.Add(this.referenceCalFactory_.getReferCalVM(referenceCal_downID_));
                dbecvm.ReferenceCalculationInfoViewModel_.Add(l_rcivm);

                ecvm = dbecvm;
            }
            else
            {
                throw new Exception("unknown barrierType : " + this.barrierType_);
            }

            #endregion

            return(ecvm);
        }