This project is read-only.

GW2.NET - v0.8.0.1

Rating: No reviews yet
Downloads: 19
Change Set: 34123
Released: Feb 12, 2014
Updated: Feb 12, 2014 by Ruhrpottpatriot
Dev status: Beta Help Icon

Recommended Download

Application GW2.NET v0.8.0.1
application, 460K, uploaded Feb 12, 2014 - 19 downloads

Release Notes

This release merges the async branch back into the main tree. This is the last release with the current api call design. After this release is done, Documentation is updated and bugs are ironed out we will work on implementing the new HTTP branch.

Changelog:
*General:
  • Added a wrapper class for chaned data to store build number and cached data in a consistent format.
  • Added a base class for all data providers with the folloowing contet:
    • Public, abstract methods to write the cache to the disk synchronously and asnychronously.
    • Methods to read the cache from the disk synchronously and asynchonoulsy.
    • BypassCache property.
    • Protected method to write the data to the disk.
  • Removed the BypassCache from all classed inheriting from the DataProviderBase class.
  • Made WriteCacheToDisk and WriteCacheToDiskAsync overrride the abstract base methods.
  • Completed the implementation of the IDataManager interface and the DataManager class.
  • Fixed numerous spacing, spelling and other Stylecop errors. With the exception of the old events namespace every file in the V1 namespace is 100% stylecop proven.
  • Added abstract clear cache method to the DataProviderBase class.
  • Implemented ClearCache method on all data providers, made affected fields non-readonly.
  • Completely removed IApiManager interface and ApiManager class.
  • Completely removed the Events namespace.
  • Moved BooleanConverter to appropiate namespace.
  • Removed the Logging namespace and contents.
  • Changed obsolete asnyc json convert method to up to date method.
  • Changed ReadCacheFromDisk method to return the build the cahce was written with as an out parameter and the return type is now the cache data, but the wrapper itself.
  • Changed GetSingleColour and GetSingleColourAsync to check the colours list with FirstOrDefault instead of SingleOrDefault as the api seems to return some colours multiple times.
  • Added ChangeSavePath method to the DataManager class and the IDataManager interaface.
  • Updated JSON.NET
  • Added WriteCacheToDisk and WriteCacheToDiskAsync to all rewritten data provivers. This methods (except on the items and colour data provider) will throw a NotImplementedException for the time being, one of the next commits will contain an implementation.
  • Added an IEnumerable extension methods that checks if the collection is null or empty (like String.IsNullOrEmpty).

  • Data Providers:
    • Dynamic Events:
      • Completely rewrote the events data provider to be more in line with the api structure. This improves performance and increases maintainabliity. The new data provider will not query the MapInformation api to reduce network traffic. Instead it will store map information in the GameEventMap object and world information in the GameEventWorld object. Both are small object whcih hold the world/map information exposed by the DynamicEvents api.
      • New Provider will query the event_details api.
      • Map and world names are now stored in lazy initialized dictionarys.
      • Changed backing field for the game event list to be lazy initialized.
  • Guilds:
    • Renamed the 'All' property to 'GuildList'.
    • Renamed 'guildCache' field to 'guildList'.
    • Removed exception from the 'GuildList' property.
    • Added missing cache bypass check on 'GetSingleGuildAsync'.
    • Added additional separator for private methods.
    • Added null check on 'GuildEmblem' equality operator.
    • Simplified unequal operaotor on 'GuildEmblem'.
    • Changed the guilds cache field to be lazy initialized.
  • MapInformation:
    • Supppressed FieldsMustBePrivate warning in the maps model.
    • Added Spearators to the ContinentDataManager.
    • Renamed 'Contintents' property to 'ContinentList'.
    • Moved 'ResoveId' from continent mode to the continents data manager (was a leftover from old struct days anyway).
    • Made set acessor of the 'Id' property on the continents model public-
    • Removed the IEnumerable implementation from the continents datsa manager.
    • Removed GetContinentFromIdAsync method as the same result can be achieved with an interation/LINQ over the ContinentList property.
    • Rewrote GetAllContinents and GetAllContinentsAsync to use the new async/await keywords and not the TaskFactory.
    • Added a method to bypas the cache on the GetAllContinents and GetAllContinentsAsync methods.
    • Removed IEnumerable implementation from the maps data provider.
    • Replaced indexer from the MapFloor data manager with a method call.
    • Added async method call to get a map floor.
    • Made backing field for the continent list lazy initialized.
  • Items:
    • Removed IEnumerable implementation and replaced indexer with appropiate methods.
    • Renamed itemsCache to itemListCache.
    • Exposed the itemIdCache and itemListCache as public readonly properties.
    • Made itemIdCache and itemListCache backing fields lazy initialized.
  • Recipes:
    • Removed implementation of IEnumerable and replaced indexers with methods.
    • Made RecipeList and RecipeIdList public properties.
    • Added synchronous as well as asynchronous methods for querying the recipe ids.
    • Added synchronous as well as asynchronous methods for querying one recipe detail.
  • Colours:
    • Removed the IEnumerable implementation on the Colours data provider and replaces indexer with methods.
    • Renamed the Colours property on the colour data provider to ColourList and made the property public.
  • World Versus World:
    • Removed the All property from the WvW data manger.
    • Removed the ClearCache method on the WvW data manager.

Reviews for this release

No reviews yet for this release.