Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Dynamic property to RestServer class #57

Closed
scottoffen opened this issue Jun 30, 2016 · 0 comments
Closed

Add Dynamic property to RestServer class #57

scottoffen opened this issue Jun 30, 2016 · 0 comments
Assignees
Milestone

Comments

@scottoffen
Copy link
Owner

Add Dynamic property to RestServer class

@scottoffen scottoffen added this to the 4.0.0-alpha.1 milestone Jun 30, 2016
@scottoffen scottoffen self-assigned this Jun 30, 2016
scottoffen pushed a commit that referenced this issue Jul 1, 2016
@scottoffen scottoffen mentioned this issue Jul 5, 2016
scottoffen pushed a commit that referenced this issue Jul 5, 2016
Contains bug fixes and enhancements for multiple issues.

**#27 InternalServerError override not invoked in implementation of RESTResource**
This is now obsolete, given that there is no longer a method to override.

**#40 Implement thread-safe RestServer.Stop() for use in routes**
Added the method `ThreadSafeStop()` to the `RestServer` class, added `IRestServer` to `IHttpContext` to ensure the method would be available to all routes.

**#42 RestServer Authentication**
In addition to the new routing table implementation, see #58

**#43 Creating a cluster with multiple RESTServers does not process HTTP requests**
Unable to duplicate. See the `Grapevine.Integration` project for example code.

**#44 Passing application-specific info to response handlers**
Added an `ExpandoObject` to the `HttpContext`, `HttpRequest` and `HttpResponse` classes. Pass data around to your hearts content! Additionally, the route creation methods can aid in providing additional context to the response handlers.

**#49 Add logging interface to replace now defunct EventLogger**
See `IGrapevineLogger`; create your own implementation and pass it to the `RestServer` instance.

**#53 Make calling server accessible to routes**
Added `IRestServer` property to `IHttpContext`

**#56 Add mechanism to find an open port on a given host**
See `PortFinder` class; has both synch and asynch static and instance methods.

**#57 Add Dynamic property to `RestServer` class**
Added an `ExpandoObject` to the `RestServer`

**#58 Provide limited access to the underlying HttpListener instance**
Added an `Advanced` property to the `RestServer` class that provides access to (almost) all the methods and properties of the underlying `HttpListener`. Use with caution.

**#59 Enable and disable individual routes**
Added `Enable()` and `Disable()` methods to `IRoute`

**Other**
* Changed BaseUrl to BasePath, updated all references
* Updated version of Xunit
* Replaced TravisCI with Appveyo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant