Пример #1
0
 public Yield GetTest(DreamContext context, DreamMessage request, Result<DreamMessage> response)
 {
     int status = context.GetParam("status", (int)DreamStatus.Ok);
     XDoc doc = new XMessage(request);
     doc["status"].ReplaceValue(status.ToInvariantString());
     doc.Elem("verb", context.Verb);
     DreamMessage reply = new DreamMessage((DreamStatus)status, null, doc);
     string cookieValue = context.GetParam("cookie", null);
     if(cookieValue != null) {
         reply.Cookies.Add(DreamCookie.NewSetCookie("test-cookie", cookieValue, Self.Uri, GlobalClock.UtcNow.AddHours(1.0)));
     }
     if(context.Verb.EqualsInvariant("HEAD")) {
         reply = new DreamMessage(reply.Status, null, MimeType.XML, new byte[0]);
         reply.Headers.ContentLength = doc.ToString().Length;
         response.Return(reply);
     } else {
         response.Return(reply);
     }
     yield break;
 }