コード例 #1
0
 /// <summary>
 ///     Write a done key
 /// </summary>
 /// <param name="writer">An event writer</param>
 /// <param name="eventTemplate">An event template</param>
 static async Task WriteEventDone(EventStreamWriter writer, EventElement eventTemplate)
 {
     var @event = eventTemplate;
     @event.Unbroken = false;
     @event.Done = true;
     await writer.WriteEventAsync(@event);
 }
コード例 #2
0
 /// <summary>
 ///     Write event data without appending a newline seperator.
 /// </summary>
 /// <param name="writer">An event writer</param>
 /// <param name="eventTemplate">An event template</param>
 /// <param name="eventData">Event data</param>
 static async Task WriteEventData(EventStreamWriter writer, EventElement eventTemplate, string eventData)
 {
     var @event = eventTemplate;
     @event.Data = eventData;
     await writer.WriteEventAsync(@event);
 }
コード例 #3
0
        /// <summary>
        ///     Write events using EventStreamWriter
        /// </summary>
        // This method can be used by manual testing thus is public 
        public static async Task WriteEvents()
        {
            using (var writer = new EventStreamWriter())
            {
                var eventTemplate = new EventElement
                    {
                        Index = "sdk-tests2",
                        Host = "test host",
                        SourceType = "test sourcetype",
                        Source = "test source",
                    };

                await WriteEventData(
                    writer,
                    eventTemplate,
                    "Event with all default fields set");

                await WriteEventData(
                    writer,
                    eventTemplate,
                    "Letter O with double acute: \u0150");

                eventTemplate.Unbroken = true;

                await WriteEventData(
                    writer,
                    eventTemplate,
                    "Part 1 of an unbroken event ");

                await WriteEventData(
                    writer,
                    eventTemplate,
                    "Part 2 of an unbroken event ending with newline" + Environment.NewLine);

                await WriteEventDone(
                    writer,
                    eventTemplate);

                eventTemplate.Unbroken = false;

                await WriteEventData(
                    writer,
                    eventTemplate,
                    "Event after done key");

                var timedEvent = eventTemplate;
                timedEvent.Time = new DateTime(2013, 1, 1, 0, 0, 0, 1, DateTimeKind.Utc);
                timedEvent.Data = "Event with fixed time";
                await writer.WriteEventAsync(timedEvent);

                await WriteMultiplex(writer);
            }
        }