private void print_file(RECORD_TYPE type, DEDUP_SORT_ORDER order, string fpath, string txtfile) { Item record = null; switch (type) { case RECORD_TYPE.FINGERPRINT_RECORD_CLOG: record = new fingerprintCLOG(order); break; case RECORD_TYPE.FINGERPRINT_RECORD_FPDB: record = new fingerprintFPDB(order); break; case RECORD_TYPE.FINGERPRINT_RECORD_MSG: record = new fingerprintDMSG(order); break; } FileStream fsrc = new FileStream(fpath, FileMode.Open); FileStream fdest = new FileStream(txtfile, FileMode.Create); StreamWriter log = new StreamWriter(fdest); int count = (int)(fsrc.Length / record.get_size()); byte[] buffer = new byte[record.get_size()]; for (int i = 0; i < count; i++) { fsrc.Read(buffer, 0, record.get_size()); record.parse_bytes(buffer, 0); log.WriteLine(record.get_string_rep()); } log.Flush(); log.Close(); fsrc.Close(); }
/* * Send the messages and get work done. */ private void ACTUAL_DEDUPE(string script) { FileStream fsrc = new FileStream(script, FileMode.Open); Item record = new fingerprintDMSG(DEDUP_SORT_ORDER.UNDEFINED_PLACEHOLDER); int count = (int)(fsrc.Length / record.get_size()); byte[] buffer = new byte[record.get_size()]; for (int i = 0; i < count; i++) { fsrc.Read(buffer, 0, record.get_size()); record.parse_bytes(buffer, 0); fingerprintDMSG msg = (fingerprintDMSG)record; //REDDY.ptrIFSDMux.DoDedupe(msg.fsid, msg.inode, msg.fbn, msg.sourcedbn, msg.destinationdbn); MSG_AGGREGATE(msg); int progress = (i * 100) / count; ui.Update_DedupeUI(m_stage, progress); } MSG_AGGREGATE(null); fsrc.Close(); }