Free cookie consent management tool by TermsFeed Policy Generator

source: branches/2893_BNLR/HeuristicLab.Services.OKB/3.3/Administration/IAdministrationService.cs @ 17169

Last change on this file since 17169 was 15583, checked in by swagner, 7 years ago

#2640: Updated year of copyrights in license headers

File size: 3.8 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2018 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
22using System;
23using System.Collections.Generic;
24using System.Net.Security;
25using System.ServiceModel;
26using HeuristicLab.Services.OKB.Administration.DataTransfer;
27
28namespace HeuristicLab.Services.OKB.Administration {
29  /// <summary>
30  /// Interface of the OKB administration service.
31  /// </summary>
32  [ServiceContract(ProtectionLevel = ProtectionLevel.EncryptAndSign)]
33  public interface IAdministrationService {
34    #region Platform Methods
35    [OperationContract]
36    Platform GetPlatform(long id);
37    [OperationContract]
38    IEnumerable<Platform> GetPlatforms();
39    [OperationContract]
40    long AddPlatform(Platform dto);
41    [OperationContract]
42    void UpdatePlatform(Platform dto);
43    [OperationContract]
44    void DeletePlatform(long id);
45    #endregion
46
47    #region AlgorithmClass Methods
48    [OperationContract]
49    AlgorithmClass GetAlgorithmClass(long id);
50    [OperationContract]
51    IEnumerable<AlgorithmClass> GetAlgorithmClasses();
52    [OperationContract]
53    long AddAlgorithmClass(AlgorithmClass dto);
54    [OperationContract]
55    void UpdateAlgorithmClass(AlgorithmClass dto);
56    [OperationContract]
57    void DeleteAlgorithmClass(long id);
58    #endregion
59
60    #region Algorithm Methods
61    [OperationContract]
62    Algorithm GetAlgorithm(long id);
63    [OperationContract]
64    IEnumerable<Algorithm> GetAlgorithms();
65    [OperationContract]
66    long AddAlgorithm(Algorithm dto);
67    [OperationContract]
68    void UpdateAlgorithm(Algorithm dto);
69    [OperationContract]
70    void DeleteAlgorithm(long id);
71    [OperationContract]
72    IEnumerable<Guid> GetAlgorithmUsers(long algorithmId);
73    [OperationContract]
74    void UpdateAlgorithmUsers(long algorithmId, IEnumerable<Guid> users);
75    [OperationContract]
76    byte[] GetAlgorithmData(long algorithmId);
77    [OperationContract]
78    void UpdateAlgorithmData(long algorithmId, byte[] data);
79    #endregion
80
81    #region ProblemClass Methods
82    [OperationContract]
83    ProblemClass GetProblemClass(long id);
84    [OperationContract]
85    IEnumerable<ProblemClass> GetProblemClasses();
86    [OperationContract]
87    long AddProblemClass(ProblemClass dto);
88    [OperationContract]
89    void UpdateProblemClass(ProblemClass dto);
90    [OperationContract]
91    void DeleteProblemClass(long id);
92    #endregion
93
94    #region Problem Methods
95    [OperationContract]
96    Problem GetProblem(long id);
97    [OperationContract]
98    IEnumerable<Problem> GetProblems();
99    [OperationContract]
100    long AddProblem(Problem dto);
101    [OperationContract]
102    void UpdateProblem(Problem dto);
103    [OperationContract]
104    void DeleteProblem(long id);
105    [OperationContract]
106    IEnumerable<Guid> GetProblemUsers(long problemId);
107    [OperationContract]
108    void UpdateProblemUsers(long problemId, IEnumerable<Guid> users);
109    [OperationContract]
110    byte[] GetProblemData(long problemId);
111    [OperationContract]
112    void UpdateProblemData(long problemId, byte[] data);
113    #endregion
114  }
115}
Note: See TracBrowser for help on using the repository browser.