From 24a073ba5127bc7c84542661ab0f1376eafed566 Mon Sep 17 00:00:00 2001 From: Damon Pollard Date: Sat, 26 Dec 2015 22:38:48 +0800 Subject: [PATCH] Update README.md --- README.md | 82 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 72 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index a9a9f6b..28d9fe8 100644 --- a/README.md +++ b/README.md @@ -4,16 +4,27 @@ The purpose of this project is to create a dead simple C# wrapper for the offici HaloSharp attempts to fully support all available official endpoints. -## Usage ## +### Usage ### -1. Create an instance of `HaloClient` (provide your API Key). +1. Create an instance of `HaloClient` (provide your SubscriptionKey and optionally a RateLimit). 2. Call the `StartSession` method. 3. Call the `.Query()` method and pass in a prepackaged Query object. ###### Sample ###### ``` -var client = new HaloClient("00000000000000000000000000000000"); +var developerAccessProduct = new Product +{ + SubscriptionKey = "00000000000000000000000000000000", + RateLimit = new RateLimit + { + RequestCount = 10, + TimspSpan = new TimeSpan(0, 0, 0, 10), + Timeout = Timeout.InfiniteTimeSpan + } +}; + +var client = new HaloClient(developerAccessProduct); using (var session = client.StartSession()) { @@ -30,24 +41,75 @@ using (var session = client.StartSession()) } ``` -## NuGet ## +### NuGet ### A Nuget package is available at [www.nuget.org/packages/HaloSharp](https://www.nuget.org/packages/HaloSharp) `PM> Install-Package HaloSharp` -## To Do ## +### Changelog ### + +###### v.1.1.00 (2015-12-26) + +1. Rate Limiter: Optional rate limiter with timeout settings. + +2. JSON Structural Validation (JSON Schema): A significant update to the test harness. Using JSON schemas to detect changes to API responses. + +3. Serialization: Strongly typed models are now serializable. + +4. Metadata Endpoints + * Seasons + +5. Profile Endpoints + * Emblem Url + * Spartan Url + +###### v.1.0.0.0 (2015-11-04)###### + +1. Metadata Endpoints + * Campaign Missions + * Commendations + * CSR Designations + * Enemies + * Flexible Stats + * Game Base Variants + * Game Variants + * Impulses + * Map Variants + * Maps + * Medals + * Playlists + * Requisition Packs + * Requisitions + * Skulls + * Spartan Ranks + * Team Colors + * Vehicles + * Weapons + +2. Profile Endpoints + * Emblem Image + * Spartan Image + +3. Stats Endpoints + * Player Matches + * Arena Carnage Report + * Arena Service Record + * Campaign Carnage Report + * Campaign Service Record + * Custom Carnage Report + * Custom Service Record + * Warzone Carnage Report + * Warzone Service Record -* Rate limiting. -* Better unit testing. -## Notes ## +### Notes ### * The Halo® Game Data API is still in a Beta period. Breaking changes are to be expected. -* Pull requests are welcome. Especially if you're cleaing out the todo list :) +* Pull requests are welcome. * If you see something or think something could be done better, shout out. I'm all ears. * Review the HaloSharp.Test project for examples on each of the different endpoints and their usages. * You'll need to provide your own API Key to run the test suite. ([Setup.cs](https://github.com/gitFurious/HaloSharp/blob/master/Source/HaloSharp.Test/Setup.cs)) -## About ## +### About ### This application is offered by Damon Pollard, which is solely responsible for its content. It is not sponsored or endorsed by Microsoft. This application uses the Halo® Game Data API. Halo © 2015 Microsoft Corporation. All rights reserved. Microsoft, Halo, and the Halo Logo are trademarks of the Microsoft group of companies.