/// <summary> /// Returns the image for the Marker Type. /// </summary> /// <param name="markerType"></param> /// <returns></returns> public static Image GetMarkerImage(MarkerType markerType) { string fileName = DirectoryAndFileHelper.GetMarkerTypeImagePath(markerType.Symbol); if (File.Exists(fileName)) { Image image = Image.FromFile(fileName); Size imageSize = new Size(); switch (markerType.Size) { case "Small": { imageSize.Height = 15; imageSize.Width = 15; break; } case "Medium": { imageSize.Height = 30; imageSize.Width = 30; break; } case "Large": { imageSize.Height = 60; imageSize.Width = 60; break; } default: { imageSize.Height = 30; imageSize.Width = 30; break; } } return(ResizeImage(image, imageSize)); } return(null); }
/// <summary> /// Transmit data to the given URI. /// </summary> /// <param name="uri"></param> /// <param name="partsToSend"></param> /// <returns>A result that includes parsed JMF results if available.</returns> public IJmfResult Transmit(Uri uri, ITransmissionPartCollection partsToSend) { ParameterCheck.ParameterRequired(uri, "uri"); ParameterCheck.ParameterRequired(partsToSend, "partsToSend"); if (partsToSend.Count == 0) { throw new PreconditionException(Messages.FileTransmitter_Transmit_AtLeastOneTransmissionPartIsRequired); } if (!uri.IsFile && !uri.IsUnc) { throw new PreconditionException(Messages.FileTransmitter_Transmit_RequiresHttpUrl); } var transmissionEncoder = GetFileTransmitterEncoder(uri); if (transmissionEncoder != null) { FileTransmitterEncoder actualEncoder; if (transmissionEncoder.FolderInfo.Count == 0) { actualEncoder = FileTransmitterEncoder.BuildDefaultFolderInfoCollection(transmissionEncoder); } else { actualEncoder = transmissionEncoder; } List <FileTransmissionItem> results = null; try { results = actualEncoder.PrepareTransmission(partsToSend, transmissionPartFactory, encodingfactory, transmissionLogger); foreach (var item in results.OrderBy(item => item.Order)) { if (item.Stream.CanSeek) { item.Stream.Seek(0, SeekOrigin.Begin); } var fileInfo = new FileInfo(item.DestinationUri.LocalPath); DirectoryAndFileHelper.EnsureFolderExists(fileInfo.Directory, logger); DirectoryAndFileHelper.SaveStreamToFile(item.Stream, fileInfo, false, logger); } } catch (Exception err) { logger.Error(string.Format(Messages.HttpTransmitter_Transmit_HttpTransmitter_UnexpectedException, uri), err); throw; } finally { if (results != null) { try { foreach (var item in results) { item.Dispose(); } } finally { //do nothing } } } return(new FileTransmissionJmfResult()); } else { //This code is no longer valid //TODO delete this code since mime is no longer the default. var fileInfo = new FileInfo(uri.LocalPath); DirectoryAndFileHelper.EnsureFolderExists(fileInfo.Directory, logger); try { var encodingResult = encodingfactory.GetEncodingForTransmissionParts(partsToSend).Encode(partsToSend); transmissionLogger.Log(new TransmissionData(encodingResult.Stream, encodingResult.ContentType, "Request")); if (encodingResult.Stream.CanSeek) { encodingResult.Stream.Seek(0, SeekOrigin.Begin); } DirectoryAndFileHelper.SaveStreamToFile(encodingResult.Stream, fileInfo, false, logger); return(new FileTransmissionJmfResult()); } catch (Exception err) { logger.Error(string.Format(Messages.HttpTransmitter_Transmit_HttpTransmitter_UnexpectedException, uri), err); throw; } } }