public ActionResult Index(BaseUserSessionViewModel baseUserSessionViewModel)
        {
            questStatus status = null;

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                baseUserSessionViewModel.questStatus = status;
                return(View("Index", baseUserSessionViewModel));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(baseUserSessionViewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                baseUserSessionViewModel.questStatus = status;
                return(View("Index", baseUserSessionViewModel));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return view.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            DatabasesListViewModel tablesetsListViewModel = new DatabasesListViewModel(this.UserSession, baseUserSessionViewModel);

            return(View(tablesetsListViewModel));
        }
Example #2
0
        /*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/

        #region LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        // LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        public questStatus List(out DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;

            databasesListViewModel = null;


            // Get query options from query string
            QueryOptions    queryOptions    = null;
            BaseListModeler baseListModeler = new BaseListModeler(this.HttpRequestBase, new UserSession());

            status = baseListModeler.ParsePagingOptions(this.HttpRequestBase, out queryOptions);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Set up query options.
            // TEMPORARY: OPTIMIZE THIS
            List <SearchField> searchFieldList = new List <SearchField>();
            SearchOptions      searchOptions   = new SearchOptions();

            searchOptions.SearchFieldList = searchFieldList;
            queryOptions.SearchOptions    = searchOptions;


            // List
            status = List(queryOptions, out databasesListViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
Example #3
0
        /*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/

        #region LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        // LIST
        //----------------------------------------------------------------------------------------------------------------------------------
        public questStatus List(out DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;

            databasesListViewModel = null;


            // Get query options from query string
            QueryOptions    queryOptions    = null;
            BaseListModeler baseListModeler = new BaseListModeler(this.HttpRequestBase, new UserSession());

            status = baseListModeler.ParsePagingOptions(this.HttpRequestBase, out queryOptions);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // List
            status = List(queryOptions, out databasesListViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
Example #4
0
        public ActionResult List(DatabasesListViewModel databasesListViewModel)
        {
            questStatus status = null;

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(databasesListViewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Get list of items.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            DatabasesListViewModel databasesListViewModelNEW = null;
            DatabasesListModeler   databasesListModeler      = new DatabasesListModeler(this.Request, this.UserSession);

            status = databasesListModeler.List(out databasesListViewModelNEW);
            if (!questStatusDef.IsSuccess(status))
            {
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return result view model or as Excel
            *---------------------------------------------------------------------------------------------------------------------------------*/
            if (databasesListViewModel.bExportToExcel)
            {
                string filename = "DatabasesLog_" + DateTime.Now.ToString();
                Response.ClearContent();
                Response.AddHeader("content-disposition", "atachment;filename=" + filename + ".xls");
                Response.AddHeader("Content-Type", "application/vnd.ms-excel");
                writeTsv(databasesListViewModelNEW, Response.Output);
                Response.Flush();
                Response.End();
                return(new EmptyResult());
            }
            else
            {
                status = new questStatus(Severity.Success);
                databasesListViewModelNEW.questStatus = status;
                return(Json(databasesListViewModelNEW, JsonRequestBehavior.AllowGet));
            }
        }
Example #5
0
        private void ShowCreateDatabaseWindow()
        {
            var createDatabaseWindow = new CreateDatabaseWindow
            {
                DataContext = new CreateDatabaseWindowViewModel(_container)
            };

            createDatabaseWindow.ShowDialog();
            DatabasesListViewModel.LoadDatabases();
        }
