コード例 #1
0
 /// <inheritdoc />
 protected override void OnOpenStream()
 {
     this.Data = DataManager.Instance.ReadStream <AnnotatedEvent>(this.Configuration.StreamBinding, DateTime.MinValue, DateTime.MaxValue);
     using (var reader = DataManager.Instance.GetReader(this.Configuration.StreamBinding))
     {
         this.metadata   = reader.AvailableStreams.First(s => s.Name == this.Configuration.StreamBinding.StreamName) as JsonStreamMetadata;
         this.definition = (reader as AnnotationSimpleReader).Definition;
         this.RaisePropertyChanged(nameof(this.Definition));
     }
 }
コード例 #2
0
        public void Initialize()
        {
            this.booleanSchema = new AnnotationSchema("Boolean");
            this.booleanSchema.AddSchemaValue(null, Color.Gray);
            this.booleanSchema.AddSchemaValue("false", Color.Red);
            this.booleanSchema.AddSchemaValue("true", Color.Green);

            this.definition = new AnnotatedEventDefinition("Definition");
            this.definition.AddSchema(this.booleanSchema);

            this.metadata = new JsonStreamMetadata("Range", 1, typeof(AnnotatedEvent).AssemblyQualifiedName, this.name, this.path);
        }
コード例 #3
0
        public void JsonSimpleWriterTest()
        {
            using (var writer = new JsonSimpleWriter())
            {
                writer.CreateStore(StoreName, OutputPath, false);

                IStreamMetadata metadata1 = new JsonStreamMetadata("Stream1", 1, TypeName, null, StoreName, OutputPath);
                IStreamMetadata metadata2 = new JsonStreamMetadata("Stream2", 2, TypeName, null, StoreName, OutputPath);

                List <Message <SimpleObject> > stream1 = new List <Message <SimpleObject> >
                {
                    new Message <SimpleObject>(Data, FirstTime, FirstTime, 1, 0),
                    new Message <SimpleObject>(Data, LastTime, LastTime, 1, 1),
                };

                List <Message <SimpleObject> > stream2 = new List <Message <SimpleObject> >
                {
                    new Message <SimpleObject>(Data, FirstTime, FirstTime, 2, 0),
                    new Message <SimpleObject>(Data, LastTime, LastTime, 2, 1),
                };

                writer.CreateStream(metadata1, stream1);
                writer.CreateStream(metadata2, stream2);
                writer.WriteAll(ReplayDescriptor.ReplayAll);
            }

            var    escapedOutputPath = OutputPath.Replace(@"\", @"\\");
            string expectedCatalog   = "[{\"Name\":\"Stream1\",\"Id\":1,\"TypeName\":\"Test.Psi.Data.SimpleObject\",\"StoreName\":\"JsonStore\",\"StorePath\":\"" + escapedOutputPath + "\",\"FirstMessageCreationTime\":\"2017-11-01T09:15:30.12345Z\",\"LastMessageCreationTime\":\"2017-11-01T09:15:34.12345Z\",\"FirstMessageOriginatingTime\":\"2017-11-01T09:15:30.12345Z\",\"LastMessageOriginatingTime\":\"2017-11-01T09:15:34.12345Z\",\"MessageCount\":2,\"MessageSizeCumulativeSum\":606,\"LatencyCumulativeSum\":0,\"SupplementalMetadataTypeName\":null,\"OpenedTime\":\"0001-01-01T00:00:00\",\"ClosedTime\":\"9999-12-31T23:59:59.9999999\",\"IsClosed\":false},{\"Name\":\"Stream2\",\"Id\":2,\"TypeName\":\"Test.Psi.Data.SimpleObject\",\"StoreName\":\"JsonStore\",\"StorePath\":\"" + escapedOutputPath + "\",\"FirstMessageCreationTime\":\"2017-11-01T09:15:30.12345Z\",\"LastMessageCreationTime\":\"2017-11-01T09:15:34.12345Z\",\"FirstMessageOriginatingTime\":\"2017-11-01T09:15:30.12345Z\",\"LastMessageOriginatingTime\":\"2017-11-01T09:15:34.12345Z\",\"MessageCount\":2,\"MessageSizeCumulativeSum\":606,\"LatencyCumulativeSum\":0,\"SupplementalMetadataTypeName\":null,\"OpenedTime\":\"0001-01-01T00:00:00\",\"ClosedTime\":\"9999-12-31T23:59:59.9999999\",\"IsClosed\":false}]";
            string expectedData      = "[{\"Envelope\":{\"SourceId\":1,\"SequenceId\":0,\"OriginatingTime\":\"2017-11-01T09:15:30.12345Z\",\"Time\":\"2017-11-01T09:15:30.12345Z\"},\"Data\":{\"ArrayValue\":[0,1,2,3],\"BoolValue\":true,\"DateTimeValue\":\"2017-11-30T12:59:41.896745Z\",\"DoubleValue\":0.123456,\"IntValue\":123456,\"ListValue\":[4,5,6,7],\"StringValue\":\"abc\",\"TimeSpanValue\":\"01:02:03.4567890\"}},{\"Envelope\":{\"SourceId\":2,\"SequenceId\":0,\"OriginatingTime\":\"2017-11-01T09:15:30.12345Z\",\"Time\":\"2017-11-01T09:15:30.12345Z\"},\"Data\":{\"ArrayValue\":[0,1,2,3],\"BoolValue\":true,\"DateTimeValue\":\"2017-11-30T12:59:41.896745Z\",\"DoubleValue\":0.123456,\"IntValue\":123456,\"ListValue\":[4,5,6,7],\"StringValue\":\"abc\",\"TimeSpanValue\":\"01:02:03.4567890\"}},{\"Envelope\":{\"SourceId\":1,\"SequenceId\":1,\"OriginatingTime\":\"2017-11-01T09:15:34.12345Z\",\"Time\":\"2017-11-01T09:15:34.12345Z\"},\"Data\":{\"ArrayValue\":[0,1,2,3],\"BoolValue\":true,\"DateTimeValue\":\"2017-11-30T12:59:41.896745Z\",\"DoubleValue\":0.123456,\"IntValue\":123456,\"ListValue\":[4,5,6,7],\"StringValue\":\"abc\",\"TimeSpanValue\":\"01:02:03.4567890\"}},{\"Envelope\":{\"SourceId\":2,\"SequenceId\":1,\"OriginatingTime\":\"2017-11-01T09:15:34.12345Z\",\"Time\":\"2017-11-01T09:15:34.12345Z\"},\"Data\":{\"ArrayValue\":[0,1,2,3],\"BoolValue\":true,\"DateTimeValue\":\"2017-11-30T12:59:41.896745Z\",\"DoubleValue\":0.123456,\"IntValue\":123456,\"ListValue\":[4,5,6,7],\"StringValue\":\"abc\",\"TimeSpanValue\":\"01:02:03.4567890\"}}]";
            string actualCatalog     = string.Empty;
            string actualData        = string.Empty;

            string catalogPath = Path.Combine(OutputPath, StoreName + ".Catalog.json");

            using (var file = File.OpenText(catalogPath))
            {
                actualCatalog = file.ReadToEnd();
            }

            string dataPath = Path.Combine(OutputPath, StoreName + ".Data.json");

            using (var file = File.OpenText(dataPath))
            {
                actualData = file.ReadToEnd();
            }

            File.Delete(catalogPath);
            File.Delete(dataPath);

            Assert.AreEqual(expectedCatalog, actualCatalog);
            Assert.AreEqual(expectedData, actualData);
        }