public ResourceBE GetResource(uint? parentId, ResourceBE.ParentType? parentType, ResourceBE.Type resourceType, string name, DeletionFilter deletionStateFilter) { if(name == null) { throw new ArgumentNullException("name"); } uint[] parentids = parentId == null ? new uint[] { } : new[] { parentId.Value }; return GetResources(parentids, parentType, new[] { resourceType }, new[] { name }, deletionStateFilter, null, null, null).FirstOrDefault(); }
public ResourceQuery WithDeletionFilter(DeletionFilter deletionFilter) { State s = new State(_state); s.resourceDeletionFilter = deletionFilter; return(new ResourceQuery(s)); }
// -- Constructors -- public State() { resourceRevision = ResourceBE.HEADREVISION; resourceDeletionFilter = DeletionFilter.ANY; changeType = ResourceBE.ChangeOperations.UNDEFINED; populateContent = true; }
public State(State s) { resourceRevision = s.resourceRevision; resourceDeletionFilter = s.resourceDeletionFilter; populateContent = s.populateContent; populateRevisions = s.populateRevisions; populateResourceCountOnly = s.populateResourceCountOnly; parentType = s.parentType; if(!ArrayUtil.IsNullOrEmpty(s.resourceIds)) { resourceIds = new List<uint>(s.resourceIds); } if(!ArrayUtil.IsNullOrEmpty(s.parentIds)) { parentIds = new List<uint>(s.parentIds); } if(!ArrayUtil.IsNullOrEmpty(s.resourceTypes)) { resourceTypes = new List<ResourceBE.Type>(s.resourceTypes); } if(!ArrayUtil.IsNullOrEmpty(s.nameFilter)) { nameFilter = new List<string>(s.nameFilter); } if(!ArrayUtil.IsNullOrEmpty(s.orderClauses)) { orderClauses = (ResourceOrderClause[])s.orderClauses.Clone(); } if(!ArrayUtil.IsNullOrEmpty(s.changeSetId)) { changeSetId = new List<uint>(s.changeSetId).ToArray(); } changeType = s.changeType; limit = s.limit; offset = s.offset; }
public List <ActualDataEntity> GetDeletions() { var deletions = DeletionFilter.GetDeletions(Parameters, DataContext); var groupedDeletions = from res in deletions group res by new { res.RepDate.Date, res.RepDate.Hour } into groupedRes orderby groupedRes.Key.Date, groupedRes.Key.Hour select new ActualDataEntity { Day = groupedRes.Key.Date, Hour = groupedRes.Key.Hour, Number = groupedRes.Sum(d => d.Value) }; var returned = groupedDeletions.ToList(); return(returned); }
// -- Constructors -- public State() { resourceBE = ResourceBE.New(ResourceBE.Type.UNDEFINED); resourceDeletionFilter = DeletionFilter.ANY; revisionVisibilityFilter = VisibilityFilter.ANY; resourceIds = null; nameFilter = null; parentIds = null; parentType = ResourceBE.Type.UNDEFINED; resourceTypes = null; changeSetId = null; changeType = ResourceBE.ChangeOperations.UNDEFINED; populateResourceCountOnly = false; populateContent = true; populateRevisions = false; populateChildResourcesForRev = false; populateChildResources = false; orderClauses = null; limit = null; offset = null; }
public State(State s) { resourceRevision = s.resourceRevision; resourceDeletionFilter = s.resourceDeletionFilter; populateContent = s.populateContent; populateRevisions = s.populateRevisions; populateResourceCountOnly = s.populateResourceCountOnly; parentType = s.parentType; if (!ArrayUtil.IsNullOrEmpty(s.resourceIds)) { resourceIds = new List <uint>(s.resourceIds); } if (!ArrayUtil.IsNullOrEmpty(s.parentIds)) { parentIds = new List <uint>(s.parentIds); } if (!ArrayUtil.IsNullOrEmpty(s.resourceTypes)) { resourceTypes = new List <ResourceBE.Type>(s.resourceTypes); } if (!ArrayUtil.IsNullOrEmpty(s.nameFilter)) { nameFilter = new List <string>(s.nameFilter); } if (!ArrayUtil.IsNullOrEmpty(s.orderClauses)) { orderClauses = (ResourceOrderClause[])s.orderClauses.Clone(); } if (!ArrayUtil.IsNullOrEmpty(s.changeSetId)) { changeSetId = new List <uint>(s.changeSetId).ToArray(); } changeType = s.changeType; limit = s.limit; offset = s.offset; }
public ResourceBE GetPageAttachment(ulong pageId, string filename, DeletionFilter deletionFilter) { return _resourceBL.GetResource((uint)pageId, ResourceBE.ParentType.PAGE, ResourceBE.Type.FILE, filename, deletionFilter); }
public ResourceBE GetPageAttachment(ulong pageId, string filename, DeletionFilter deletionFilter) { return(_resourceBL.GetResource((uint)pageId, ResourceBE.ParentType.PAGE, ResourceBE.Type.FILE, filename, deletionFilter)); }
public IList<ResourceBE> Resources_GetByQuery(IList<uint> parentIds, ResourceBE.Type parentType, IList<ResourceBE.Type> resourceTypes, IList<string> names, DeletionFilter deletionStateFilter, bool? populateRevisions, uint? offset, uint? limit) { ResourceQuery rq = new ResourceQuery(); rq = rq.WithParent(parentIds, parentType); rq = rq.WithResourceType(resourceTypes); rq = rq.WithNames(names); rq = rq.WithDeletionFilter(deletionStateFilter); rq = rq.IncludeRevisions(populateRevisions ?? false); rq = rq.Limit(limit); rq = rq.Offset(offset); rq = rq.OrderBy(ResourceQuery.ResourceOrderClause.SortTable.RESOURCES, "res_id", SortDirection.ASC); return rq.SelectList(Catalog, "Resources_Get"); }
//--- Methods --- #region ResourceDA query wrappers public IList <ResourceBE> GetResources(IList <uint> parentids, ResourceBE.ParentType?parentType, IList <ResourceBE.Type> resourceTypes, IList <string> names, DeletionFilter deletionStateFilter, bool?populateRevisions, uint?limit, uint?offset) { return(DbUtils.CurrentSession.Resources_GetByQuery(parentids, parentType, resourceTypes, names, deletionStateFilter, populateRevisions, offset, limit)); }
public IList <ResourceBE> Resources_GetByQuery(IList <uint> parentIds, ResourceBE.ParentType?parentType, IList <ResourceBE.Type> resourceTypes, IList <string> names, DeletionFilter deletionStateFilter, bool?populateRevisions, uint?offset, uint?limit) { ResourceQuery rq = new ResourceQuery(); rq = rq.WithParent(parentIds, parentType); rq = rq.WithResourceType(resourceTypes); rq = rq.WithNames(names); rq = rq.WithDeletionFilter(deletionStateFilter); rq = rq.IncludeRevisions(populateRevisions ?? false); rq = rq.Limit(limit); rq = rq.Offset(offset); rq = rq.OrderBy(ResourceQuery.ResourceOrderClause.SortTable.RESOURCES, "res_id", SortDirection.ASC); return(rq.SelectList(Catalog, "Resources_Get")); }
public IList <ResourceBE> GetResources(uint?parentId, ResourceBE.ParentType parentType, IList <ResourceBE.Type> resourceTypes, string[] names, DeletionFilter deletionStateFilter) { uint[] parentids = parentId == null ? new uint[] { } : new[] { parentId.Value }; return(GetResources(parentids, parentType, resourceTypes, names, deletionStateFilter, null, null, null)); }
public ResourceBE GetResource(uint?parentId, ResourceBE.ParentType?parentType, ResourceBE.Type resourceType, string name, DeletionFilter deletionStateFilter) { if (name == null) { throw new ArgumentNullException("name"); } uint[] parentids = parentId == null ? new uint[] { } : new[] { parentId.Value }; return(GetResources(parentids, parentType, new[] { resourceType }, new[] { name }, deletionStateFilter, null, null, null).FirstOrDefault()); }
private ResourceBE GetAttachmentFromUrl(DreamContext context, bool mustExist, out PageBE page, bool allowRevs, bool allowDeleted) { ResourceBE file = null; int revision = ResourceBE.HEADREVISION; page = null; string revStr = DreamContext.Current.GetParam("revision", "head").Trim(); if (allowRevs) { if (!StringUtil.EqualsInvariantIgnoreCase(revStr, "head") && !StringUtil.EqualsInvariantIgnoreCase(revStr, "0")) { if (!int.TryParse(revStr, out revision)) { throw new RevisionHeadOrIntInvalidArgumentException(); } } } else if (!StringUtil.EqualsInvariantIgnoreCase(revStr, "head") && !StringUtil.EqualsInvariantIgnoreCase(revStr, "0")) { throw new AttachmentUnsupportedRevisionInvalidArgumentException(); } uint fileId = DreamContext.Current.GetParam <uint>("fileid", 0); if (fileId != 0) { uint resourceId = ResourceMapBL.GetResourceIdByFileId(fileId) ?? 0; if (resourceId > 0) { // use resourceid to retrieve attachment file = ResourceBL.Instance.GetResourceRevision(resourceId, revision); } if (file != null) { page = PageBL.GetPageById(file.ParentPageId.Value); } } else { // use filename to retrieve attachment string fileName = GetFilenameFromPathSegment(DreamContext.Current.GetParam <string>("filename")); page = PageBL_GetPageFromUrl(context, true); DeletionFilter deleteFilter = allowDeleted ? DeletionFilter.ANY : DeletionFilter.ACTIVEONLY; file = AttachmentBL.Instance.GetPageAttachment(page.ID, fileName, deleteFilter); if (revision != ResourceBE.HEADREVISION) { file = ResourceBL.Instance.GetResourceRevision(file.ResourceId, revision); } } if (file == null) { if (mustExist) { throw new AttachmentNotFoundException(); } } else { if (!allowDeleted) { if (file.ResourceIsDeleted || page == null) { // TODO (maxm): Throw a 404 status if file is not marked as deleted but the parent page cannot be found. // This may be caused by an unfinished page delete operation that didn't mark the file as deleted. throw new AttachmentRemovedNotFoundException(); } } } return(file); }
//--- Methods --- #region ResourceDA query wrappers public IList<ResourceBE> GetResources(IList<uint> parentids, ResourceBE.ParentType? parentType, IList<ResourceBE.Type> resourceTypes, IList<string> names, DeletionFilter deletionStateFilter, bool? populateRevisions, uint? limit, uint? offset) { return DbUtils.CurrentSession.Resources_GetByQuery(parentids, parentType, resourceTypes, names, deletionStateFilter, populateRevisions, offset, limit); }
public ResourceQuery WithDeletionFilter(DeletionFilter deletionFilter) { State s = new State(_state); s.resourceDeletionFilter = deletionFilter; return new ResourceQuery(s); }
public IList<ResourceBE> GetResources(uint? parentId, ResourceBE.ParentType parentType, IList<ResourceBE.Type> resourceTypes, string[] names, DeletionFilter deletionStateFilter) { uint[] parentids = parentId == null ? new uint[] { } : new[] { parentId.Value }; return GetResources(parentids, parentType, resourceTypes, names, deletionStateFilter, null, null, null); }
public IList<ResourceBE> Resources_GetByQuery(IList<uint> parentIds, ResourceBE.ParentType? parentType, IList<ResourceBE.Type> resourceTypes, IList<string> names, DeletionFilter deletionStateFilter, bool? populateRevisions, uint? offset, uint? limit) { Stopwatch sw = Stopwatch.StartNew(); var ret = _next.Resources_GetByQuery(parentIds, parentType, resourceTypes, names, deletionStateFilter, populateRevisions, offset, limit); LogQuery(CATEGORY_RESOURCE, "Resources_GetByQuery", sw, "parentIds", parentIds, "parentType", parentType, "resourceTypes", resourceTypes, "names", names, "deletionStateFilter", deletionStateFilter, "populateRevisions", populateRevisions, "offset", offset, "limit", limit); return ret; }