Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/16/15 11:50:41 (9 years ago)
Author:
dglaser
Message:

#2388:

HeuristicLab.Services.WebApp-3.3:

  • Fixed a bug which caused the PluginManager to not reload an existing plugin
  • Changed Path.PathSeparator to Path.DirectorySeparatorChar

HeuristicLab.Services.Hive-3.3:

  • HiveStatisticsGenerator.cs: When moving a client to another group is now recognized properly
  • Fixed the 'unknown user' problem

Installers/HiveJanitorServiceInstaller.nsi:

  • Added HeuristicLab.Services.Access.DataAccess.dll
Location:
branches/HiveStatistics/sources/HeuristicLab.Services.Hive/3.3
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/HiveStatistics/sources/HeuristicLab.Services.Hive/3.3/HeuristicLab.Services.Hive-3.3.csproj

    r12691 r12765  
    189189  </ItemGroup>
    190190  <ItemGroup>
     191    <ProjectReference Include="..\..\HeuristicLab.Services.Access.DataAccess\3.3\HeuristicLab.Services.Access.DataAccess-3.3.csproj">
     192      <Project>{0F652437-998A-4EAB-8BF1-444B5FE8CE97}</Project>
     193      <Name>HeuristicLab.Services.Access.DataAccess-3.3</Name>
     194    </ProjectReference>
    191195    <ProjectReference Include="..\..\HeuristicLab.Services.Access\3.3\HeuristicLab.Services.Access-3.3.csproj">
    192196      <Project>{9FAC0B23-2730-452A-9BA0-D7CA1746C541}</Project>
  • branches/HiveStatistics/sources/HeuristicLab.Services.Hive/3.3/HiveStatisticsGenerator.cs

    r12551 r12765  
    2424using System.Data.Linq;
    2525using System.Linq;
     26using HeuristicLab.Services.Access.DataAccess;
    2627using HeuristicLab.Services.Hive.DataAccess;
    2728using HeuristicLab.Services.Hive.DataAccess.Manager;
     
    150151        }
    151152        if (totalTasks == completedTasks) {
    152           dimJob.DateCompleted = factTaskDao.GetLastCompletedTaskFromJob(dimJob.JobId);
     153          dimJob.DateCompleted = factTaskDao.GetLastCompletedTaskFromJob(dimJob.JobId) ?? DateTime.Now;
    153154        }
    154155        dimJob.TotalTasks = totalTasks;
     
    171172        join client in recentlyAddedClients on slave.ResourceId equals client.ResourceId
    172173        where (slave.Name != client.Name
     174               || slave.ParentResourceId == null && client.ResourceGroupId != null // because both can be null and null comparison
     175               || slave.ParentResourceId != null && client.ResourceGroupId == null // does return no entry on the sql server
    173176               || slave.ParentResourceId != client.ResourceGroupId
    174                || slave.ParentResource.ParentResourceId != client.ResourceGroup2Id)
     177               || ((slave.ParentResource != null) && slave.ParentResource.ParentResourceId != client.ResourceGroup2Id))
    175178        select new {
    176179          SlaveId = slave.ResourceId,
     
    186189          x.Name,
    187190          ResourceGroupId = x.ParentResourceId,
    188           GroupName = x.ParentResource.Name,
    189           ResourceGroup2Id = x.ParentResource.ParentResourceId,
    190           GroupName2 = x.ParentResource.ParentResource.Name
     191          GroupName = x.ParentResource != null ? x.ParentResource.Name : null,
     192          ResourceGroup2Id = x.ParentResource != null ? x.ParentResource.ParentResourceId : null,
     193          GroupName2 = x.ParentResource != null ? x.ParentResource.ParentResource != null ? x.ParentResource.ParentResource.Name : null : null
    191194        })
    192195        .ToList();
     
    311314    private string GetUserName(Guid userId) {
    312315      try {
    313         var userManager = ServiceLocator.Instance.UserManager;
    314         var user = userManager.GetUserById(userId);
    315         return user != null ? user.UserName : UnknownUserName;
     316        // we cannot use the ServiceLocator.Instance.UserManager since the janitor service
     317        // is not hosted in the iis the MemberShip.GetUser method causes exceptions
     318        // needs to be further investigated current workaround: use the authenticationcontext
     319        // we could also connect to the access service to get the user name
     320        using (ASPNETAuthenticationDataContext dc = new ASPNETAuthenticationDataContext()) {
     321          var user = dc.aspnet_Users.SingleOrDefault(x => x.UserId == userId);
     322          return user != null ? user.UserName : UnknownUserName;
     323        }
    316324      }
    317325      catch (Exception) {
Note: See TracChangeset for help on using the changeset viewer.