private void ExtractItems(int[] itemSerials) { for (int i = 0; i < itemSerials.Length; ++i) { Item item = World.FindItem(itemSerials[i]); if (item != null) { DesignItem designItem = new DesignItem(); designItem.ItemID = (short)item.ItemID; designItem.X = item.X; designItem.Y = item.Y; designItem.Z = item.Z; designItem.Hue = (short)item.Hue; _items.Add(designItem); } } ExtractResponse resp = null; if (_items.Count > 0) { resp = new ExtractResponse(_items); } else { resp = null; } SendResponse(resp); }
public async Task <BlobContentInfo> AddObjectToBlob(ExtractResponse extractResponse) { _logger.LogInformation($"Adding object to blob storage", extractResponse); try { var containerClient = _blobServiceClient.GetBlobContainerClient(_blobStorageConfiguration.ContainerName); if (await containerClient.ExistsAsync()) { var blobClient = containerClient.GetBlobClient(extractResponse.FilePath); var uploadedBlob = await blobClient.UploadAsync(extractResponse.ExtractResponseStream, overwrite : true); return(uploadedBlob); } return(null); } catch (RequestFailedException requestFailedException) { _logger.LogError(requestFailedException, "The container does not exist"); throw; } catch (Exception exc) { _logger.LogError(exc, "An error occurred while trying to add a blob to the storage"); throw; } }
private async Task <ExtractResponse> GetSearchResults(string splunkQuery, Extract extractDetails) { var extractResponseMessage = new ExtractResponse { ExtractResponseMessage = new HttpResponseMessage() }; try { if (extractDetails.ExtractRequired) { splunkQuery = splunkQuery.Replace("{earliest}", extractDetails.QueryFromDate.ToString("MM/dd/yyyy:HH:mm:ss")); splunkQuery = splunkQuery.Replace("{latest}", extractDetails.QueryToDate.ToString("MM/dd/yyyy:HH:mm:ss")); _splunkClient = await _configurationService.GetSplunkClientConfiguration(); if (extractDetails != null) { var client = _httpClientFactory.CreateClient("SplunkApiClient"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _splunkClient.ApiToken); var uriBuilder = new UriBuilder { Scheme = "https", Host = _splunkClient.HostName, Port = _splunkClient.HostPort, Path = _splunkClient.BaseUrl, Query = string.Format(_splunkClient.QueryParameters, HttpUtility.UrlEncode(splunkQuery)) }; var httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, uriBuilder.Uri); _logger.LogInformation("Sending download request to Splunk Cloud API", httpRequestMessage); var response = await client.SendAsync(httpRequestMessage); var responseStream = await response.Content.ReadAsStreamAsync(); _logger.LogInformation("Reading content response stream from Splunk Cloud API", responseStream); extractResponseMessage.ExtractResponseStream = responseStream; extractResponseMessage.ExtractResponseMessage = response; extractResponseMessage.ExtractRequestDetails = extractDetails; } } else { extractResponseMessage.ExtractResponseMessage.ReasonPhrase = "No extract required"; extractResponseMessage.ExtractResponseMessage.StatusCode = System.Net.HttpStatusCode.NoContent; } } catch (OperationCanceledException operationCancelledException) { extractResponseMessage.ExtractResponseMessage.ReasonPhrase = operationCancelledException.Message; extractResponseMessage.ExtractResponseMessage.StatusCode = System.Net.HttpStatusCode.RequestTimeout; } catch (Exception ex) { extractResponseMessage.ExtractResponseMessage.ReasonPhrase = ex.Message; extractResponseMessage.ExtractResponseMessage.StatusCode = System.Net.HttpStatusCode.InternalServerError; } return(extractResponseMessage); }
public ExtractResponse Parse(XDocument response) { var responseHeader = headerResponseParser.Parse(response); var contentNode = response.XPathSelectElement("response/str"); var extractResponse = new ExtractResponse(responseHeader) { Content = contentNode != null ? contentNode.Value : null }; return extractResponse; }
public ExtractResponse Parse(XDocument response) { var responseHeader = headerResponseParser.Parse(response); var contentNode = response.XPathSelectElement("response/str"); var extractResponse = new ExtractResponse(responseHeader) { Content = contentNode != null ? contentNode.Value : null }; return(extractResponse); }
public ExtractResponse Parse(XDocument response) { var responseHeader = headerResponseParser.Parse(response); var contentNode = response.Element("response").Element("str"); var extractResponse = new ExtractResponse(responseHeader) { Content = contentNode != null ? contentNode.Value : null }; extractResponse.Metadata = ParseMetadata(response); return extractResponse; }
public ExtractResponse Parse(XDocument response) { var responseHeader = headerResponseParser.Parse(response); var contentNode = response.Element("response").Element("str"); var extractResponse = new ExtractResponse(responseHeader) { Content = contentNode != null ? contentNode.Value : null }; extractResponse.Metadata = ParseMetadata(response); return(extractResponse); }
public static string extract_file_content(Guid applicationId, DocFileInfo file) { ISolrOperations <SolrDoc> solr = get_solr_operator(); using (Stream content = new MemoryStream(file.toByteArray(applicationId))) { ExtractResponse response = solr.Extract(new ExtractParameters(content, PublicMethods.get_random_number().ToString(), PublicMethods.random_string(10)) { ExtractOnly = true, ExtractFormat = ExtractFormat.Text }); return(response.Content); } }
// Extract the user selected items private void StartExtraction(object state) { ExtractRequestArgs args = CreateExtractRequestArgs(); // submit the request to the server ExtractResponse resp = Connection.ExtractDesign(args); if (resp == null) { RaiseExtractedEvent(null); return; } else { _items = resp.Items != null ? resp.Items : new DesignItemCol(); } if (_frozen && _mode == ExtractMode.Area) { for (int i = 0; i < resp.Rects.Count; ++i) { ExtractFrozenItems(resp.Rects[i], resp.Map, _hues); } } if (resp == null || resp.Items.Count == 0) { RaiseExtractedEvent(null); } DesignData design = null; if (resp.Items.Count > 0) { design = new DesignData(_name, _category, _subsection); design.ImportItems(resp.Items, true, _foundation); } RaiseExtractedEvent(design); }
private void ExtractItems(int[] itemSerials) { for(int i=0; i < itemSerials.Length; ++i) { Item item = World.FindItem(itemSerials[i]); if(item != null && !(item is BaseMulti)) { DesignItem designItem = new DesignItem(); designItem.ItemID = (short)item.ItemID; designItem.X = item.X; designItem.Y = item.Y; designItem.Z = item.Z; designItem.Hue = (short)item.Hue; _items.Add(designItem); } } ExtractResponse resp = null; if(_items.Count > 0) resp = new ExtractResponse(_items); else resp = null; SendResponse(resp); }
private void ExtractItems() { foreach(Rect2D rect in _rects) { #region MobileSaver Rectangle2D realrectangle = new Rectangle2D( rect.TopX, rect.TopY, rect.Width, rect.Height ); foreach ( Mobile m in _map.GetMobilesInBounds( realrectangle ) ) { if ( m != null && m is BaseCreature ) { int saveflag = MobileSaver.GetSaveFlag( m ); if ( saveflag > 0 ) { DesignItem designItem = new DesignItem(); designItem.ItemID = (short)0x1; designItem.X = m.X; designItem.Y = m.Y; designItem.Z = m.Z + saveflag; designItem.Hue = (short)m.Hue; } } } #endregion for ( int x = 0; x <= rect.Width; ++x ) { for ( int y = 0; y <= rect.Height; ++y ) { int tileX = rect.TopX + x; int tileY = rect.TopY + y; Sector sector = _map.GetSector( tileX, tileY ); if (_args.NonStatic || _args.Static) { for ( int i = 0; i < sector.Items.Count; ++i ) { Item item = (Item)sector.Items[i]; if(!item.Visible) continue; else if( (!_args.NonStatic) && !(item is Static) ) continue; else if( (!_args.Static) && (item is Static) ) continue; else if( _args.MinZSet && item.Z < _args.MinZ) continue; else if( _args.MaxZSet && item.Z > _args.MaxZ) continue; int hue = 0; if(_args.ExtractHues) hue = item.Hue; if ( item.X == tileX && item.Y == tileY && !((item is BaseMulti) || (item is HouseSign))) { DesignItem designItem = new DesignItem(); designItem.ItemID = (short)item.ItemID; designItem.X = item.X; designItem.Y = item.Y; designItem.Z = item.Z; designItem.Hue = (short)hue; _items.Add(designItem); } // extract multi if(item is HouseFoundation) { HouseFoundation house = (HouseFoundation)item; if(_extractedMultiIds.IndexOf(house.Serial.Value) == -1) ExtractCustomMulti(house); } } } } } } ExtractResponse response = new ExtractResponse(_items); if(_args.Frozen) { response.Rects = _rects; response.Map = _map.Name; } // send response back to the UOAR tool SendResponse(response); }
private void ExtractItems() { foreach (Rect2D rect in _rects) { for (int x = 0; x <= rect.Width; ++x) { for (int y = 0; y <= rect.Height; ++y) { int tileX = rect.TopX + x; int tileY = rect.TopY + y; Sector sector = _map.GetSector(tileX, tileY); if (_args.NonStatic || _args.Static) { for (int i = 0; i < sector.Items.Count; ++i) { Item item = (Item)sector.Items[i]; if (!item.Visible) { continue; } else if ((!_args.NonStatic) && !(item is Static)) { continue; } else if ((!_args.Static) && (item is Static)) { continue; } else if (_args.MinZSet && item.Z < _args.MinZ) { continue; } else if (_args.MaxZSet && item.Z > _args.MaxZ) { continue; } int hue = 0; if (_args.ExtractHues) { hue = item.Hue; } if (item.X == tileX && item.Y == tileY && !((item is BaseMulti) || (item is HouseSign))) { DesignItem designItem = new DesignItem(); designItem.ItemID = (short)item.ItemID; designItem.X = item.X; designItem.Y = item.Y; designItem.Z = item.Z; designItem.Hue = (short)hue; _items.Add(designItem); } // extract multi if (item is HouseFoundation) { HouseFoundation house = (HouseFoundation)item; if (_extractedMultiIds.IndexOf(house.Serial.Value) == -1) { ExtractCustomMulti(house); } } } } } } } ExtractResponse response = new ExtractResponse(_items); if (_args.Frozen) { response.Rects = _rects; response.Map = _map.Name; } // send response back to the UOAR tool SendResponse(response); }