Changeset 5295 for branches/OKB/HeuristicLab.Services.OKB/3.3
- Timestamp:
- 01/14/11 05:34:43 (14 years ago)
- Location:
- branches/OKB
- Files:
-
- 12 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/OKB
- Property svn:ignore
-
old new 1 1 *.suo 2 TestResults
-
- Property svn:ignore
-
branches/OKB/HeuristicLab.Services.OKB/3.3/Convert.cs
r4591 r5295 47 47 public static DT.DataType ToDto(DA.DataType source) { 48 48 if (source == null) return null; 49 return new DT.DataType { Id = source.Id, Name = source.Name, SqlName = source.SqlName, PlatformId = source.PlatformId };49 return new DT.DataType { Id = source.Id, Name = source.Name, TypeName = source.TypeName, SqlName = source.SqlName, PlatformId = source.PlatformId }; 50 50 } 51 51 public static DA.DataType ToEntity(DT.DataType source) { 52 52 if (source == null) return null; 53 return new DA.DataType { Id = source.Id, Name = source.Name, SqlName = source.SqlName, PlatformId = source.PlatformId };53 return new DA.DataType { Id = source.Id, Name = source.Name, TypeName = source.TypeName, SqlName = source.SqlName, PlatformId = source.PlatformId }; 54 54 } 55 55 public static void ToEntity(DT.DataType source, DA.DataType target) { 56 56 if ((source != null) && (target != null)) { 57 target.Id = source.Id; target.Name = source.Name; target. SqlName = source.SqlName; target.PlatformId = source.PlatformId;57 target.Id = source.Id; target.Name = source.Name; target.TypeName = source.TypeName; target.SqlName = source.SqlName; target.PlatformId = source.PlatformId; 58 58 } 59 59 } … … 515 515 public static DT.Run ToDto(DA.Run source) { 516 516 if (source == null) return null; 517 DT.Run target = new DT.Run { Id = source.Id, RandomSeed = source.RandomSeed, FinishedDate = source.FinishedDate, ExperimentId = source.ExperimentId, UserId = source.UserId, ClientId = source.ClientId };517 DT.Run target = new DT.Run { Id = source.Id, RandomSeed = source.RandomSeed, CreatedDate = source.CreatedDate, ExperimentId = source.ExperimentId, UserId = source.UserId, ClientId = source.ClientId }; 518 518 519 519 List<DT.ResultValue> resultValues = new List<DT.ResultValue>(); … … 540 540 public static void ToEntity(DT.Run source, DA.Run target) { 541 541 if ((source != null) && (target != null)) { 542 target.Id = source.Id; target.RandomSeed = source.RandomSeed; target. FinishedDate = source.FinishedDate; target.ExperimentId = source.ExperimentId; target.UserId = source.UserId; target.ClientId = source.ClientId;542 target.Id = source.Id; target.RandomSeed = source.RandomSeed; target.CreatedDate = source.CreatedDate; target.ExperimentId = source.ExperimentId; target.UserId = source.UserId; target.ClientId = source.ClientId; 543 543 544 544 foreach (DT.ResultBlobValue value in source.ResultValues.OfType<DT.ResultBlobValue>()) -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/AlgorithmDataDataTypeNameFilter.cs
r5286 r5295 33 33 switch (Comparison) { 34 34 case DataTransfer.SetComparison.Equal: 35 return x => x.Experiment.Algorithm.AlgorithmData.DataType.Name == Value;35 return x => (x.Experiment.Algorithm.AlgorithmData.DataType.Name == Value) || (x.Experiment.Algorithm.AlgorithmData.DataType.TypeName == Value); 36 36 case DataTransfer.SetComparison.NotEqual: 37 return x => x.Experiment.Algorithm.AlgorithmData.DataType.Name != Value;37 return x => (x.Experiment.Algorithm.AlgorithmData.DataType.Name != Value) && (x.Experiment.Algorithm.AlgorithmData.DataType.TypeName != Value); 38 38 case DataTransfer.SetComparison.Contains: 39 return x => x.Experiment.Algorithm.AlgorithmData.DataType.Name.Contains(Value) ;39 return x => x.Experiment.Algorithm.AlgorithmData.DataType.Name.Contains(Value) || x.Experiment.Algorithm.AlgorithmData.DataType.TypeName.Contains(Value); 40 40 case DataTransfer.SetComparison.NotContains: 41 return x => !x.Experiment.Algorithm.AlgorithmData.DataType.Name.Contains(Value) ;41 return x => !x.Experiment.Algorithm.AlgorithmData.DataType.Name.Contains(Value) && !x.Experiment.Algorithm.AlgorithmData.DataType.TypeName.Contains(Value); 42 42 default: 43 43 return x => true; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/AlgorithmParameterBlobValueDataTypeNameFilter.cs
r5286 r5295 35 35 switch (Comparison) { 36 36 case DataTransfer.SetComparison.Equal: 37 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && ( y.DataType.Name == Value));37 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && ((y.DataType.Name == Value) || (y.DataType.TypeName == Value))); 38 38 case DataTransfer.SetComparison.NotEqual: 39 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && ( y.DataType.Name != Value));39 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && ((y.DataType.Name != Value) && (!(y.DataType.TypeName != Value)))); 40 40 case DataTransfer.SetComparison.Contains: 41 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && y.DataType.Name.Contains(Value));41 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && (y.DataType.Name.Contains(Value) || y.DataType.TypeName.Contains(Value))); 42 42 case DataTransfer.SetComparison.NotContains: 43 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && !y.DataType.Name.Contains(Value));43 return x => x.Experiment.AlgorithmParameterBlobValues.Any(y => ((y.AlgorithmParameter.Name == Name) || (y.AlgorithmParameter.Alias == Name)) && (!y.DataType.Name.Contains(Value) && !y.DataType.TypeName.Contains(Value))); 44 44 default: 45 45 return x => true; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/ProblemDataDataTypeNameFilter.cs
r5286 r5295 33 33 switch (Comparison) { 34 34 case DataTransfer.SetComparison.Equal: 35 return x => x.Experiment.Problem.ProblemData.DataType.Name == Value;35 return x => (x.Experiment.Problem.ProblemData.DataType.Name == Value) || (x.Experiment.Problem.ProblemData.DataType.TypeName == Value); 36 36 case DataTransfer.SetComparison.NotEqual: 37 return x => x.Experiment.Problem.ProblemData.DataType.Name != Value;37 return x => (x.Experiment.Problem.ProblemData.DataType.Name != Value) && (x.Experiment.Problem.ProblemData.DataType.TypeName != Value); 38 38 case DataTransfer.SetComparison.Contains: 39 return x => x.Experiment.Problem.ProblemData.DataType.Name.Contains(Value) ;39 return x => x.Experiment.Problem.ProblemData.DataType.Name.Contains(Value) || x.Experiment.Problem.ProblemData.DataType.TypeName.Contains(Value); 40 40 case DataTransfer.SetComparison.NotContains: 41 return x => !x.Experiment.Problem.ProblemData.DataType.Name.Contains(Value) ;41 return x => !x.Experiment.Problem.ProblemData.DataType.Name.Contains(Value) && !x.Experiment.Problem.ProblemData.DataType.TypeName.Contains(Value); 42 42 default: 43 43 return x => true; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/ProblemParameterBlobValueDataTypeNameFilter.cs
r5286 r5295 35 35 switch (Comparison) { 36 36 case DataTransfer.SetComparison.Equal: 37 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && ( y.DataType.Name == Value));37 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && ((y.DataType.Name == Value) || (y.DataType.TypeName == Value))); 38 38 case DataTransfer.SetComparison.NotEqual: 39 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && ( y.DataType.Name != Value));39 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && ((y.DataType.Name != Value) && (!(y.DataType.TypeName != Value)))); 40 40 case DataTransfer.SetComparison.Contains: 41 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && y.DataType.Name.Contains(Value));41 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && (y.DataType.Name.Contains(Value) || y.DataType.TypeName.Contains(Value))); 42 42 case DataTransfer.SetComparison.NotContains: 43 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && !y.DataType.Name.Contains(Value));43 return x => x.Experiment.ProblemParameterBlobValues.Any(y => ((y.ProblemParameter.Name == Name) || (y.ProblemParameter.Alias == Name)) && (!y.DataType.Name.Contains(Value) && !y.DataType.TypeName.Contains(Value))); 44 44 default: 45 45 return x => true; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/ResultBlobValueDataTypeNameFilter.cs
r5286 r5295 35 35 switch (Comparison) { 36 36 case DataTransfer.SetComparison.Equal: 37 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && ( y.DataType.Name == Value));37 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && ((y.DataType.Name == Value) || (y.DataType.TypeName == Value))); 38 38 case DataTransfer.SetComparison.NotEqual: 39 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && ( y.DataType.Name != Value));39 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && ((y.DataType.Name != Value) && (!(y.DataType.TypeName != Value)))); 40 40 case DataTransfer.SetComparison.Contains: 41 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && y.DataType.Name.Contains(Value));41 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && (y.DataType.Name.Contains(Value) || y.DataType.TypeName.Contains(Value))); 42 42 case DataTransfer.SetComparison.NotContains: 43 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && !y.DataType.Name.Contains(Value));43 return x => x.ResultBlobValues.Any(y => ((y.Result.Name == Name) || (y.Result.Alias == Name)) && (!y.DataType.Name.Contains(Value) && !y.DataType.TypeName.Contains(Value))); 44 44 default: 45 45 return x => true; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/RunCreatedDateFilter.cs
r5294 r5295 25 25 26 26 namespace HeuristicLab.Services.OKB { 27 public class Run FinishedDateFilter : IFilter {27 public class RunCreatedDateFilter : IFilter { 28 28 public DataTransfer.OrdinalComparison Comparison { get; set; } 29 29 public DateTime Value { get; set; } … … 33 33 switch (Comparison) { 34 34 case DataTransfer.OrdinalComparison.Less: 35 return x => x. FinishedDate < Value;35 return x => x.CreatedDate < Value; 36 36 case DataTransfer.OrdinalComparison.LessOrEqual: 37 return x => x. FinishedDate <= Value;37 return x => x.CreatedDate <= Value; 38 38 case DataTransfer.OrdinalComparison.Equal: 39 return x => x. FinishedDate == Value;39 return x => x.CreatedDate == Value; 40 40 case DataTransfer.OrdinalComparison.GreaterOrEqual: 41 return x => x. FinishedDate >= Value;41 return x => x.CreatedDate >= Value; 42 42 case DataTransfer.OrdinalComparison.Greater: 43 return x => x. FinishedDate > Value;43 return x => x.CreatedDate > Value; 44 44 case DataTransfer.OrdinalComparison.NotEqual: 45 return x => x. FinishedDate != Value;45 return x => x.CreatedDate != Value; 46 46 default: 47 47 return x => true; … … 50 50 } 51 51 52 public Run FinishedDateFilter(DataTransfer.OrdinalComparison comparison, DateTime value) {52 public RunCreatedDateFilter(DataTransfer.OrdinalComparison comparison, DateTime value) { 53 53 Comparison = comparison; 54 54 Value = value; 55 55 } 56 public Run FinishedDateFilter(DataTransfer.OrdinalComparisonDateTimeFilter filter) {56 public RunCreatedDateFilter(DataTransfer.OrdinalComparisonDateTimeFilter filter) { 57 57 Comparison = filter.Comparison; 58 58 Value = filter.Value; -
branches/OKB/HeuristicLab.Services.OKB/3.3/Filters/RunRandomSeedFilter.cs
r5286 r5295 27 27 public class RunRandomSeedFilter : IFilter { 28 28 public DataTransfer.OrdinalComparison Comparison { get; set; } 29 public intValue { get; set; }29 public long Value { get; set; } 30 30 31 31 public Expression<Func<Run, bool>> Expression { … … 50 50 } 51 51 52 public RunRandomSeedFilter(DataTransfer.OrdinalComparison comparison, intvalue) {52 public RunRandomSeedFilter(DataTransfer.OrdinalComparison comparison, long value) { 53 53 Comparison = comparison; 54 54 Value = value; 55 55 } 56 public RunRandomSeedFilter(DataTransfer.OrdinalComparison IntFilter filter) {56 public RunRandomSeedFilter(DataTransfer.OrdinalComparisonLongFilter filter) { 57 57 Comparison = filter.Comparison; 58 58 Value = filter.Value; -
branches/OKB/HeuristicLab.Services.OKB/3.3/HeuristicLab.Services.OKB-3.3.csproj
r5286 r5295 141 141 <Compile Include="Filters\ProblemParameterNameFilter.cs" /> 142 142 <Compile Include="Filters\ResultNameFilter.cs" /> 143 <Compile Include="Filters\RunCreatedDateFilter.cs" /> 143 144 <Compile Include="Filters\RunRandomSeedFilter.cs" /> 144 <Compile Include="Filters\RunFinishedDateFilter.cs" />145 145 <Compile Include="Filters\RunClientNameFilter.cs" /> 146 146 <Compile Include="Filters\RunUserNameFilter.cs" /> -
branches/OKB/HeuristicLab.Services.OKB/3.3/Interfaces/IOKBService.cs
r5286 r5295 197 197 IEnumerable<Filter> GetFilters(); 198 198 [OperationContract] 199 long QueryNumberOfRuns(Filter filter); 200 [OperationContract] 199 201 IEnumerable<Run> QueryRuns(Filter filter); 200 202 #endregion -
branches/OKB/HeuristicLab.Services.OKB/3.3/OKBService.cs
r5286 r5295 577 577 578 578 // run filters 579 filters.Add(new DataTransfer.OrdinalComparison IntFilter(typeof(RunRandomSeedFilter).AssemblyQualifiedName, "Run Random Seed"));580 filters.Add(new DataTransfer.OrdinalComparisonDateTimeFilter(typeof(Run FinishedDateFilter).AssemblyQualifiedName, "Run Finished Date"));579 filters.Add(new DataTransfer.OrdinalComparisonLongFilter(typeof(RunRandomSeedFilter).AssemblyQualifiedName, "Run Random Seed")); 580 filters.Add(new DataTransfer.OrdinalComparisonDateTimeFilter(typeof(RunCreatedDateFilter).AssemblyQualifiedName, "Run Created Date")); 581 581 filters.Add(new DataTransfer.SetComparisonStringFilter(typeof(RunUserNameFilter).AssemblyQualifiedName, "Run User Name")); 582 582 filters.Add(new DataTransfer.SetComparisonStringFilter(typeof(RunClientNameFilter).AssemblyQualifiedName, "Run Client Name")); … … 644 644 } 645 645 return filters.OrderBy(x => x.Label); 646 } 647 public long QueryNumberOfRuns(DataTransfer.Filter filter) { 648 using (OKBDataContext okb = new OKBDataContext()) { 649 IFilter convertedFilter = (IFilter)Activator.CreateInstance(Type.GetType(filter.FilterTypeName), filter); 650 return okb.Runs.Where(convertedFilter.Expression).LongCount(); 651 } 646 652 } 647 653 public IEnumerable<DataTransfer.Run> QueryRuns(DataTransfer.Filter filter) { … … 708 714 //okb.LoadOptions = dlo; 709 715 716 DataLoadOptions dlo = new DataLoadOptions(); 717 dlo.LoadWith<Run>(x => x.ResultBlobValues); 718 dlo.LoadWith<Run>(x => x.ResultBoolValues); 719 dlo.LoadWith<Run>(x => x.ResultFloatValues); 720 dlo.LoadWith<Run>(x => x.ResultIntValues); 721 dlo.LoadWith<Run>(x => x.ResultStringValues); 722 okb.LoadOptions = dlo; 723 710 724 IFilter convertedFilter = (IFilter)Activator.CreateInstance(Type.GetType(filter.FilterTypeName), filter); 711 var runs = okb.Runs.Where(convertedFilter.Expression); 712 return runs.Select(x => Convert.ToDto(x)).ToArray(); 725 var runs = okb.Runs.Where(convertedFilter.Expression).ToArray(); 726 var result = runs.Select(x => Convert.ToDto(x)).ToArray(); 727 return result; 713 728 } 714 729 } -
branches/OKB/HeuristicLab.Services.OKB/3.3/app.config
r4548 r5295 62 62 <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="AspNetSqlMembershipProvider" /> 63 63 </serviceCredentials> 64 <dataContractSerializer maxItemsInObjectGraph="6553600" /> 64 65 </behavior> 65 66 </serviceBehaviors>
Note: See TracChangeset
for help on using the changeset viewer.