internal IBlockDataSource GetBlockDataSource(IBlock block, ILookUpEngine configurationProvider) { // var log = new Log("DS.CreateV", parentLog, "will create view data source"); var view = block.View; var showDrafts = block.Context.UserMayEdit; Log.Add($"mid#{block.Context.Module.Id}, draft:{showDrafts}, template:{block.View?.Name}"); // Get ModuleDataSource var dsFactory = _dataSourceFactory.Init(Log); // new DataSource(log); //var block = builder.Block; var initialSource = dsFactory.GetPublishing(block, showDrafts, configurationProvider); var moduleDataSource = dsFactory.GetDataSource <CmsBlock>(initialSource); //moduleDataSource.InstanceId = instanceId; moduleDataSource.OverrideView = view; moduleDataSource.UseSxcInstanceContentGroup = true; // If the Template has a Data-Pipeline, use an empty upstream, else use the ModuleDataSource created above var viewDataSourceUpstream = view?.Query == null ? moduleDataSource : null; Log.Add($"use pipeline upstream:{viewDataSourceUpstream != null}"); var viewDataSource = dsFactory.GetDataSource <Block>(block, viewDataSourceUpstream, configurationProvider); // Take Publish-Properties from the View-Template if (view != null) { viewDataSource.Publish.Enabled = view.PublishData; viewDataSource.Publish.Streams = view.StreamsToPublish; Log.Add($"use template, & pipe#{view.Query?.Id}"); // Append Streams of the Data-Pipeline (this doesn't require a change of the viewDataSource itself) if (view.Query != null) { Log.Add("Generate query"); var query = _queryLazy.Value.Init(block.App.ZoneId, block.App.AppId, view.Query.Entity, configurationProvider, showDrafts, viewDataSource, Log); Log.Add("attaching"); viewDataSource.SetOut(query); //viewDataSource.Out = query.Out; } } else { Log.Add("no template override"); } return(viewDataSource); }
/// <inheritdoc /> public T CreateSource <T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null) where T : IDataSource { if (configurationProvider == null) { configurationProvider = ConfigurationProvider; } if (inSource != null) { return(DataSourceFactory.GetDataSource <T>(inSource, inSource, configurationProvider)); } var userMayEdit = (CmsContext as CmsContext)?.Context?.UserMayEdit ?? false; var initialSource = DataSourceFactory.GetPublishing( App, userMayEdit, ConfigurationProvider as LookUpEngine); return(DataSourceFactory.GetDataSource <T>(initialSource, initialSource, configurationProvider)); }
/// <inheritdoc /> public T CreateSource <T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null) where T : IDataSource { if (configurationProvider == null) { configurationProvider = ConfigurationProvider; } if (inSource != null) { return(DataSourceFactory.GetDataSource <T>(inSource, inSource, configurationProvider)); } var userMayEdit = Block.EditAllowed; var initialSource = DataSourceFactory.GetPublishing( App, userMayEdit, ConfigurationProvider as LookUpEngine); return(DataSourceFactory.GetDataSource <T>(initialSource, initialSource, configurationProvider)); }
public IDataSource CreateSource(string typeName = "", IDataSource inSource = null, ILookUpEngine lookUpEngine = null) => throw new Exception($"CreateSource(string, ...) {NotSupportedIn10}. Please use CreateSource<DataSourceTypeName>(...) instead.");
/// <inheritdoc /> public T CreateSource <T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null) where T : IDataSource => DynCode.CreateSource <T>(inSource, configurationProvider);
public IDataSource CreateSource(string typeName = "", IDataSource inSource = null, ILookUpEngine lookUpEngine = null) => new DynamicCodeObsolete(DynCode).CreateSource(typeName, inSource, lookUpEngine);
public T CreateSource <T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null) where T : IDataSource { throw new NotImplementedException(); }
/// <inheritdoc /> public T CreateSource <T>(IDataSource inSource = null, ILookUpEngine configurationProvider = null) where T : IDataSource => UnwrappedContents.CreateSource <T>(inSource, configurationProvider);
public IDataSource CreateSource(string typeName = "", IDataSource inSource = null, ILookUpEngine lookUpEngine = null) { if (lookUpEngine == null) { lookUpEngine = DynCode.ConfigurationProvider; } if (inSource != null) { return(DynCode.DataSourceFactory.GetDataSource(typeName, inSource, inSource, lookUpEngine)); } var userMayEdit = DynCode.Block?.Context?.UserMayEdit ?? false; var initialSource = DynCode.DataSourceFactory.GetPublishing( DynCode.App, userMayEdit, DynCode.ConfigurationProvider as LookUpEngine); return(typeName != "" ? DynCode.DataSourceFactory.GetDataSource(typeName, initialSource, initialSource, lookUpEngine) : initialSource); }
public TokenReplaceEav(ILookUpEngine lookUpEngine) : base(lookUpEngine) { }
internal static IBlockDataSource ForContentGroupInSxc(IBlockBuilder blockBuilder, IView view, ILookUpEngine configurationProvider, ILog parentLog, int instanceId = 0) { var log = new Log("DS.CreateV", parentLog, "will create view data source"); var showDrafts = blockBuilder.UserMayEdit; log.Add($"mid#{instanceId}, draft:{showDrafts}, template:{view?.Name}"); // Get ModuleDataSource var dsFactory = new DataSource(log); var initialSource = dsFactory.GetPublishing(blockBuilder.Block, showDrafts, configurationProvider); var moduleDataSource = dsFactory.GetDataSource <CmsBlock>(initialSource); moduleDataSource.InstanceId = instanceId; moduleDataSource.OverrideView = view; moduleDataSource.UseSxcInstanceContentGroup = true; // If the Template has a Data-Pipeline, use an empty upstream, else use the ModuleDataSource created above var viewDataSourceUpstream = view?.Query == null ? moduleDataSource : null; log.Add($"use pipeline upstream:{viewDataSourceUpstream != null}"); var viewDataSource = dsFactory.GetDataSource <Block>(blockBuilder.Block, viewDataSourceUpstream, configurationProvider); // Take Publish-Properties from the View-Template if (view != null) { viewDataSource.Publish.Enabled = view.PublishData; viewDataSource.Publish.Streams = view.StreamsToPublish; log.Add($"use template, & pipe#{view.Query?.Id}"); // Append Streams of the Data-Pipeline (this doesn't require a change of the viewDataSource itself) if (view.Query != null) { log.Add("Generate query"); var query = new Query(blockBuilder.App.ZoneId, blockBuilder.App.AppId, view.Query.Entity, configurationProvider, showDrafts, viewDataSource, parentLog); log.Add("attaching"); viewDataSource.Out = query.Out; //// build the query and attach it to the view-data-source //new QueryBuilder(parentLog) // .BuildQuery(view.Query, configurationProvider, /*paramsLookUp*/null , viewDataSource, showDrafts); } } else { log.Add("no template override"); } return(viewDataSource); }
public TokenReplaceEav(int instanceId, ILookUpEngine lookUpEngine) : base(lookUpEngine) => InitAppAndPortalSettings(instanceId /*, lookUpEngine*/);
/// <summary> /// Generate a delegate which will be used to build the configuration based existing stuff /// </summary> internal static Func <App, IAppDataConfiguration> Build(bool showDrafts, bool publishingEnabled, ILookUpEngine config) => appToUse => new AppDataConfiguration(showDrafts, publishingEnabled, config);
/// <summary> /// Generate a delegate which will be used to build the configuration based existing stuff /// </summary> internal static Func <App, IAppDataConfiguration> Build(bool userMayEdit, bool publishingEnabled, ILookUpEngine config) => appToUse => new AppDataConfiguration(userMayEdit, publishingEnabled, config);