/// <summary> /// Creates a Event For a DefferedResponse. /// </summary> /// <returns></returns> public static Event CreateDefferedResponse() { Event _event = new Event(); _event.Header = EventHeader.CreateDefferedResponseHeader(); _event.Payload = new DefferedResponsePayload(); return(_event); }
/// <summary> /// Constructor /// </summary> /// <param name="requestHeader">Header of the Directice</param> public Event(DirectiveHeader requestHeader) { if (requestHeader.PayloadVersion != "3") { throw new ArgumentOutOfRangeException(nameof(Type), $"Not supported Payload Version: {requestHeader.PayloadVersion}. Only Version 3 is supported"); } Header = new EventHeader(requestHeader); Payload = _GetPayloadForEvent(requestHeader.Namespace); }
/// <summary> /// Creates a Event For a DefferedResponse. /// </summary> /// <param name="correlationToken"></param> /// <param name="errorType"></param> /// <param name="hNamespace"></param> /// <returns></returns> public static Event CreateErrorEvent(string correlationToken, ErrorTypes errorType, string hNamespace) { Event _event = new Event(); _event.Header = EventHeader.CreateErrorHeader(correlationToken, hNamespace); _event.Payload = _event._GetPayloadForErrorType(errorType); (_event.Payload as ErrorPayload).Type = errorType; return(_event); }
/// <summary> /// Creates a header for a DefferedResponses /// </summary> /// <returns></returns> public static EventHeader CreateDefferedResponseHeader() { EventHeader e = new EventHeader(); e.MessageId = System.Guid.NewGuid().ToString(); e.PayloadVersion = "3"; e.Namespace = Namespaces.ALEXA; e.Name = HeaderNames.DEFFERED_RESPONSE; return(e); }
/// <summary> /// Creates a header for a Changereport /// </summary> /// <returns></returns> public static EventHeader CreateChangeReportHeader() { EventHeader e = new EventHeader(); e.MessageId = System.Guid.NewGuid().ToString(); e.PayloadVersion = "3"; e.Namespace = Namespaces.ALEXA; e.Name = HeaderNames.CHANGE_REPORT; return(e); }
/// <summary> /// Creates a Event For a ChangeReport. /// </summary> /// <param name="usePayload">Determines if a empty Payload is initialized or a ChangeReportPayload</param> /// <returns></returns> public static Event CreateChangeReportEvent(bool usePayload) { Event _event = new Event(); _event.Header = EventHeader.CreateChangeReportHeader(); if (usePayload) { _event.Payload = new ChangeReportPayload(); } else { _event.Payload = new Payload(); } return(_event); }
/// <summary> /// Creates a header for a ErrorResponse /// </summary> /// <param name="correlationToken"></param> /// <param name="hNamespace"></param> /// <returns></returns> public static EventHeader CreateErrorHeader(string correlationToken, string hNamespace) { EventHeader e = new EventHeader(); e.MessageId = System.Guid.NewGuid().ToString(); e.PayloadVersion = "3"; if (hNamespace == Namespaces.ALEXA_THERMOSTATCONTROLLER) { e.Namespace = Namespaces.ALEXA_THERMOSTATCONTROLLER; } else { e.Namespace = Namespaces.ALEXA; } e.Name = HeaderNames.ERROR_RESPONSE; e.CorrelationToken = correlationToken; return(e); }