function callback(error, promiseData)
        {
            if (error || !promiseData)
                return;

            promiseData.sort(this._comparePromises);
            var nodesToInsert = { __proto__: null };
            for (var i = 0; i < promiseData.length; i++) {
                var promise = promiseData[i];
                var status = createElementWithClass("div", "status");
                status.classList.add(promise.status);
                status.createTextChild(promise.status);
                var data = {
                    promiseId: promise.id,
                    status: status
                };
                if (promise.callFrame)
                    data.location = this._linkifier.linkifyConsoleCallFrame(this._target, promise.callFrame);
                if (promise.creationTime && promise.settlementTime && promise.settlementTime >= promise.creationTime)
                    data.tts = Number.millisToString(promise.settlementTime - promise.creationTime, true);
                var node = new WebInspector.DataGridNode(data, false);
                nodesToInsert[promise.id] = { node: node, parentId: promise.parentId };
            }

            var rootNode = this._dataGrid.rootNode();

            for (var id in nodesToInsert) {
                var node = nodesToInsert[id].node;
                var parentId = nodesToInsert[id].parentId;
                var parentNode = (parentId && nodesToInsert[parentId]) ? nodesToInsert[parentId].node : rootNode;
                parentNode.appendChild(node);
                parentNode.expanded = true;
            }
        }
@param {?Protocol.Error} error
@param {?Array.<!DebuggerAgent.PromiseDetails>} promiseData
@this {WebInspector.PromisePane}