public List <OwnBoatData> getOwnBoatByTime(TimeType startTime, TimeType endTime)
        {
            List <OwnBoatData> OwnBoatMessages         = new List <OwnBoatData>();
            IMongoCollection <BsonDocument> collection = _db.GetCollection <BsonDocument>("OwnBoat");
            var filter1 = Builders <BsonDocument> .Filter.Gt("timeStamp.seconds", startTime.seconds);

            var filter2 = Builders <BsonDocument> .Filter.Lt("timeStamp.seconds", endTime.seconds);

            var mainFilter = Builders <BsonDocument> .Filter.And(filter1, filter2);

            var result = collection.Find(mainFilter).ToList();

            foreach (var ownBoatRecord in result)
            {
                var tmp = new JsonWriterSettings {
                    OutputMode = JsonOutputMode.Strict
                };
                JObject json = JObject.Parse(ownBoatRecord.ToJson <MongoDB.Bson.BsonDocument>(tmp));

                OwnBoatData ownboatMessage = Newtonsoft.Json.JsonConvert.DeserializeObject <OwnBoatData>(json.ToString());

                OwnBoatMessages.Add(ownboatMessage);
            }

            return(OwnBoatMessages);
        }
Exemple #2
0
        public void SendOwnBoatData(OwnBoatData message)
        {
            string json = JsonConvert.SerializeObject(message);

            var body = Encoding.UTF8.GetBytes(json);

            Channel.BasicPublish(exchange: "LucidOwnBoatData",
                                 routingKey: "",
                                 basicProperties: null,
                                 body: body);
        }
Exemple #3
0
        // Handle the Own Boat message
        public void HandleOwnBoatMessage(OwnBoatOriginalMessage message)
        {
            OwnBoatData ownBoat = new OwnBoatData();

            // convert
            ownBoat.timeStamp = convertTime(message.systemTime.time.value);
            ownBoat.timeZone  = message.timeZone.data.value;
            ownBoat.heading   = message.heading.data.value;
            ownBoat.pitch     = message.pitch.data.value;
            ownBoat.roll      = message.roll.data.value;
            ownBoat.heave     = message.heave.data.value;


            sender.SendOwnBoatData(ownBoat);

            //save to db
            db.saveRecord(ownBoat, "OwnBoat");
        }
        public List <OwnBoatData> getAllOwnBoatData()
        {
            List <OwnBoatData> result = new List <OwnBoatData>();

            var allMessages = getMessages("OwnBoat");

            foreach (var message in allMessages)
            {
                var x = new JsonWriterSettings {
                    OutputMode = JsonOutputMode.Strict
                };
                JObject json = JObject.Parse(message.ToJson <MongoDB.Bson.BsonDocument>(x));

                OwnBoatData ownBoatRecord = Newtonsoft.Json.JsonConvert.DeserializeObject <OwnBoatData>(json.ToString());

                result.Add(ownBoatRecord);
            }

            return(result);
        }