private void LogSQL(string sql) { //var filePath = @"C:\Temp\DB Tool\"; //var fileName = DateTime.Now.Year + DateTime.Now.Month + DateTime.Now.Day + ".txt"; //if (!Directory.Exists(filePath)) //{ // Directory.CreateDirectory(filePath); //} //StreamWriter sw = null; //if (!File.Exists(filePath + fileName)) //{ // sw = File.CreateText(filePath + fileName); //} //else //{ // sw = File.AppendText(filePath + fileName); //} //sw.WriteLine("--------Executed on: " + DateTime.Now.ToString("MM-dd-yyyy") + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second + "--------"); //sw.WriteLine(sql); //sw.WriteLine(""); //sw.Close(); var data = new QueryLog.Data(); data.ConnectionId = ConnectionId; data.ViewId = 0; data.QueryText = sql; data.CreatedDate = DateTime.Now; QueryLog.Create(data, ApplicationConnectionString); }
public void GetWeatherDataByCity() { Console.WriteLine(""); Console.WriteLine("Please type City name.."); Console.Write("City: "); var city = Console.ReadLine(); while (string.IsNullOrWhiteSpace(city)) { Console.WriteLine("City name empty!"); Console.WriteLine("Please type City name.."); Console.Write("City: "); city = Console.ReadLine(); } using (var db = new WapContext()) { db.Database.EnsureCreated(); var ql = new QueryLog { CityName = city, QueryDate = DateTime.Now }; db.QueryLogs.Add(ql); db.SaveChanges(); } ShowWeatherData(city); }
public ActionResult AddWhiteList(QueryLog Log) { Data.addWhitelistViaAutre(Log.Domain); ViewBag.QueryLogs = Data.querylogs.ToList(); return(View("Index")); }
public IActionResult SearchByHSMVNumber() { QueryLog details = CreateLog(Request.Path); var hsmv_report_number = Request.Headers["hsmv"]; details.parameters.Add(hsmv_report_number); var result = _repo.FindByHsmvReportNumber(int.Parse(hsmv_report_number)); if (result.GetType() != typeof(CrashEvent)) { details.succeeded = true; details.return_count = 1; } // _log.Query(details); return(new OkObjectResult(result)); }
protected void ReloadData() { if (!SqlHelperClass.DebugQueries) { this.lblInfo.Text = GetString("DebugSQL.NotConfigured"); } else { this.plcLogs.Controls.Clear(); for (int i = SqlHelperClass.LastLogs.Count - 1; i >= 0; i--) { try { // Get the log RequestLog log = (RequestLog)SqlHelperClass.LastLogs[i]; if (log != null) { // Load the table DataTable dt = log.LogTable; if (!DataHelper.DataSourceIsEmpty(dt)) { // Load the control QueryLog logCtrl = (QueryLog)LoadControl("~/CMSAdminControls/Debug/QueryLog.ascx"); logCtrl.ID = "logSQL" + i; logCtrl.EnableViewState = false; logCtrl.Log = log; logCtrl.LogStyle = ""; logCtrl.ShowCompleteContext = this.chkCompleteContext.Checked; // Add to the output this.plcLogs.Controls.Add(new LiteralControl("<div>‎<strong> " + GetRequestLink(log.RequestURL, log.RequestGUID) + "</strong> (" + log.RequestTime.ToString("hh:mm:ss") + ")‎<br /><br />")); this.plcLogs.Controls.Add(logCtrl); this.plcLogs.Controls.Add(new LiteralControl("</div><br /><br />")); logs.Add(logCtrl); } } } catch { } } } }
public IActionResult SearchByVIN() { QueryLog details = CreateLog(Request.Path); var vin = Request.Headers["vin"]; details.parameters.Add(vin); if (ModelState.IsValid) { var result = _repo.FindByVIN(vin); if (result.Count() != 0) { details.return_count = result.Count(); details.succeeded = true; } // _log.Query(details); return(new OkObjectResult(result)); } // _log.Query(details); return(new BadRequestObjectResult(ModelState)); }
private void frmLog_Load(object sender, EventArgs e) { try { Setup(); txtLog.ConfigurationManager.Language = "mssql"; txtLog.ConfigurationManager.Configure(); //txtLog.Text = string.Empty; //var filePath = @"C:\Temp\DB Tool\"; //var fileName = DateTime.Now.Year + DateTime.Now.Month + DateTime.Now.Day + ".txt"; //if (!Directory.Exists(filePath)) //{ // Directory.CreateDirectory(filePath); //} //if (File.Exists(filePath + fileName)) //{ // txtLog.Text = File.ReadAllText(filePath + fileName); //} var data = new QueryLog.Data(); data.ConnectionId = ConnectionId; data.FromDate = DateTime.Today; var logList = QueryLog.Search(data); if (logList != null && logList.Rows.Count > 0) { foreach (DataRow dr in logList.Rows) { var dt = Convert.ToDateTime(dr["CreatedDate"]); txtLog.AppendText("--------Executed on: " + dt.ToString("MM-dd-yyyy") + " " + dt.Hour + ":" + dt.Minute + ":" + dt.Second + "-------\n"); txtLog.AppendText(Convert.ToString(dr["QueryText"]) + "\n"); txtLog.AppendText("\n"); } } } catch (Exception) { throw; } }
private void LoadSQLLog() { txtLog.ResetText(); var data = new QueryLog.Data(); data.ConnectionId = ConnectionId; data.FromDate = DateTime.Today; var logList = QueryLog.Search(data); if (logList != null && logList.Rows.Count > 0) { foreach (DataRow dr in logList.Rows) { var dt = Convert.ToDateTime(dr["CreatedDate"]); txtLog.AppendText("--------Executed on: " + dt.ToString("MM-dd-yyyy") + " " + dt.Hour + ":" + dt.Minute + ":" + dt.Second + "-------\n"); txtLog.AppendText(Convert.ToString(dr["QueryText"]) + "\n"); txtLog.AppendText("\n"); } } }
public IActionResult SearchByDateAndName() { QueryLog details = CreateLog(Request.Path); var participant = Request.Headers["participant"]; details.parameters.Add(participant); var date = Request.Headers["crash"]; details.parameters.Add(date); var result = _repo.FindByDateAndName(participant, date); if (result.Count() != 0) { details.succeeded = true; details.return_count = result.Count(); } // _log.Query(details); return(new OkObjectResult(result)); }
public BindingDetail Find() { BindingDetail bindingDetail = new BindingDetail(); QueryLog.Write(QueryType.Find, EntityType.BindingTemplate); // // Validate find parameters. // Utility.IsValidKey(EntityType.BusinessService, ServiceKey); // // Process each find constraint. // FindBuilder find = new FindBuilder(EntityType.BindingTemplate, FindQualifiers, ServiceKey); // // If no search arguments are specified, return an empty result // set. // if (Utility.CollectionEmpty(TModelBag)) { return(bindingDetail); } try { int rows = 1; // // Find entities with matching parent key. // if (!Utility.StringEmpty(ServiceKey)) { rows = find.FindByParentKey(ServiceKey); } // // Find entities with matching TModel bag items. // if (!Utility.CollectionEmpty(TModelBag)) { rows = find.FindByTModelBag(TModelBag); } // // Process the find result set. // if (0 == rows) { // // Cleanup any temporary tables. // find.Abort(); } else if (0 == MaxRows) { bindingDetail.Truncated = Truncated.True; return(bindingDetail); } else { // // Read in the find results. // SqlDataReaderAccessor reader; SqlStoredProcedureAccessor sp; sp = find.RetrieveResults(MaxRows); reader = sp.ExecuteReader(); try { while (reader.Read()) { bindingDetail.BindingTemplates.Add(reader.GetGuidString("entityKey")); } } finally { reader.Close(); } if (sp.Parameters.GetBool("@truncated")) { bindingDetail.Truncated = Truncated.True; } else { bindingDetail.Truncated = Truncated.False; } foreach (BindingTemplate bindingTemplate in bindingDetail.BindingTemplates) { bindingTemplate.Get(); } } } catch (Exception) { find.Abort(); throw; } return(bindingDetail); }
/// **************************************************************** /// public Get /// ---------------------------------------------------------------- /// <summary> /// Retrieves the bindingTemplate details from the database. /// </summary> /// ---------------------------------------------------------------- /// <returns> /// </returns> /// ---------------------------------------------------------------- /// <remarks> /// The bindingKey must be set prior to execution of this call. /// </remarks> /// **************************************************************** /// public override void Get() { Debug.Enter(); SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_bindingTemplate_get_batch"); sp.Parameters.Add("@bindingKey", SqlDbType.UniqueIdentifier); sp.Parameters.Add("@serviceKey", SqlDbType.UniqueIdentifier, ParameterDirection.Output); sp.Parameters.Add("@URLTypeID", SqlDbType.TinyInt, ParameterDirection.Output); sp.Parameters.Add("@accessPoint", SqlDbType.NVarChar, UDDI.Constants.Lengths.AccessPoint, ParameterDirection.Output); sp.Parameters.Add("@hostingRedirector", SqlDbType.UniqueIdentifier, ParameterDirection.Output); sp.Parameters.SetGuidFromString("@bindingKey", BindingKey); SqlDataReaderAccessor reader = null; ArrayList instanceIds = new ArrayList(); try { // // net_bindingTemplate_get will return the objects contained in a business in the following order: // // - descriptions // - tmodel instance infos reader = sp.ExecuteReader(); // // Read the descriptions // Descriptions.Read(reader); // // Read the tmodel instance infos // if (true == reader.NextResult()) { instanceIds = TModelInstanceInfos.Read(reader); } } finally { if (null != reader) { reader.Close(); } } // // These calls will make separate sproc calls, so we have to close our reader first. // TModelInstanceInfos.Populate(instanceIds); // // Get output parameters // ServiceKey = sp.Parameters.GetGuidString("@serviceKey"); AccessPoint.URLType = (URLType)sp.Parameters.GetInt("@URLTypeID"); AccessPoint.Value = sp.Parameters.GetString("@accessPoint"); HostingRedirector.BindingKey = sp.Parameters.GetGuidString("@hostingRedirector"); #if never SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_bindingTemplate_get"); sp.Parameters.Add("@bindingKey", SqlDbType.UniqueIdentifier); sp.Parameters.Add("@serviceKey", SqlDbType.UniqueIdentifier, ParameterDirection.Output); sp.Parameters.Add("@URLTypeID", SqlDbType.TinyInt, ParameterDirection.Output); sp.Parameters.Add("@accessPoint", SqlDbType.NVarChar, UDDI.Constants.Lengths.AccessPoint, ParameterDirection.Output); sp.Parameters.Add("@hostingRedirector", SqlDbType.UniqueIdentifier, ParameterDirection.Output); sp.Parameters.SetGuidFromString("@bindingKey", BindingKey); sp.ExecuteNonQuery(); ServiceKey = sp.Parameters.GetGuidString("@serviceKey"); AccessPoint.URLType = (URLType)sp.Parameters.GetInt("@URLTypeID"); AccessPoint.Value = sp.Parameters.GetString("@accessPoint"); HostingRedirector.BindingKey = sp.Parameters.GetGuidString("@hostingRedirector"); // // Get all contained objects. // Descriptions.Get(BindingKey, EntityType.BindingTemplate); TModelInstanceInfos.Get(BindingKey); #endif QueryLog.Write(QueryType.Get, EntityType.BindingTemplate); }
public string e(Querye querye) { Dictionary <string, object> metaData = null; QueryResult qr = null; Stopwatch stopWatch = null; bool includeServerMetrics = false; bool returnColumnNames = false; string queryName = querye.d; var inCourseRequest = InCourseRequest.New(); OrdenesApplication ordenesApplication = OrdenesApplication.Instance; inCourseRequest.SecurityTokenId = ordenesApplication.GetSecurityTokenIdFromHeader(); inCourseRequest.Agencia = ordenesApplication.GetSecurityAgenciaFromHeader(); Query query = null; try { SecurityHelper.ensureAuthenticated(inCourseRequest); query = JsonConvert.DeserializeObject <Query>(querye.d, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Objects, TypeNameAssemblyFormatHandling = TypeNameAssemblyFormatHandling.Simple }); var type = (QueryType)Enum.Parse(typeof(QueryType), query.Type); //includeServerMetrics = null != opts && opts.ContainsKey("includeServerMetrics"); //returnColumnNames = null != opts && opts.ContainsKey("returnColumnNames"); includeServerMetrics = null != query.Options && query.Options.Exists(x => x.Key.Equals("includeServerMetrics", StringComparison.OrdinalIgnoreCase)); returnColumnNames = null != query.Options && query.Options.Exists(x => x.Key.Equals("returnColumnNames", StringComparison.OrdinalIgnoreCase)); if (includeServerMetrics) { stopWatch = Stopwatch.StartNew(); metaData = new Dictionary <string, object>(1); } SecurityHelper.ensureAuthorized(query, inCourseRequest); queryName = query.Name; //query.ensureAuthorized(inCourseRequest); //var queryName = query.getDecriptedQueryName(); //TODO Encender QueryLog.Start para loguear... hay que adaptarlo a Ordenes QueryLog.Start(query, inCourseRequest); var requireIdentity = query.Options.Find(x => x.Key.Equals("requireIdentityFilter", StringComparison.OrdinalIgnoreCase)); // Es comun que varias consultas necesiten el usuario que las activa.... if (requireIdentity != null && Convert.ToBoolean(requireIdentity.Value)) { //query.Filters.Add("IdUsuario", session.Identity_rid); query.Filters.Add(new Parameter() { Key = "IdUsuario", Value = MAEUserSession.Instancia.IdUsuario }); } if (query.Options.Exists(x => x.Key == "extendToKnownType")) { ExtendQueryFilters(query); } if (queryName.Contains("_CUSTOM_")) { qr = new QueryResult(); var tName = queryName.Split(new string[] { "_CUSTOM_" }, StringSplitOptions.None)[1] + "CustomQueryById"; object result = reflect(query, tName); qr.Data = new object[] { result }; qr.Status = "EX0000"; qr.MetaData = metaData; } else { switch (type) { case QueryType.Grid: var r = new QueryPagingResult(); int totalRows; string[] columnNames; object[] r_grid = null; var draw = 0; //query.Filters.Remove("maxrecord"); //TODO: porque remueves este parametro? if (query.Options.Exists(x => x.Key.Equals("gridAdapter", StringComparison.OrdinalIgnoreCase))) { var result = (CustomQueryReturn)reflect(query, queryName); r_grid = result.Data; totalRows = result.TotalRows; } else { r_grid = SqlServerHelper.RunGrid("orden_owner." + queryName, query.Filters, out columnNames, out totalRows); if (returnColumnNames) { r.ColumnNames = columnNames; } } var pageSize = query.Filters.Find(i => i.Key == "pageSize"); draw = (pageSize != null) ? Convert.ToInt32(pageSize.Value) : totalRows; r.Data = r_grid; r.Status = "EX0000"; r.MetaData = metaData; r.draw = (int)draw; r.recordsTotal = totalRows; r.recordsFiltered = totalRows; //r_grid.Length; qr = r; break; case QueryType.Combos: qr = new QueryResult(); DatabaseQueryResult r_combos = null; if (query.Options.Exists(x => x.Key == "filtersAdapter")) { r_combos = (DatabaseQueryResult)reflect(query, queryName); } else { r_combos = SqlServerHelper.RunCombos("orden_owner." + queryName, query.Filters); } qr.Data = r_combos.ResultSets.ToArray(); qr.Status = "EX0000"; qr.MetaData = metaData; break; case QueryType.Data: qr = new QueryResult(); qr.Data = new object[1]; // TODO: FIXME: arreglar para tener mas de un data set qr.Data[0] = SqlServerHelper.RunDictionary("orden_owner." + queryName, query.Filters); qr.Status = "EX0000"; qr.MetaData = metaData; break; case QueryType.FullRecord: if (query.Options.Exists(x => x.Key.Equals("gridAdapter", StringComparison.OrdinalIgnoreCase))) { var rqr = new QueryPagingResult(); var result = (CustomQueryReturn)reflect(query, queryName); r_grid = result.Data; totalRows = result.TotalRows; draw = totalRows; rqr.Data = r_grid; rqr.Status = "EX0000"; rqr.MetaData = metaData; rqr.draw = (int)draw; rqr.recordsTotal = totalRows; rqr.recordsFiltered = totalRows; //r_grid.Length; qr = rqr; } else { qr = new QueryResult(); var r_fullrecord = SqlServerHelper.RunFullRecord("orden_owner." + queryName, query.Filters); qr.Data = r_fullrecord.ResultSets.ToArray(); qr.Status = "EX0000"; qr.MetaData = metaData; } break; case QueryType.FullByEntity: qr = new QueryResult(); //TODO ADAPTAR PARA USAR EF... //var r_fullrecord = ReadDatabase.Instance.RunFullRecord("orden_owner." + queryName, query.Filters); //qr.Data = r_fullrecord.ResultSets.ToArray(); qr.Status = "EX0000"; qr.MetaData = metaData; break; } } //TODO Encender QueryLog.FinishOK para loguear... adapatar a Ordenes QueryLog.FinishOK(query, qr, inCourseRequest); } catch (SessionException sex) { qr = new QueryResult(); qr.Data = new object[2] { inCourseRequest.Id, "Sessión Expirada" }; qr.Status = "SE6666"; qr.MetaData = metaData; //TODO: levantar log despues... QueryLog.FinishWithError(queryName, qr, sex, inCourseRequest); } catch (FunctionalException fe) { qr = new QueryResult(); qr.Data = new object[2] { inCourseRequest.Id, fe.Message }; qr.Status = string.Format("FE{0}", fe.Code.ToString("0000")); qr.MetaData = metaData; //TODO: levantar log despues... QueryLog.FinishWithError(queryName, qr, fe, inCourseRequest); } catch (Exception ex) { qr = new QueryResult(); qr.Data = new object[2] { inCourseRequest.Id, ex.Message }; qr.Status = "TE9999"; qr.MetaData = metaData; //TODO: levantar log despues... QueryLog.FinishWithError(queryName, qr, ex, inCourseRequest); } finally { if (includeServerMetrics) { qr.MetaData.Add("serverMetrics", stopWatch.ElapsedMilliseconds); stopWatch.Reset(); } } qr.RequestId = inCourseRequest.Id; WebOperationContext.Current.OutgoingResponse.ContentType = "application/json; charset=utf-8"; return(JsonConvert.SerializeObject(qr)); }
public void CheckCommand(string command) { //Add new commands here as if statement if (command.ToLower().Equals("exit")) { Environment.Exit(0); } if (command.ToLower().Equals("clear database") || command.ToLower().Equals("cd")) { using (var db = new WapContext()) { var entries = db.QueryLogs.ToList(); Console.WriteLine(""); Console.WriteLine($"You have {entries.Count} entries in database!"); Console.WriteLine("Do you want to delete them?"); Console.WriteLine("y/n"); var decision = Console.ReadLine(); switch (decision) { case "n": Console.WriteLine("Nothing changed!"); break; case "y": foreach (var entry in entries) { db.QueryLogs.Remove(entry); } db.SaveChanges(); Console.WriteLine($"Deleted {entries.Count} entries. Database is clean!"); break; default: Console.WriteLine("Nothing changed!"); break; } } } if (command.ToLower().Equals("--help")) { Console.WriteLine(""); Console.WriteLine("== List of Commands =="); foreach (string com in _commands) { Console.WriteLine($"{com}"); } } if (command.ToLower().Equals("weather city") || command.ToLower().Equals("wc")) { var weatherMethods = new WeatherMethods(); string city = ""; decimal cityQueriesAll; decimal cityQueriesSingleMax = 0; using (var db = new WapContext()) { cityQueriesAll = db.QueryLogs.Count(); var queryMax = db.QueryLogs.GroupBy(x => x.CityName); foreach (var c in queryMax) { var count = c.Count(); if (cityQueriesSingleMax < count) { cityQueriesSingleMax = count; var que = c.Select(x => x.CityName); city = que.First(); } } } if (cityQueriesAll == 0) { cityQueriesAll = 1; } if (cityQueriesSingleMax == 0) { cityQueriesSingleMax = 1; } var qPercent = cityQueriesSingleMax / cityQueriesAll; qPercent *= 100; if (qPercent > 50 && !string.IsNullOrWhiteSpace(city) && cityQueriesAll > 3) { Console.WriteLine(""); Console.WriteLine($"Would you like to check weather for {city}?"); Console.WriteLine("y/n ?"); var decision = Console.ReadLine(); switch (decision) { case "y": using (var db = new WapContext()) { db.Database.EnsureCreated(); var ql = new QueryLog { CityName = city, QueryDate = DateTime.Now }; db.QueryLogs.Add(ql); db.SaveChanges(); } weatherMethods.ShowWeatherData(city); break; case "n": weatherMethods.GetWeatherDataByCity(); break; default: weatherMethods.GetWeatherDataByCity(); break; } } else { weatherMethods.GetWeatherDataByCity(); } } if (command.ToLower().Equals("show queries") || command.ToLower().Equals("sq")) { List <QueryLog> queryList; using (var db = new WapContext()) { db.Database.EnsureCreated(); queryList = db.QueryLogs.Take(100).ToList(); } if (!queryList.Any()) { Console.WriteLine("There is no Query Logs in database!"); } else { Console.WriteLine(); Console.WriteLine("Listing queries"); Console.WriteLine("==============="); foreach (var log in queryList) { Console.WriteLine($"Log id: {log.QueryLogId}, " + $"City: {log.CityName}, Date: {log.QueryDate}"); } Console.WriteLine("==============="); } } if (command.ToLower().Equals("show queries analysis") || command.ToLower().Equals("sqa")) { string city = ""; decimal cityQueriesAll; decimal cityQueriesSingleMax = 0; using (var db = new WapContext()) { cityQueriesAll = db.QueryLogs.Count(); var queryMax = db.QueryLogs.GroupBy(x => x.CityName); if (cityQueriesAll > 0) { foreach (var c in queryMax) { var count = c.Count(); if (cityQueriesSingleMax < count) { cityQueriesSingleMax = count; var que = c.Select(x => x.CityName); city = que.First(); } } } } if (cityQueriesAll > 0) { var qPercent = cityQueriesSingleMax / cityQueriesAll; qPercent *= 100; qPercent = Math.Round(qPercent, 3); var crossEde = qPercent > 50; Console.WriteLine(""); Console.WriteLine(""); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("========== Prediction Algorythm Analysis Data =========="); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine(""); Console.WriteLine($"All entries: {cityQueriesAll}"); Console.WriteLine($"Most common city: {city}"); Console.WriteLine($"{city} entries: {cityQueriesSingleMax}"); Console.WriteLine($"{city} percentage: {qPercent}%"); Console.WriteLine($"Algorithm prediction city edge value = 50%"); Console.WriteLine($"Algorithm prediction city cross edge value? = {crossEde}"); Console.WriteLine(""); Console.WriteLine("========================================================"); } else { Console.WriteLine("There is no Query Logs in database!"); } } }
/// **************************************************************** /// public Get /// ---------------------------------------------------------------- /// <summary> /// </summary> /// **************************************************************** /// public override void Get() { Debug.Enter(); SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_businessEntity_get_batch"); sp.Parameters.Add("@businessKey", SqlDbType.UniqueIdentifier); sp.Parameters.Add("@operatorName", SqlDbType.NVarChar, UDDI.Constants.Lengths.OperatorName, ParameterDirection.Output); sp.Parameters.Add("@authorizedName", SqlDbType.NVarChar, UDDI.Constants.Lengths.AuthorizedName, ParameterDirection.Output); sp.Parameters.SetGuidFromString("@businessKey", BusinessKey); SqlDataReaderAccessor reader = null; ArrayList contactIds = new ArrayList(); try { // // net_businessEntity_get will return the objects contained in a business in the following order: // // - descriptions // - names // - discoveryURLs // - contacts // - identifier bags // - category bags // - services // reader = sp.ExecuteReader(); // // Read the descriptions // Descriptions.Read(reader); // // Read the names // if (true == reader.NextResult()) { Names.Read(reader); } // // // Read the discoveryURLs // if (true == reader.NextResult()) { DiscoveryUrls.Read(reader); } // // Read the contacts // if (true == reader.NextResult()) { contactIds = Contacts.Read(reader); } // // Read the identifier bags // if (true == reader.NextResult()) { IdentifierBag.Read(reader); } // // Read the category bags // if (true == reader.NextResult()) { CategoryBag.Read(reader); } // // Read the services // if (true == reader.NextResult()) { BusinessServices.Read(reader); } } finally { if (null != reader) { reader.Close(); } } // // These calls will make separate sproc calls, so we have to close our reader first. // BusinessServices.Populate(); Contacts.Populate(contactIds); // // Get our output parameters. // Operator = sp.Parameters.GetString("@operatorName"); AuthorizedName = sp.Parameters.GetString("@authorizedName"); // // If this entity was published to this node than add the // default discoveryURL. // if (Operator == Config.GetString("Operator")) { // // Only add the default discovery Url to this business // if it was published at this site. // DiscoveryUrls.AddDefaultDiscoveryUrl(BusinessKey); } #if never SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_businessEntity_get"); sp.Parameters.Add("@businessKey", SqlDbType.UniqueIdentifier); sp.Parameters.Add("@operatorName", SqlDbType.NVarChar, UDDI.Constants.Lengths.OperatorName, ParameterDirection.Output); sp.Parameters.Add("@authorizedName", SqlDbType.NVarChar, UDDI.Constants.Lengths.AuthorizedName, ParameterDirection.Output); sp.Parameters.SetGuidFromString("@businessKey", BusinessKey); sp.ExecuteNonQuery(); Operator = sp.Parameters.GetString("@operatorName"); AuthorizedName = sp.Parameters.GetString("@authorizedName"); // // Retrieve contained objects. // Descriptions.Get(BusinessKey, EntityType.BusinessEntity); Names.Get(BusinessKey, EntityType.BusinessEntity); DiscoveryUrls.Get(BusinessKey); // // If this entity was published to this node than add the // default discoveryURL. // if (Operator == Config.GetString("Operator")) { // // Only add the default discovery Url to this business // if it was published at this site. // DiscoveryUrls.AddDefaultDiscoveryUrl(BusinessKey); } Contacts.Get(BusinessKey); BusinessServices.Get(BusinessKey); IdentifierBag.Get(BusinessKey, EntityType.BusinessEntity, KeyedReferenceType.IdentifierBag); CategoryBag.Get(BusinessKey, EntityType.BusinessEntity, KeyedReferenceType.CategoryBag); #endif QueryLog.Write(QueryType.Get, EntityType.BusinessEntity); Debug.Leave(); }
public BusinessList Find() { BusinessList businessList = new BusinessList(); QueryLog.Write(QueryType.Find, EntityType.BusinessEntity); // // Process each find constraint. // FindBuilder find = new FindBuilder(EntityType.BusinessEntity, FindQualifiers); // // If no search arguments are specified, return an empty result // set. // if (Utility.CollectionEmpty(Names) && Utility.CollectionEmpty(DiscoveryUrls) && Utility.CollectionEmpty(IdentifierBag) && Utility.CollectionEmpty(CategoryBag) && Utility.CollectionEmpty(TModelBag)) { return(businessList); } // // Validate find parameters. // if (!Utility.CollectionEmpty(Names)) { Names.ValidateForFind(); } else { Debug.Verify(!find.CaseSensitiveMatch && !find.ExactNameMatch, "UDDI_ERROR_UNSUPPORTED_FINDBE_NAMEFQNONAMES", ErrorType.E_unsupported); } // // TODO: Override may be better for these calls to KeyedReference.Validate because no parent key is used // if (!Utility.CollectionEmpty(IdentifierBag)) { IdentifierBag.Validate("", KeyedReferenceType.IdentifierBag); } if (!Utility.CollectionEmpty(CategoryBag)) { CategoryBag.Validate("", KeyedReferenceType.CategoryBag); } try { int rows = 1; // // Find entities with matching identifier bag items. // if (!Utility.CollectionEmpty(IdentifierBag)) { rows = find.FindByKeyedReferences(KeyedReferenceType.IdentifierBag, IdentifierBag); } // // Find entities with matching category bag items. // if (rows > 0 && !Utility.CollectionEmpty(CategoryBag)) { rows = find.FindByKeyedReferences(KeyedReferenceType.CategoryBag, CategoryBag); } // // Find entities with matching TModel bag items. // if (rows > 0 && !Utility.CollectionEmpty(TModelBag)) { rows = find.FindByTModelBag(TModelBag); } // // Find entities with matching discovery URLs // if (rows > 0 && !Utility.CollectionEmpty(DiscoveryUrls)) { rows = find.FindByDiscoveryUrls(DiscoveryUrls); } // // Find entities with matching names // if (rows > 0 && !Utility.CollectionEmpty(Names)) { rows = find.FindByNames(Names); } // // Process the find result set. // if (0 == rows) { // // Cleanup any temporary tables. // find.Abort(); } // TODO: review else if (0 == MaxRows) { businessList.Truncated = Truncated.True; return(businessList); } else { // // Read in the find results. // SqlDataReaderAccessor reader; SqlStoredProcedureAccessor sp; sp = find.RetrieveResults(MaxRows); // // TODO: return reader, not the whole SPA // reader = sp.ExecuteReader(); try { if (find.ServiceSubset) { // // For a service subset search, we limit the result set // to those services that matched the category bag // search criteria. // BusinessInfo businessInfo = null; string prevKey = null; while (reader.Read()) { string businessKey = reader.GetString("entityKey"); if (prevKey != businessKey) { businessInfo = new BusinessInfo(businessKey); businessList.BusinessInfos.Add(businessInfo); } businessInfo.ServiceInfos.Add( reader.GetString("subEntityKey"), businessKey); prevKey = businessKey; } } else { // // For non-service subset searches, we will simply // return a list of businesses with all services. // while (reader.Read()) { businessList.BusinessInfos.Add(reader.GetString("entityKey")); } } } finally { reader.Close(); } if (sp.Parameters.GetBool("@truncated")) { businessList.Truncated = Truncated.True; } else { businessList.Truncated = Truncated.False; } // // Get the actual business info and service info data. For // a service subset, we'll grab just those services that we // populated. For all other searches, we'll get all service // infos. // if (find.ServiceSubset) { foreach (BusinessInfo businessInfo in businessList.BusinessInfos) { businessInfo.Get(false); foreach (ServiceInfo serviceInfo in businessInfo.ServiceInfos) { serviceInfo.Get(); } } } else { foreach (BusinessInfo businessInfo in businessList.BusinessInfos) { businessInfo.Get(true); } } } } catch (Exception) { find.Abort(); throw; } return(businessList); }
private static void SepareDataLog(string entree) { StringReader sr = new StringReader(entree); while (sr.Peek() >= 0) { string log = sr.ReadLine().ToString(); string log2 = log.Substring(log.LastIndexOf(']') + 1); //Si le log contiens l'adresse local alors on récupère les données if (log.Contains("127.0.0.1")) { DateTime dateTime = DateTime.Parse(log.Split(' ')[0] + " " + log.Split(' ')[1]); string domain = log2.Split(' ')[3]; bool blackTrue = false; string ip = ""; try { ip = Dns.GetHostAddresses(domain).FirstOrDefault().ToString(); } catch (Exception e) { ip = "-"; } if (blacklists.Any(s => domain.Contains(s.Domain)) || blacklists.Find(x => x.Domain == ".") != null || TLD.Contains(domain)) { blackTrue = true; for (int i = 0; i < whitelists.Count && blackTrue; i++) { try { string ipDomain = Dns.GetHostAddresses(domain).FirstOrDefault().ToString(); string ipDomainLists = Dns.GetHostAddresses(whitelists[i].Domain).FirstOrDefault().ToString(); if (domain.Contains(whitelists[i].Domain) && ipDomain.Equals(ipDomainLists)) { blackTrue = false; } } catch (Exception e) { } } } QueryLog queryLog = new QueryLog { DateTime = dateTime, Domain = domain, IP = ip, Blacklist = blackTrue }; if (!querylogs.Contains(queryLog)) { //Ajout a la liste querylogs.Add(queryLog); } // Ajoute a la liste Toplist ou le hits addTopList(domain); } } }