Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/10/16 22:31:28 (8 years ago)
Author:
abeham
Message:

#2588:

  • Returning id in add solution method
  • Added method to delete solutions
  • Added client methods in RunCreationClient that match the service methods
  • Made all service methods non-static in RunCreationClient
Location:
trunk/sources/HeuristicLab.Services.OKB/3.3/RunCreation
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Services.OKB/3.3/RunCreation/IRunCreationService.cs

    r13683 r13684  
    5252
    5353    [OperationContract]
    54     [FaultContract(typeof(MissingProblem))]
    55     void AddSolution(Solution solution, byte[] data);
     54    long AddSolution(Solution solution, byte[] data);
     55
     56    [OperationContract]
     57    void DeleteSolution(Solution solution);
    5658
    5759    [OperationContract]
  • trunk/sources/HeuristicLab.Services.OKB/3.3/RunCreation/RunCreationService.cs

    r13683 r13684  
    169169    }
    170170
    171     public void AddSolution(DataTransfer.Solution solution, byte[] data) {
     171    public long AddSolution(DataTransfer.Solution solution, byte[] data) {
    172172      roleVerifier.AuthenticateForAnyRole(OKBRoles.OKBAdministrator, OKBRoles.OKBUser);
    173173
     
    177177          DataAccess.SingleObjectiveSolution entity = Convert.ToEntity(soSolution, data, okb);
    178178          okb.SingleObjectiveSolutions.InsertOnSubmit(entity);
     179          okb.SubmitChanges();
     180          return entity.Id;
     181        }
     182      }
     183      throw new FaultException(new FaultReason("The solution could not be added."));
     184    }
     185
     186    public void DeleteSolution(DataTransfer.Solution solution) {
     187      roleVerifier.AuthenticateForAnyRole(OKBRoles.OKBAdministrator, OKBRoles.OKBUser);
     188
     189      using (OKBDataContext okb = new OKBDataContext()) {
     190        var soSolution = solution as DataTransfer.SingleObjectiveSolution;
     191        if (soSolution != null) {
     192          okb.SingleObjectiveSolutions.DeleteOnSubmit(okb.SingleObjectiveSolutions.Single(x => x.Id == soSolution.Id));
    179193          okb.SubmitChanges();
    180194        }
Note: See TracChangeset for help on using the changeset viewer.