public override void RefreshData() { this.Text = "Search Engine Resolver - " + MainFormCurrentNodeText("") + " - " + this.AdminProxy.Connection.ServerName + (Toolkit.IsProcessElevated() ? " - Administrator " : ""); IndexName = ("" + MainFormCurrentNode().Parent.Tag).ToString(); ResolverName = ("" + MainFormCurrentNode().Tag).ToString(); string providerName = ""; // set defaults... txtName.Text = ""; ddlMethod.SelectedIndex = 0; ddlCacheMode.SelectedIndex = 0; txtPrimaryKeyField.Text = ""; txtNodeCacheSize.Text = "100"; txtKeywordCacheSize.Text = "100"; txtFanoutSize.Text = "100"; txtEncoding.Text = "UTF8"; txtAverageKeywordSize.Text = "11"; chkEnabled.Checked = true; chkAllowRealtimeUpdates.Checked = true; chkEnabled.Checked = true; //txtMySQLSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtOracleSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtPostgreSQLSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtSQLServerSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; this.Text = "Search Engine Resolver - (New Resolver) for Index " + IndexName + " - " + AdminProxy.Connection.DatabaseEngineServerName + (Toolkit.IsProcessElevated() ? " - Administrator " : ""); if (!String.IsNullOrEmpty(IndexName)) { // DataTables returned are: indexer, index, index_field, resolver, and status. var ds = AdminProxy.GetSearchEngineInfoEx(true, IndexName, ResolverName); _dtResolver = stripNotInResolver(ds.Tables["resolver"], IndexName, ResolverName); //initHooksForMdiParent(dtResolver, "resolver_name", "resolver_name"); if (_dtResolver.Rows.Count > 0) { var dr = _dtResolver.Rows[0]; this.Text = "Search Engine Resolver - " + ResolverName + " for Index " + IndexName + " - " + AdminProxy.Connection.DatabaseEngineServerName + (Toolkit.IsProcessElevated() ? " - Administrator " : ""); // load general tab txtName.Text = dr["resolver_name"].ToString(); txtForeignKeyField.Text = dr["foreign_key_field"].ToString(); txtPrimaryKeyField.Text = dr["primary_key_field"].ToString(); txtResolvedPrimaryKeyField.Text = dr["resolved_primary_key_field"].ToString(); ddlMethod.SelectedIndex = ddlMethod.FindStringExact(mapDropdownValue(dr["method"].ToString())); initDataViewDropDown(ddlSearchDataviews, false, "(None)", -1, "Search Engine", null); ddlSearchDataviews.SelectedIndex = ddlSearchDataviews.FindString(dr["dataview_name"].ToString()); chkEnabled.Checked = dr["enabled"].ToString().ToUpper() == "TRUE"; chkAllowRealtimeUpdates.Checked = dr["allow_realtime_updates"].ToString().ToUpper() == "TRUE"; // load advanced tab ddlCacheMode.SelectedIndex = ddlCacheMode.FindStringExact(mapDropdownValue(dr["cache_mode"].ToString())); txtNodeCacheSize.Text = dr["node_cache_size"].ToString(); txtKeywordCacheSize.Text = dr["keyword_cache_size"].ToString(); txtFanoutSize.Text = dr["fanout_size"].ToString(); txtEncoding.Text = dr["encoding"].ToString(); txtAverageKeywordSize.Text = dr["average_keyword_size"].ToString(); } } MarkClean(); syncGUI(); }
public override void RefreshData() { this.Text = "Search Engine Index - " + MainFormCurrentNodeText("") + " - " + this.AdminProxy.Connection.ServerName + (Toolkit.IsProcessElevated() ? " - Administrator " : ""); initDropDowns(); IndexName = ("" + MainFormCurrentNode().Tag).ToString(); // set defaults... txtIndexName.Text = ""; txtPrimaryKeyField.Text = ""; txtNodeCacheSize.Text = "100"; txtKeywordCacheSize.Text = "100"; txtFanoutSize.Text = "100"; txtEncoding.Text = "UTF8"; txtAverageKeywordSize.Text = "11"; txtMaxSortSize.Text = "16"; chkEnabled.Checked = true; chkIndexAllTextFields.Checked = true; chkStripHtml.Checked = true; //txtMySQLSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtOracleSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtPostgreSQLSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; //txtSQLServerSQL.Text = "select * from TABLE /*_ WHERE src.pk_id in (:idlist) _*/"; lvFields.Items.Clear(); lvResolvers.Items.Clear(); if (!String.IsNullOrEmpty(IndexName)) { // DataTables returned are: indexer, index, index_field, resolver, and status. _dsIndex = AdminProxy.GetSearchEngineInfoEx(true, IndexName, null); var dtIndexer = _dsIndex.Tables["indexer"]; var dtIndex = stripNotInIndex(_dsIndex.Tables["index"], IndexName); var dtIndexField = stripNotInIndex(_dsIndex.Tables["index_field"], IndexName); var dtResolver = stripNotInIndex(_dsIndex.Tables["resolver"], IndexName); var dtStatus = _dsIndex.Tables["status"]; initHooksForMdiParent(dtResolver, "resolver_name", "resolver_name"); if (dtIndex.Rows.Count > 0) { var drIndex = dtIndex.Rows[0]; // load general tab txtIndexName.Text = drIndex["index_name"].ToString(); txtPrimaryKeyField.Text = drIndex["primary_key_field"].ToString(); txtNodeCacheSize.Text = drIndex["node_cache_size"].ToString(); txtKeywordCacheSize.Text = drIndex["keyword_cache_size"].ToString(); txtFanoutSize.Text = drIndex["fanout_size"].ToString(); txtEncoding.Text = drIndex["encoding"].ToString(); txtAverageKeywordSize.Text = drIndex["average_keyword_size"].ToString(); txtMaxSortSize.Text = drIndex["max_sort_size_in_mb"].ToString(); chkEnabled.Checked = drIndex["enabled"].ToString().ToUpper() == "TRUE"; chkIndexAllTextFields.Checked = drIndex["auto_index_string_fields"].ToString().ToUpper() == "TRUE"; chkStripHtml.Checked = drIndex["strip_html"].ToString().ToUpper() == "TRUE"; //// load sql tab //ddlSqlSource.SelectedIndex = ddlSqlSource.FindString(drIndex["sql_source"].ToString()); initDataViewDropDown(ddlSearchDataviews, false, "(None)", -1, "Search Engine", null); ddlSearchDataviews.SelectedIndex = ddlSearchDataviews.FindString(drIndex["dataview_name"].ToString()); //txtMySQLSQL.Text = drIndex["mysql_sql_statement"].ToString(); //txtOracleSQL.Text = drIndex["oracle_sql_statement"].ToString(); //txtPostgreSQLSQL.Text = drIndex["postgresql_sql_statement"].ToString(); //txtSQLServerSQL.Text = drIndex["sqlserver_sql_statement"].ToString(); txtErrorOnRebuild.Text = drIndex["error_on_rebuild"].ToString(); var rebuildBeginDate = drIndex["last_rebuild_begin_date"]; var rebuildEndDate = drIndex["last_rebuild_end_date"]; if (rebuildBeginDate == DBNull.Value) { lblLastRebuildBeginDate.Text = "n/a"; lblLastRebuildEndDate.Text = "n/a"; txtErrorOnRebuild.Text = "n/a"; lblErrorsSinceLastRebuild.Text = "n/a"; } else { var beginDate = Toolkit.ToDateTime(rebuildBeginDate, DateTime.MinValue); lblLastRebuildBeginDate.Text = beginDate.ToLocalTime().ToString(); if (rebuildEndDate == DBNull.Value) { // began, not done yet. lblErrorsSinceLastRebuild.Text = "n/a"; txtErrorOnRebuild.Text = "n/a"; lblLastRebuildEndDate.Text = "(Rebuilding now)"; } else { lblErrorsSinceLastRebuild.Text = "n/a"; txtErrorOnRebuild.Text = "n/a"; lblLastRebuildEndDate.ForeColor = Color.Black; var endDate = Toolkit.ToDateTime(rebuildEndDate, DateTime.MinValue); if (endDate == DateTime.MinValue) { // began, not done yet lblLastRebuildEndDate.Text = "(Rebuilding now)"; } else { var errorText = drIndex["error_on_rebuild"].ToString(); if (!String.IsNullOrEmpty(errorText)) { // rebuild failed. txtErrorOnRebuild.Text = errorText; lblLastRebuildEndDate.Text = endDate.ToLocalTime().ToString() + " *** ERROR ***"; lblLastRebuildEndDate.ForeColor = Color.Red; } else { // rebuild worked and is done. txtErrorOnRebuild.Text = "(none)"; lblErrorsSinceLastRebuild.Text = Toolkit.ToInt32(drIndex["errors_since_last_rebuild"], 0).ToString(); lblLastRebuildEndDate.Text = endDate.ToLocalTime().ToString(); } } } } foreach (DataRow drIndexField in dtIndexField.Rows) { var lvi = new ListViewItem(drIndexField["field_name"].ToString()); lvi.Tag = lvi.Text; lvi.SubItems.Add(drIndexField["is_stored_in_index"].ToString().ToUpper() == "TRUE" ? "Y" : "N"); lvi.SubItems.Add(drIndexField["is_searchable"].ToString().ToUpper() == "TRUE" ? "Y" : "N"); lvi.SubItems.Add(drIndexField["calculation"].ToString()); lvi.SubItems.Add(drIndexField["format"].ToString()); lvi.SubItems.Add(drIndexField["is_boolean"].ToString().ToUpper() == "TRUE" ? "Y" : "N"); lvi.SubItems.Add(drIndexField["true_value"].ToString()); lvFields.Items.Add(lvi); } foreach (DataRow drRes in dtResolver.Rows) { var lvi = new ListViewItem(drRes["resolver_name"].ToString()); lvi.Tag = lvi.Text; lvi.SubItems.Add(drRes["enabled"].ToString().ToUpper() == "TRUE" ? "Y" : "N"); lvi.SubItems.Add(drRes["method"].ToString()); var valid = Toolkit.ToBoolean(drRes["is_valid"], false); if (valid) { lvi.SubItems.Add("Y"); } else { lvi.SubItems.Add("N - " + drRes["invalid_reason"]); lvi.ForeColor = Color.Red; } lvResolvers.Items.Add(lvi); } } } else { initHooksForMdiParent(null, null, null); } //switch (providerName) { // case "mysql": // tcSql.SelectedTab = tpMySQL; // break; // case "oracle": // tcSql.SelectedTab = tpOracle; // break; // case "postgresql": // tcSql.SelectedTab = tpPostgreSQL; // break; // case "sqlserver": // default: // tcSql.SelectedTab = tpSqlServer; // break; //} MarkClean(); }