PublicQuery(IInstanceContext context, string appPath, string name, string stream, IBlock block) { var wrapLog = Log.Call($"path:{appPath}, name:{name}"); if (string.IsNullOrEmpty(name)) { throw HttpException.MissingParam(nameof(name)); } var appIdentity = AppFinder.GetAppIdFromPath(appPath); var queryApp = Factory.Resolve <Apps.App>().Init(appIdentity, ConfigurationProvider.Build(false, false), false, Log); // now just run the default query check and serializer var result = BuildQueryAndRun(queryApp, name, stream, false, context, Log, block?.EditAllowed ?? false); wrapLog(null); return(result); }
public Dictionary <string, IEnumerable <Dictionary <string, object> > > PublicQuery(string appPath, string name, string stream) { var wrapLog = Log.Call($"path:{appPath}, name:{name}"); if (string.IsNullOrEmpty(name)) { throw HttpException.MissingParam(nameof(name)); } var appCtx = _ctxResolver.AppOrBlock(appPath); var queryApp = ServiceProvider.Build <Apps.App>().Init(appCtx.AppState, ServiceProvider.Build <AppConfigDelegate>().Init(Log).Build(appCtx.UserMayEdit), Log); // now just run the default query check and serializer var result = BuildQueryAndRun(queryApp, name, stream, false, appCtx, Log, appCtx.UserMayEdit); wrapLog(null); return(result); }