(evaluation, info, spans, extraInfo)
| 633 | |
| 634 | |
| 635 | export function findSource(evaluation, info, spans, extraInfo) { |
| 636 | let queryId = `query|${info.requestId}`; |
| 637 | let query: any = {tag: ["query", "findSource"]}; |
| 638 | if(info.record) query.recordId = info.record; |
| 639 | if(info.attribute) query.attribute = info.attribute; |
| 640 | if(info.span) query.span = info.span; |
| 641 | |
| 642 | let evSession = evaluation.getDatabase("session"); |
| 643 | let evBrowser = evaluation.getDatabase("browser"); |
| 644 | evSession.nonExecuting = true; |
| 645 | evBrowser.nonExecuting = true; |
| 646 | eve.registerDatabase("evaluation-session", evSession); |
| 647 | eve.registerDatabase("evaluation-browser", evBrowser); |
| 648 | doQuery(queryId, query, spans, extraInfo); |
| 649 | eve.unregisterDatabase("evaluation-session"); |
| 650 | eve.unregisterDatabase("evaluation-browser"); |
| 651 | evSession.nonExecuting = false; |
| 652 | evBrowser.nonExecuting = false; |
| 653 | |
| 654 | let sessionIndex = eve.getDatabase("session").index; |
| 655 | let queryInfo = sessionIndex.alookup("tag", "findSource"); |
| 656 | if(queryInfo) { |
| 657 | let [entity] = queryInfo.toValues(); |
| 658 | let obj = sessionIndex.asObject(entity); |
| 659 | console.log("FIND SOURCE", obj); |
| 660 | if(obj.source) { |
| 661 | info.source = obj.source.map((source) => sessionIndex.asObject(source, false, true)); |
| 662 | return info; |
| 663 | } else if(obj.block) { |
| 664 | info.block = obj.block; |
| 665 | return info; |
| 666 | } else { |
| 667 | info.block = []; |
| 668 | info.source = []; |
| 669 | return info; |
| 670 | } |
| 671 | } |
| 672 | return; |
| 673 | } |
| 674 | |
| 675 | export function findRelated(evaluation, info, spans, extraInfo) { |
| 676 | let queryId = `query|${info.requestId}`; |
nothing calls this directly
no test coverage detected