private BsonDocument buildLOSTest(LOSTest tcd) { Measurement measurement = null; // Initialize object that will be stored under 'device' in mongo document BsonDocument nestedDevice = null; if (tcd.RxTest != null) { try { measurement = tcd.RxTest.Measurement; } catch (Exception exc) { Program.log("ERROR LOSTEST: " + tcd.Id + " - " + exc.Message); } finally { nestedDevice = SyncManager.Instance.getNestedDevice(measurement); } } if (nestedDevice == null) return null; // Initialize object that will be stored under 'meta' in mongo document BsonDocument nestedMeta = SyncManager.Instance.getNestedMeta(measurement); if (nestedMeta == null) return null; // Initialize object that will be stored under 'data' in mongo document BsonDocument nestedData = SyncManager.Instance.getNestedData(tcd, excludeDataFields); // Custom code to move some set fields to meta object nestedMeta.Add("SetTemperature_C", nestedData["SetTemperature"]); nestedData.Remove("SetTemperature"); nestedMeta.Add("Channel", nestedData["Channel"]); nestedData.Remove("Channel"); nestedMeta.Add("SetVoltage", nestedData["SetVoltage"]); nestedData.Remove("SetVoltage"); //System.Diagnostics.Trace.WriteLine("D " + DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff tt")); // Initialize object in root of the document BsonDocument rootDoc = new BsonDocument { { "_id", tcd.Id.ToString()}, { "mid", measurement.Id.ToString() }, { "timestamp", tcd.TimeStamp}, { "type", domain() }, { "subtype", "lostest" }, { "result", getResult( nestedData["Result"].ToString()) }, { "downstatus", getDownStatus( nestedData["Result"].ToString()) }, { "status", getStatus(measurement.Result) } }; nestedData.Remove("Result"); rootDoc.Add("device", nestedDevice); rootDoc.Add("meta", nestedMeta); rootDoc.Add("data", nestedData); return rootDoc; }
private BsonDocument buildLOSTest(LOSTest tcd) { Measurement measurement = null; // Initialize object that will be stored under 'device' in mongo document BsonDocument nestedDevice = null; if (tcd.RxTest != null) { try { measurement = tcd.RxTest.Measurement; } catch (Exception exc) { Program.log("ERROR LOSTEST: " + tcd.Id + " - " + exc.Message); } finally { nestedDevice = SyncManager.Instance.getNestedDevice(measurement); } } if (nestedDevice == null) { return(null); } // Initialize object that will be stored under 'meta' in mongo document BsonDocument nestedMeta = SyncManager.Instance.getNestedMeta(measurement); if (nestedMeta == null) { return(null); } // Initialize object that will be stored under 'data' in mongo document BsonDocument nestedData = SyncManager.Instance.getNestedData(tcd, excludeDataFields); // Custom code to move some set fields to meta object nestedMeta.Add("SetTemperature_C", nestedData["SetTemperature"]); nestedData.Remove("SetTemperature"); nestedMeta.Add("Channel", nestedData["Channel"]); nestedData.Remove("Channel"); nestedMeta.Add("SetVoltage", nestedData["SetVoltage"]); nestedData.Remove("SetVoltage"); //System.Diagnostics.Trace.WriteLine("D " + DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff tt")); // Initialize object in root of the document BsonDocument rootDoc = new BsonDocument { { "_id", tcd.Id.ToString() }, { "mid", measurement.Id.ToString() }, { "timestamp", tcd.TimeStamp }, { "type", domain() }, { "subtype", "lostest" }, { "result", getResult(nestedData["Result"].ToString()) }, { "downstatus", getDownStatus(nestedData["Result"].ToString()) }, { "status", getStatus(measurement.Result) } }; nestedData.Remove("Result"); rootDoc.Add("device", nestedDevice); rootDoc.Add("meta", nestedMeta); rootDoc.Add("data", nestedData); return(rootDoc); }