Free cookie consent management tool by TermsFeed Policy Generator

source: branches/OKB (trunk integration)/HeuristicLab.Services.OKB/3.3/Administration/IAdministrationService.cs @ 5479

Last change on this file since 5479 was 5479, checked in by swagner, 14 years ago

Worked on OKB (#1174)

File size: 4.2 KB
RevLine 
[4279]1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21
[4467]22using System;
[4426]23using System.Collections.Generic;
[4279]24using System.Net.Security;
25using System.ServiceModel;
[4455]26using HeuristicLab.Services.OKB.DataTransfer;
[4279]27
[5479]28namespace HeuristicLab.Services.OKB.Administration {
[4279]29  /// <summary>
[5299]30  /// Interface of the OKB administration service.
[4455]31  /// </summary>
[4279]32  [ServiceContract(ProtectionLevel = ProtectionLevel.EncryptAndSign)]
[5299]33  public interface IAdministrationService {
[4467]34    #region Platform Methods
[4407]35    [OperationContract]
[4455]36    Platform GetPlatform(long id);
[4442]37    [OperationContract]
38    IEnumerable<Platform> GetPlatforms();
39    [OperationContract]
[4481]40    long AddPlatform(Platform dto);
[4442]41    [OperationContract]
[4481]42    void UpdatePlatform(Platform dto);
43    [OperationContract]
[4455]44    void DeletePlatform(long id);
[4467]45    #endregion
[4442]46
[4481]47    #region DataType Methods
48    [OperationContract]
49    DataType GetDataType(long id);
50    [OperationContract]
51    long AddDataType(DataType dto);
52    #endregion
53
[5389]54    #region BinaryData Methods
55    [OperationContract]
56    long GetBinaryDataId(byte[] hash);
57    [OperationContract]
58    long AddBinaryData(BinaryData dto);
59    #endregion
60
[4467]61    #region AlgorithmClass Methods
[4442]62    [OperationContract]
[4455]63    AlgorithmClass GetAlgorithmClass(long id);
[4407]64    [OperationContract]
[4426]65    IEnumerable<AlgorithmClass> GetAlgorithmClasses();
[4407]66    [OperationContract]
[4481]67    long AddAlgorithmClass(AlgorithmClass dto);
[4407]68    [OperationContract]
[4481]69    void UpdateAlgorithmClass(AlgorithmClass dto);
70    [OperationContract]
[4455]71    void DeleteAlgorithmClass(long id);
[4467]72    #endregion
[4279]73
[4467]74    #region Algorithm Methods
[4407]75    [OperationContract]
[4455]76    Algorithm GetAlgorithm(long id);
[4407]77    [OperationContract]
[4426]78    IEnumerable<Algorithm> GetAlgorithms();
[4407]79    [OperationContract]
[4481]80    long AddAlgorithm(Algorithm dto);
[4407]81    [OperationContract]
[4481]82    void UpdateAlgorithm(Algorithm dto);
83    [OperationContract]
[4455]84    void DeleteAlgorithm(long id);
[4467]85    [OperationContract]
86    IEnumerable<Guid> GetAlgorithmUsers(long algorithmId);
87    [OperationContract]
[4481]88    void UpdateAlgorithmUsers(long algorithmId, IEnumerable<Guid> users);
[4467]89    [OperationContract]
[5389]90    BinaryData GetAlgorithmData(long algorithmId);
[4467]91    #endregion
92
[4481]93    #region ProblemClass Methods
[4467]94    [OperationContract]
[4481]95    ProblemClass GetProblemClass(long id);
[4467]96    [OperationContract]
[4481]97    IEnumerable<ProblemClass> GetProblemClasses();
[4467]98    [OperationContract]
[4481]99    long AddProblemClass(ProblemClass dto);
[4467]100    [OperationContract]
[4481]101    void UpdateProblemClass(ProblemClass dto);
102    [OperationContract]
103    void DeleteProblemClass(long id);
[4467]104    #endregion
[4481]105
106    #region Problem Methods
107    [OperationContract]
108    Problem GetProblem(long id);
109    [OperationContract]
110    IEnumerable<Problem> GetProblems();
111    [OperationContract]
112    long AddProblem(Problem dto);
113    [OperationContract]
114    void UpdateProblem(Problem dto);
115    [OperationContract]
116    void DeleteProblem(long id);
117    [OperationContract]
118    IEnumerable<Guid> GetProblemUsers(long problemId);
119    [OperationContract]
120    void UpdateProblemUsers(long problemId, IEnumerable<Guid> users);
121    [OperationContract]
[5389]122    BinaryData GetProblemData(long problemId);
[4481]123    #endregion
[4566]124
[4591]125    #region Run Methods
126    [OperationContract]
127    Run GetRun(long id);
128    [OperationContract]
[5389]129    IEnumerable<Run> GetRuns(long algorithmId, long problemId);
[4591]130    [OperationContract]
131    long AddRun(Run dto);
132    [OperationContract]
133    void DeleteRun(long id);
134    #endregion
[4279]135  }
136}
Note: See TracBrowser for help on using the repository browser.