This one was perhaps one of the more frustrating models. It's a simple design, checking maps of string arrays for accurate changes - but the combinations make it a bit of a challenge. I hope I've caught the variations correctly. Bloody swagger, the sooner you go away, the easier all of our lies will be.
Designs for handling multiple versions of objects have been set, seems clean and scalable. Generic functions for handling maps has been added also, which will cut down time moving forward.
Parameter dependencies mean we're back in the ball of yarn stage. Coverage is going to drop for a bit, until all the new hashing and interfaces are in place.
Multiple polymorphic, deeply embedded schemas cause resolving issues as a channel waits forever due to a counting issue.
This has been resolved.
Signed-off-by: Dave Shanley <dshanley@splunk.com>
The example was not being pulled through correctly, it was throwing the whole low.NodeReference in there. This has been resolved now and the value of the example is correctly pulled through to the MediaType high level object.
Signed-off-by: Dave Shanley <dave@quobix.com>
A client of high-level SchemaProxy may want to know whether a schema
is a reference and the name of the reference. This information is
available from methods GetSchemaReference() and IsSchemaReference()
in low-level SchemaProxy. Provide a GoLow() method to retrieve the
low-level SchemaProxy for a high-level SchemaProxy.
A feature request from Travis Newhouse to make it easier to know which primitives have been set, and which have not. defaulting everything to 0 or false just doesn't work so well.
Which has led to a new wider hashing capability for the low level API. hashing makes it very easy to determine changes quickly, without having to run comparisons to discover changes, could really speed things up moving forward.
Design is more uniformed and standardized, patterns are bubbling up. I think we're ready to tackle the schema soon.
Signed-off-by: Dave Shanley <dave@quobix.com>
Still quite early in the pattern finding process, needs another sweep to cache and fetch more pre-calculated change counts.
Signed-off-by: Dave Shanley <dave@quobix.com>
tried to make some more generic patterns, but I think it's about as thin as it can be now, some boilerplate will be required.
Signed-off-by: Dave Shanley <dave@quobix.com>
3.0 and 2.0 do not work, there are multiple versions and anything with a period in it sucks from my point of view, v2 and v3 feel much better from a DX perspective.