Blame view

Vrh.iScheduler.Interface/ISchedulerPlugin.cs 4.41 KB
ab9f2fbe   Schwirg László   Add project files.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using VRH.Common;
  
  namespace Vrh.iScheduler.Interfaces
  {
      /// <summary>
      /// iScheduler beépülők számára készült interface.
      /// </summary>
      public interface ISchedulerPlugin
      {
          #region Properties
  
          /// <summary>
          /// A feladat végrehajtás (TimedTask) során keletkezett napló
          /// bejegyzések listája.
          /// </summary>
          List<string> LogEntries { get; }
  
          /// <summary>
          /// A beépülő neve. Kötelező.
          /// Ha üres, akkor a beépülő betöltésekor kivétel keletkezik.
          /// </summary>
          /// <remarks>
          /// Jelenleg egy típus van az 'iSchedulerReport', de nem fontos csak
          /// az ütemező számára egyedi legyen. De a lényeg, hogy az ütemező
          /// ez alapján tudja majd megtalálni több beépülő esetén, melyiket is kellene 
          /// használnia.
          /// </remarks>
          string Name { get; }
  
          #endregion Properties
  
          #region Methods
  
          /// <summary>
          /// Ütemezett (időzített) feladat végrehajtása.
          /// </summary>
          /// <param name="xml">Az ütemezett objektum típus XmlParser kapcsolati sztringje.</param>
          /// <param name="lcid">A környezetre érvényes nyelvi kód. Ha null, vagy üres, akkor az XML paraméterező fájlban beállított lesz az érvényes.</param>
          /// <param name="objectId">Az ütemezett objektum azonosítója.</param>
          /// <param name="operationId">Az ütemezett objektumon elvégzendő művelet azonosítója.</param>
          /// <param name="timeStamp">Az ütemezés ideje (OperationTime mező értéke) 'yyyyMMddHHmmss' sztring formátumban.</param>
          /// <param name="groupId">
          /// Az ütemezett objektum csoport azonosítója.
          /// Opcionális, ha üres vagy null, akkor az xml paraméterfájlban megadott lesz érvényes.
          /// </param>
          /// <returns>
          /// Egy <c>ReturnInfoJSON</c> objektum a message részében formázott html üzenettel.
          /// </returns>
262a1443   Schwirg László   v1.2.0
54
          ReturnInfoJSON ExecuteScheduledTask(string xml, string lcid, string objectId, string operationId, string timeStamp, string groupId = null);
ab9f2fbe   Schwirg László   Add project files.
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
  
          /// <summary>
          /// Ütemezendő objektumok létezésének ellenőrzése.
          /// Az ütemező a <paramref name="objectList"/>-ben felsorolja, mely
          /// objektumokat ellenőrzi.
          /// </summary>
          /// <param name="xml">Az ütemezett objektum típus XmlParser kapcsolati sztringje.</param>
          /// <param name="objectList">Az ellenőrzendő objektumok listája, vesszővel elválasztva.</param>
          /// <param name="groupId">
          /// Az ütemezett objektum csoport azonosítója. 
          /// Opcionális, ha üres vagy null, akkor az xml paraméterfájlban megadott lesz érvényes.
          /// </param>
          /// <returns>
          /// Egy <c>CheckListJSON</c> elemekből álló lista.
          /// Ha nincs elem, akkor üres lista lesz az eredmény, nem null.
          /// </returns>
          List<CheckListJSON> CheckObjects(string xml, string objectList, string groupId = null);
  
          /// <summary>
          /// Az ütemezhető objektumok listája.
          /// </summary>
          /// <param name="xml">Az ütemezett objektum típus XmlParser kapcsolati sztringje.</param>
          /// <param name="isActiveOnly">
          /// Igaz, ha csak az aktív jelölésú ütemezhető objektumok kellenek.
          /// Alapértelmezett értéke: true.
          /// </param>
          /// <param name="groupId">
          /// Az ütemezett objektum csoport azonosítója. 
          /// Opcionális, ha üres vagy null, akkor az xml paraméterfájlban megadott lesz érvényes.
          /// </param>
          /// <returns>
          /// Egy <c>SelectListJSON</c> elemekből álló lista.
          /// Ha nincs elem, akkor üres lista lesz az eredmény, nem null.
          /// </returns>
          List<SelectListJSON> ListObjects(string xml, bool isActiveOnly = true, string groupId = null);
  
  
          /// <summary>
          /// Az ütemezésben kezdeményezhető műveletek listája.
          /// </summary>
          /// <returns>
          /// Egy <c>SelectListJSON</c> elemekből álló lista.
          /// Ha nincs elem, akkor üres lista lesz az eredmény, nem null.
          /// </returns>
          List<SelectListJSON> ListOperations();
          #endregion Methods
      }
  }