public FastTransferStreamExtractor(ExtractContext context, bool removeMetadata) { this.extractContext = context; this.data = context.Item.Data; this.currentStreamBufferEnd = 0; this.removeMetadata = removeMetadata; this.fixedSizePropertyExtractor = new FastTransferStreamExtractor.FixedSizePropertyExtractor(); this.variableSizePropertyExtractor = new FastTransferStreamExtractor.VariableSizePropertyExtractor(); this.multivaluedFixedSizePropertyExtractor = new FastTransferStreamExtractor.MultivaluedFixedSizePropertyExtractor(); this.multivaluedVariableSizePropertyExtractor = new FastTransferStreamExtractor.MultivaluedVariableSizePropertyExtractor(); }
internal static IMessage CreatePstMessage(IPST pstSession, IFolder pstFolder, ItemInformation item, bool removeMetadata) { IMessage message = pstFolder.AddMessage(); ExtractContext extractContext = new ExtractContext(pstSession, item); extractContext.EnterMessageContext(message); FastTransferStreamExtractor fastTransferStreamExtractor = new FastTransferStreamExtractor(extractContext, removeMetadata); fastTransferStreamExtractor.Extract(); extractContext.ExitMessageContext(); return(message); }