Show:

JsonResultsAdapter Class

A JsonResultsAdapter instance is used to provide custom extraction and parsing logic on the json results returned by any web service. This facility makes it possible for breeze to talk to virtually any web service and return objects that will be first class 'breeze' citizens.

Item Index

Methods

<ctor> JsonResultsAdapter

(
  • config
)

JsonResultsAdapter constructor

Parameters:

  • config Object
    • name String

      The name of this adapter. This name is used to uniquely identify and locate this instance when an 'exported' JsonResultsAdapter is later imported.

    • [extractResults] Function optional

      Called once per service operation to extract the 'payload' from any json received over the wire. This method has a default implementation which to simply return the "results" property from any json returned as a result of executing the query.

    • visitNode Function

      A visitor method that will be called on each node of the returned payload.

Example:

// 
var jsonResultsAdapter = new JsonResultsAdapter({
    name: "test1e",
    extractResults: function(json) {
        return json.results;
    },
    visitNode: function(node, mappingContext, nodeContext) {
        var entityType = normalizeTypeName(node.$type);
        var propertyName = nodeContext.propertyName;
        var ignore = propertyName && propertyName.substr(0, 1) === "$";

        return {
            entityType: entityType,
            nodeId: node.$id,
            nodeRefId: node.$ref,
            ignore: ignore
        };
    }
});

var dataService = new DataService( {
        serviceName: "breeze/foo",
        jsonResultsAdapter: jsonResultsAdapter
});

var entityManager = new EntityManager( {
    dataService: dataService
});