Example #1
0
        private IList <T> InnerDoQuery(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder, int max, int skip)
        {
            ArchiveExecutionContext executionContext = _archiveExecutionContextProvider.Get();

            if (executionContext == null)
            {
                throw new InvalidOperationException(nameof(executionContext) + " not set, cannot be null");
            }

            ArchiveQueryParameters context = new ArchiveQueryParameters();

            context.ArchiveName      = executionContext.ArchiveName;
            context.Entities         = executionContext.Entities;
            context.RequestedColumns = DynamicPropertyHelper.GetAllDbColumnsPrefixed <T>();
            int page = 0;

            if (skip > 0)
            {
                page = SetPageSizeAndGetPage(skip, max, context);
            }
            if (restrictionBuilder != null)
            {
                context.Restrictions = restrictionBuilder.GetRestrictions();
            }
            if (orderByBuilder != null)
            {
                context.OrderBy = orderByBuilder.Get();
            }

            return(_resultParser.Parse <T>(executionContext, _executor.GetItems(context, max, page)));
        }
Example #2
0
 public T DoQuerySingle(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null)
 {
     DoQuerySingleCalled     = true;
     this.RestrictionBuilder = restrictionBuilder;
     this.OrderByBuilder     = orderByBuilder;
     return(default(T));
 }
Example #3
0
 public IList <T> DoQuery(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null, int noItems = 0, int page = 0)
 {
     this.RestrictionBuilder = restrictionBuilder;
     this.OrderByBuilder     = orderByBuilder;
     this.NoItems            = noItems;
     this.Page = page;
     return(new List <T>());
 }
Example #4
0
        public T DoQuerySingle(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null)
        {
            IList <T> result = InnerDoQuery(restrictionBuilder, orderByBuilder, 1, 0);

            if (result != null)
            {
                return(result.FirstOrDefault());
            }
            else
            {
                return(default(T));
            }
        }
Example #5
0
 public IList <T> DoQuery(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null, int noItems = 0, int skip = 0)
 {
     return(InnerDoQuery(restrictionBuilder, orderByBuilder, noItems, skip));
 }
 public ICollection <T> GetList(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null)
 {
     return(_archiveWrapper.DoQuery(restrictionBuilder, orderByBuilder));
 }
 public T GetFirst(RestrictionBuilderBase restrictionBuilder, OrderByBuilder orderByBuilder = null)
 {
     return(_archiveWrapper.DoQuerySingle(restrictionBuilder, orderByBuilder));
 }