internal TnefPropertyChecker(TnefType tnefType, bool isEmbeddedMessage, OutboundConversionOptions options) { this.isEmbeddedMessage = isEmbeddedMessage; this.tnefType = tnefType; if (isEmbeddedMessage) { this.messagePropertyExceptions = new Dictionary <NativeStorePropertyDefinition, bool>(TnefPropertyChecker.embeddedPropertyTransmittabilities); } else { this.messagePropertyExceptions = new Dictionary <NativeStorePropertyDefinition, bool>(TnefPropertyChecker.rootPropertyTransmittabilities); } this.messagePropertyExceptions.Add(InternalSchema.Categories, !options.ClearCategories); if (tnefType == TnefType.SummaryTnef) { this.recipientPropertyExceptions = new Dictionary <NativeStorePropertyDefinition, bool>(TnefPropertyChecker.stnefRecipientPropertyTransmittabilities); } }
private ItemToTnefConverter(Item itemIn, OutboundAddressCache addressCache, OutboundConversionOptions options, ConversionLimitsTracker limits, TnefType tnefType, bool parsingEmbeddedItem) { if (options.FilterAttachmentHandler != null) { throw new NotSupportedException("FilterAttachmentHandler is not supported in ItemToTnefConverter"); } if (options.FilterBodyHandler != null) { throw new NotSupportedException("FilterBodyHandler is not supported in ItemToTnefConverter"); } this.item = itemIn; this.addressCache = addressCache; this.options = options; this.limitsTracker = limits; this.isEmbeddedItem = parsingEmbeddedItem; this.tnefType = tnefType; }
internal ItemToTnefConverter(Item itemIn, OutboundAddressCache addressCache, ItemToTnefConverter.TnefContentWriter writer, OutboundConversionOptions options, ConversionLimitsTracker limits, TnefType tnefType, bool parsingEmbeddedItem) : this(itemIn, addressCache, options, limits, tnefType, parsingEmbeddedItem) { this.tnefWriter = writer; this.tnefCorrelationKey = null; this.propertyChecker = new TnefPropertyChecker(tnefType, parsingEmbeddedItem, options); this.disposeTracker = this.GetDisposeTracker(); }
internal ItemToTnefConverter(Item itemIn, OutboundAddressCache addressCache, Stream mimeOut, OutboundConversionOptions options, ConversionLimitsTracker limits, TnefType tnefType, string tnefCorrelationKey, bool parsingEmbeddedItem) : this(itemIn, addressCache, options, limits, tnefType, parsingEmbeddedItem) { this.tnefCorrelationKey = tnefCorrelationKey; Charset itemWindowsCharset = ConvertUtils.GetItemWindowsCharset(this.item, options); this.tnefWriter = new ItemToTnefConverter.TnefContentWriter(mimeOut, itemWindowsCharset); this.propertyChecker = new TnefPropertyChecker(tnefType, parsingEmbeddedItem, options); this.disposeTracker = this.GetDisposeTracker(); }