Example #6
0
        public ActionResult Next(DatabasesListViewModel databasesListViewModel)
        {
            questStatus status = null;


            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(databasesListViewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Get list of items.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            // TODO.
            DatabasesListViewModel tablesetsListViewModelNEW = null;
            DatabasesListModeler   usersListModeler          = new DatabasesListModeler(this.Request, this.UserSession);

            status = usersListModeler.List(out tablesetsListViewModelNEW);
            if (!questStatusDef.IsSuccess(status))
            {
                status = new questStatus(Severity.Success);
                databasesListViewModel.questStatus = status;
                return(Json(databasesListViewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return view
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = new questStatus(Severity.Success);
            tablesetsListViewModelNEW.questStatus = status;
            return(Json(tablesetsListViewModelNEW, JsonRequestBehavior.AllowGet));
        }
Example #7
0
        private async void LoadDatabaseMethod()
        {
            var loadFileDialog = new OpenFileDialog();

            bool?result = loadFileDialog.ShowDialog();

            if (result == true)
            {
                string filename = loadFileDialog.FileName;
                string content  = File.ReadAllText(filename);
                await _mediator.Send(new LoadSerializedDatabaseCommand { Content = content });

                DatabasesListViewModel.LoadDatabases();
            }
        }
Example #8
0
        public MainWindowViewModel(IContainer container)
        {
            _container = container;
            _mediator  = _container.Resolve <IMediator>();

            DatabasesListViewModel = new DatabasesListViewModel(_container);

            CreateNewDatabase = new RelayCommand(ShowCreateDatabaseWindow);

            OperateDatabase = new RelayCommand(ShowOperateDatabaseWindow, () => DatabasesListViewModel.SelectedDatabase != null);
            SaveDatabase    = new RelayCommand(SaveDatabaseMethod, () => DatabasesListViewModel.SelectedDatabase != null);
            LoadDatabase    = new RelayCommand(LoadDatabaseMethod);

            DatabasesListViewModel.PropertyChanged += DatabasesListViewModelPropertyChangedHandler;
        }
Example #9
0
        //----------------------------------------------------------------------------------------------------------------------------------
        // Options
        //----------------------------------------------------------------------------------------------------------------------------------
        #endregion


        #region Validations
        //----------------------------------------------------------------------------------------------------------------------------------
        // Validations
        //----------------------------------------------------------------------------------------------------------------------------------
        #endregion


        #region Commands
        //----------------------------------------------------------------------------------------------------------------------------------
        // Commands
        //----------------------------------------------------------------------------------------------------------------------------------
        public questStatus Clear(DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;


            DatabaseLogsMgr databaseLogsMgr = new DatabaseLogsMgr(this.UserSession);

            status = databaseLogsMgr.Clear();
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
Example #10
0
        public questStatus List(QueryOptions queryOptions, out DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;

            databasesListViewModel = null;


            // List
            QueryResponse queryResponse = null;
            List <Quest.Functional.MasterPricing.Database> databaseList = null;
            DatabasesMgr databasesMgr = new DatabasesMgr(this.UserSession);

            status = databasesMgr.List(queryOptions, out databaseList, out queryResponse);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Sort
            databaseList.Sort(delegate(Quest.Functional.MasterPricing.Database i1, Quest.Functional.MasterPricing.Database i2) { return(i1.Name.CompareTo(i2.Name)); });


            // Transfer model.
            // TODO: USE BaseListModeler to xfer queryOptions to QueryOptionsViewModel.
            databasesListViewModel = new DatabasesListViewModel(this.UserSession);
            QueryResponseViewModel queryResponseViewModel = null;

            status = TransferQueryResponse(queryResponse, out queryResponseViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            databasesListViewModel.QueryResponse = queryResponseViewModel;
            foreach (Quest.Functional.MasterPricing.Database database in databaseList)
            {
                DatabaseLineItemViewModel databaseLineItemViewModel = new DatabaseLineItemViewModel();
                BufferMgr.TransferBuffer(database, databaseLineItemViewModel);
                databaseLineItemViewModel.LastRefresh = database.LastRefresh.HasValue ? database.LastRefresh.Value.ToString("MM/dd/yyyy HH:mm:ss") : "";
                databasesListViewModel.Items.Add(databaseLineItemViewModel);
            }
            return(new questStatus(Severity.Success));
        }
Example #11
0
        public ActionResult Clear(DatabasesListViewModel viewModel)
        {
            questStatus status = null;

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Log Operation
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = LogOperation();
            if (!questStatusDef.IsSuccess(status))
            {
                viewModel.questStatus = status;
                return(Json(viewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Authorize
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = Authorize(viewModel._ctx);
            if (!questStatusDef.IsSuccess(status))
            {
                viewModel.questStatus = status;
                return(Json(viewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Perform operation.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            DatabasesListModeler databasesListModeler = new DatabasesListModeler(this.Request, this.UserSession);

            status = databasesListModeler.Clear(viewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                viewModel.questStatus = status;
                return(Json(viewModel, JsonRequestBehavior.AllowGet));
            }

            /*----------------------------------------------------------------------------------------------------------------------------------
            * Return result.
            *---------------------------------------------------------------------------------------------------------------------------------*/
            status = new questStatus(Severity.Success, "Database log successfully cleared");
            viewModel.questStatus = status;
            return(Json(viewModel, JsonRequestBehavior.AllowGet));
        }
Example #12
0
        public questStatus Page(out DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;

            databasesListViewModel = null;


            // Set up query options.
            // TEMPORARY: OPTIMIZE THIS
            List <SearchField> searchFieldList = new List <SearchField>();

            SearchOptions searchOptions = new SearchOptions();

            searchOptions.SearchFieldList = searchFieldList;

            QueryOptions queryOptions = new QueryOptions(100, 1);

            queryOptions.SearchOptions = searchOptions;
            QueryResponse queryResponse = null;


            // List
            List <Quest.Functional.MasterPricing.Database> databaseList = null;
            DatabasesMgr databasesMgr = new DatabasesMgr(this.UserSession);

            status = databasesMgr.List(queryOptions, out databaseList, out queryResponse);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Transfer model.
            databasesListViewModel = new DatabasesListViewModel(this.UserSession);
            foreach (Quest.Functional.MasterPricing.Database database in databaseList)
            {
                DatabaseLineItemViewModel databaseLineItemViewModel = new DatabaseLineItemViewModel();
                BufferMgr.TransferBuffer(database, databaseLineItemViewModel);
                databasesListViewModel.Items.Add(databaseLineItemViewModel);
            }
            return(new questStatus(Severity.Success));
        }
Example #13
0
        public questStatus List(QueryOptions queryOptions, out DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;

            databasesListViewModel = null;


            // List
            QueryResponse queryResponse = null;
            List <Quest.Functional.Logging.DatabaseLog> databaseLogList = null;
            DatabaseLogsMgr databaseLogsMgr = new DatabaseLogsMgr(this.UserSession);

            status = databaseLogsMgr.List(queryOptions, out databaseLogList, out queryResponse);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }

            // Sort
            databaseLogList.Sort(delegate(Quest.Functional.Logging.DatabaseLog i1, Quest.Functional.Logging.DatabaseLog i2) { return(i2.Created.CompareTo(i1.Created)); });


            // Transfer model.
            // TODO: USE BaseListModeler to xfer queryOptions to QueryOptionsViewModel.
            databasesListViewModel = new DatabasesListViewModel(this.UserSession);
            QueryResponseViewModel queryResponseViewModel = null;

            status = TransferQueryResponse(queryResponse, out queryResponseViewModel);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            databasesListViewModel.QueryResponse = queryResponseViewModel;
            foreach (Quest.Functional.Logging.DatabaseLog databaseLog in databaseLogList)
            {
                DatabaseLineItemViewModel databaseLineItemViewModel = new DatabaseLineItemViewModel();
                BufferMgr.TransferBuffer(databaseLog, databaseLineItemViewModel);
                databasesListViewModel.Items.Add(databaseLineItemViewModel);
            }
            return(new questStatus(Severity.Success));
        }
Example #14
0
        public questStatus RefreshSchema(DatabasesListViewModel databasesListViewModel)
        {
            // Initialize
            questStatus status = null;


            // Refresh schema(s)
            foreach (DatabaseLineItemViewModel databaseLineItemViewModel in databasesListViewModel.Items)
            {
                DatabaseId  databaseId  = new DatabaseId(databaseLineItemViewModel.Id);
                DatabaseMgr databaseMgr = new DatabaseMgr(this.UserSession);
                status = databaseMgr.RefreshSchema(databaseId);
                if (!questStatusDef.IsSuccess(status))
                {
                    // TODO: DATABASE-SPECIFIC ERROR MESSAGE TO KNOW WHICH DATABASE FAILED.
                    return(status);
                }
            }
            return(new questStatus(Severity.Success));
        }
Example #15
0
        /*==================================================================================================================================
        * Private Methods
        *=================================================================================================================================*/

        #region Export Routines
        //----------------------------------------------------------------------------------------------------------------------------------
        // Export Routines
        //----------------------------------------------------------------------------------------------------------------------------------
        private void writeTsv(DatabasesListViewModel databasesListViewModel, TextWriter output)
        {
            PropertyInfo[] propertyInfos = typeof(DatabaseLineItemViewModel).GetProperties();
            foreach (PropertyInfo pi in propertyInfos)
            {
                output.Write(pi.Name); // header
                output.Write("\t");
            }
            output.WriteLine();
            foreach (DatabaseLineItemViewModel lineItem in databasesListViewModel.Items)
            {
                foreach (PropertyInfo pi in propertyInfos)
                {
                    object _value = pi.GetValue(lineItem);
                    string value  = _value == null ? "(null)" : _value.ToString().Replace("\t", " ").Replace("\r", " ").Replace("\n", " ");
                    output.Write(value);
                    output.Write("\t");
                }
                output.WriteLine();
            }
        }