Exemplo n.º 1
0
        private void LinkNestedLinkedSourcesById(object linkedSource, IReadOnlyList <Type> referenceTypesToBeLoaded)
        {
            var loadLinkExpressionsForLinkedSource = _loadLinkProtocol.GetLoadLinkExpressions(linkedSource);

            foreach (var referenceType in referenceTypesToBeLoaded)
            {
                var loadLinkExpressionsForReference = loadLinkExpressionsForLinkedSource.Where(e => e.ReferenceTypes.Contains(referenceType));
                foreach (var loadLinkExpression in loadLinkExpressionsForReference)
                {
                    loadLinkExpression.LinkNestedLinkedSourceById(linkedSource, this, referenceType, _loadLinkProtocol);
                }
            }
        }
Exemplo n.º 2
0
 public void LinkNestedLinkedSourcesById(IEnumerable <Type> referenceTypes)
 {
     foreach (var referenceType in referenceTypes)
     {
         foreach (var linkedSource in LinkedSourcesToBeBuilt)
         {
             var loadLinkExpressions = _loadLinkProtocol.GetLoadLinkExpressions(linkedSource, referenceType);
             foreach (var loadLinkExpression in loadLinkExpressions)
             {
                 loadLinkExpression.LinkNestedLinkedSourceById(linkedSource, this, referenceType, _loadLinkProtocol);
             }
         }
     }
 }
Exemplo n.º 3
0
        private void LinkNestedLinkedSourcesFromModel(object linkedSource, LoadLinkProtocol loadLinkProtocol)
        {
            var loadLinkExpressions = loadLinkProtocol.GetLoadLinkExpressions(linkedSource);

            foreach (var loadLinkExpression in loadLinkExpressions)
            {
                loadLinkExpression.LinkNestedLinkedSourceFromModel(
                    linkedSource,
                    this,
                    loadLinkProtocol
                    );
            }
        }
Exemplo n.º 4
0
        private void AddLookupIdsForLinkedSource(LookupContext lookupContext, object linkedSource, IReadOnlyList <Type> referenceTypesToBeLoaded)
        {
            var loadLinkExpressionsForLinkedSource = _loadLinkProtocol.GetLoadLinkExpressions(linkedSource);

            foreach (var referenceType in referenceTypesToBeLoaded)
            {
                var loadLinkExpressionsForReference = loadLinkExpressionsForLinkedSource.Where(e => e.ReferenceTypes.Contains(referenceType));
                foreach (var loadLinkExpression in loadLinkExpressionsForReference)
                {
                    loadLinkExpression.AddLookupIds(linkedSource, lookupContext, referenceType);
                }
            }
        }
Exemplo n.º 5
0
        private LookupContext GetLookupContextForLoadingLevel(List <Type> referenceTypes)
        {
            var lookupContext = new LookupContext();

            foreach (var referenceType in referenceTypes)
            {
                foreach (var linkedSource in _linker.LinkedSourcesToBeBuilt)
                {
                    var loadLinkExpressions = _loadLinkProtocol.GetLoadLinkExpressions(linkedSource, referenceType);
                    foreach (var loadLinkExpression in loadLinkExpressions)
                    {
                        loadLinkExpression.AddLookupIds(linkedSource, lookupContext, referenceType);
                    }
                }
            }

            return(lookupContext);
        }