Free cookie consent management tool by TermsFeed Policy Generator

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

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

Worked on OKB (#1174)

File size: 3.5 KB
Line 
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
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    IEnumerable<Platform> GetPlatforms();
37    [OperationContract]
38    long AddPlatform(Platform dto);
39    [OperationContract]
40    void UpdatePlatform(Platform dto);
41    [OperationContract]
42    void DeletePlatform(long id);
43    #endregion
44
45    #region AlgorithmClass Methods
46    [OperationContract]
47    IEnumerable<AlgorithmClass> GetAlgorithmClasses();
48    [OperationContract]
49    long AddAlgorithmClass(AlgorithmClass dto);
50    [OperationContract]
51    void UpdateAlgorithmClass(AlgorithmClass dto);
52    [OperationContract]
53    void DeleteAlgorithmClass(long id);
54    #endregion
55
56    #region Algorithm Methods
57    [OperationContract]
58    IEnumerable<Algorithm> GetAlgorithms();
59    [OperationContract]
60    long AddAlgorithm(Algorithm dto);
61    [OperationContract]
62    void UpdateAlgorithm(Algorithm dto);
63    [OperationContract]
64    void DeleteAlgorithm(long id);
65    [OperationContract]
66    IEnumerable<Guid> GetAlgorithmUsers(long algorithmId);
67    [OperationContract]
68    void UpdateAlgorithmUsers(long algorithmId, IEnumerable<Guid> users);
69    [OperationContract]
70    byte[] GetAlgorithmData(long algorithmId);
71    [OperationContract]
72    void UpdateAlgorithmData(long algorithmId, byte[] data);
73    #endregion
74
75    #region ProblemClass Methods
76    [OperationContract]
77    IEnumerable<ProblemClass> GetProblemClasses();
78    [OperationContract]
79    long AddProblemClass(ProblemClass dto);
80    [OperationContract]
81    void UpdateProblemClass(ProblemClass dto);
82    [OperationContract]
83    void DeleteProblemClass(long id);
84    #endregion
85
86    #region Problem Methods
87    [OperationContract]
88    IEnumerable<Problem> GetProblems();
89    [OperationContract]
90    long AddProblem(Problem dto);
91    [OperationContract]
92    void UpdateProblem(Problem dto);
93    [OperationContract]
94    void DeleteProblem(long id);
95    [OperationContract]
96    IEnumerable<Guid> GetProblemUsers(long problemId);
97    [OperationContract]
98    void UpdateProblemUsers(long problemId, IEnumerable<Guid> users);
99    [OperationContract]
100    byte[] GetProblemData(long problemId);
101    [OperationContract]
102    void UpdateProblemData(long problemId, byte[] data);
103    #endregion
104  }
105}
Note: See TracBrowser for help on using the repository browser.