Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/08/15 15:51:32 (9 years ago)
Author:
dglaser
Message:

#2388:

HeuristicLab.Services.Access:
HeuristicLab.Services.Access.DataAccess:

  • Changed connection strings and certificates for local usage

HeuristicLab.Services.Hive.DataAccess:

  • Added compiled queries for frequently used queries
  • Integrated string queries from OptimizedHiveDao

HeuristicLab.Services.Hive:

  • Added NewHeartbeatManager.cs
  • Added NewRoundRobinTaskScheduler.cs
  • Added PerformanceLogger
  • Updated AuthoriziationManager
  • Updated NewHiveService
    • Added Regions
    • Implemented missing methods
    • Improved performance of several queries

HeuristicLab.Services.WebApp.Status:

  • Fixed a bug which caused an error when calculating the average waiting time.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HiveStatistics/sources/HeuristicLab.Services.Hive.DataAccess/3.3/Daos/ResourcePermissionDao.cs

    r12468 r12691  
    2121
    2222using System;
     23using System.Collections.Generic;
    2324using System.Data.Linq;
     25using System.Linq;
    2426
    2527namespace HeuristicLab.Services.Hive.DataAccess.Daos {
     
    3032      throw new NotImplementedException();
    3133    }
     34
     35    public IEnumerable<ResourcePermission> GetByResourceId(Guid id) {
     36      return GetByResourceIdGetByIdQuery(DataContext, id);
     37    }
     38
     39    public void DeleteByResourceAndGrantedUserId(Guid resourceId, IEnumerable<Guid> grantedUserId) {
     40      string paramIds = string.Join(",", grantedUserId.Select(x => string.Format("'{0}'", x)));
     41      if (!string.IsNullOrWhiteSpace(paramIds)) {
     42        string query = string.Format(DeleteByGrantedUserQuery, resourceId, paramIds);
     43        DataContext.ExecuteCommand(query);
     44      }
     45    }
     46
     47    #region Compiled queries
     48    private static readonly Func<DataContext, Guid, IEnumerable<ResourcePermission>> GetByResourceIdGetByIdQuery =
     49      CompiledQuery.Compile((DataContext db, Guid resourceId) =>
     50        from resourcePermission in db.GetTable<ResourcePermission>()
     51        where resourcePermission.ResourceId == resourceId
     52        select resourcePermission);
     53    #endregion
     54
     55    #region String queries
     56    private const string DeleteByGrantedUserQuery =
     57      @"DELETE FROM [ResourcePermission]
     58         WHERE ResourceId = '{0}'
     59           AND GrantedUserId IN ({1});";
     60    #endregion
    3261  }
    3362}
Note: See TracChangeset for help on using the changeset viewer.