Issue Details (XML | Word | Printable)

Key: ADV-124
Type: Task Task
Status: Open Open
Priority: Critical Critical
Assignee: Unassigned
Reporter: Ed Barton (RockSlice)
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Auctioneer

Conform all API calls to serverkey, which is what is actually used

Created: 06/Dec/07 10:08 AM   Updated: 14/Dec/09 11:52 AM
Component/s: API
Affects Version/s: None
Fix Version/s: None

Issue Links:
Blocks
Reference


 Description  « Hide
Many places in the module API call for {faction, realm} as arguments, when what is really passed, and used, is serverkey

 All   Comments   Change History   Transitions   FishEye   Crucible      Sort Order: Ascending order - Click to sort in descending order
dinesh added a comment - 22/Sep/08 11:52 AM
Is this even still an issue?

Ed Barton (RockSlice) added a comment - 01/Oct/08 07:35 PM
After a thorough search through the code, the only API function that uses the (faction, realm) in it's definition, or when called, is AucAdvanced.API.QueryImage(query, faction, realm, ...)

This function actually does need to have faction and realm specified separately, so the code is not misleading.

However, we may want to consider changing this to serverkey, for consistency.


Ed Barton (RockSlice) added a comment - 01/Oct/08 07:38 PM
removed search tag

Bryan (brykrys) added a comment - 06/Jan/09 06:09 AM
The API functions call certain functions from the Auc-Stat-* modules, particularly lib.GetItemPDF, lib.GetPriceArray, lib.GetPrice, lib.ClearItem

Many of these functions in the Auc-Stat-* files take (hyperlink, faction, realm) parameters. I had a quick look through to see (to put it bluntly) why we were not getting glaring errors all the time...

Some treat 'faction' as a serverKey (i.e. works correctly, but would be nice to change the names for clarity)
Some ignore the parameters passed and lookup the current realm/faction
One (Simple) still expects faction, realm - the only reason this doesn't break is that all the data is stored under AAStatSimpleData.RealmData[realm][serverKey] (I had to check my saved variables file before I would believe this...)


Bryan (brykrys) added a comment - 17/Mar/09 05:46 AM
The matching modules do not conform to serverKey either:
The GetMatchArray function does not take a serverKey parameter.
However both Undercut and BeanCounter matchers are based on current server data.

Nikk (Nechckn) added a comment - 12/Aug/09 03:35 AM
Verified in dev/Trunk: serverKey changes implemented and functioning for all statistics.

Bryan (brykrys) added a comment - 10/Nov/09 07:21 AM - edited
Reopened as incomplete - some API calls still not using serverKey at all (i.e. Matchers ADV-431)

Bryan (brykrys) added a comment - 27/Nov/09 07:58 AM
Contrary to the above, I believe AucAdvanced.API.QueryImage(query, faction, realm, ...) does need to be converted to take serverKey
It may need to split the key, as Auc-Scandata currently stores its database in a [Realm][Faction] format - possibly this needs to be converted as well?
Looking into the code in CoreScan Auc-ScanData, I suspect there may be a bug which prevents other realm data from being accessed properly.

Esteban Santana Santana (MentalPower) added a comment - 27/Nov/09 07:20 PM
Enhancing this to critical since we really should be consistent with our API.

Bryan (brykrys) added a comment - 14/Dec/09 11:52 AM
We're almost done. Right now every API function should accept serverKey if appropriate.

Some blocker issues are still "unresolved" because they currently have temporary conversion code in place, and still need more work. However from the outside they should function correctly using serverKey.

It should now be "safe" to go ahead with writing code that uses serverKey, e.g. unblocking Appraiser's GetPrice and going ahead with ADV-135.