1- using Bll . Domain . Services ;
1+ using Bll . Domain . Interfaces ;
2+ using Bll . Domain . Services ;
23
34namespace Bll . Domain . Entities ;
45
@@ -7,80 +8,19 @@ public class Source : ISource
78 public int SourceId { get ; set ; }
89 public int Priority { get ; set ; }
910 public int SerialNumber { get ; set ; }
10- public Request GetNewRequest ( )
11- {
12- var generatedRequest = new Request ( SourceId , SerialNumber , DateTime . Now , DateTime . Now . AddMilliseconds ( 5.0 ) ) ;
13- SerialNumber ++ ;
14- return generatedRequest ;
15- }
16- }
17-
18- class Source
19- {
20- public Request sourceRequests { get ; set ; }
21- public int numberSource { get ; set ; }
22- public int serialNumber { get ; set ; } = 0 ;
23-
24- public int priority { get ; set ; } = 0 ;
25-
26- public int declined { get ; set ; } = 0 ;
27-
28- public float Tpreb { get ; set ; } = 0 ;
29-
30- public float TObcl { get ; set ; } = 0 ;
31-
32- public float Tbp { get ; set ; } = 0 ;
33-
34- public int TbpAmount { get ; set ; } = 0 ; // кол-во заявок в буфере этого источника
35-
36- public List < float > allRequetsOfSource { get ; set ; }
37-
38- public List < float > allTbp { get ; set ; }
39-
40- public Source ( int numberSource , int serialNumber , int priority )
11+ public ITimeProvider Time { get ; set ; }
12+ public Source ( int sourceId , int priority , int serialNumber , ITimeProvider time )
4113 {
42- this . numberSource = numberSource ;
43- this . serialNumber = serialNumber ;
44- this . priority = priority ;
45- this . declined = 0 ;
46- this . TObcl = 0 ;
47- this . Tbp = 0 ;
48- allRequetsOfSource = new List < float > ( ) ;
49- allTbp = new List < float > ( ) ;
50- // random first request
51- sourceRequests = new Request ( Program . time + ( ( float ) Program . random . NextDouble ( ) ) / 100 , numberSource , serialNumber ) ;
52- serialNumber ++ ;
53- allRequetsOfSource . Add ( sourceRequests . dateTime ) ;
14+ SourceId = sourceId ;
15+ Priority = priority ;
16+ SerialNumber = serialNumber ;
17+ Time = time ;
5418 }
5519
56- public Source ( ) { }
57-
58- public float GetTimeRequest ( )
20+ public Request GetNewRequest ( )
5921 {
60- if ( sourceRequests == null ) return - 1 ;
61- return sourceRequests . dateTime ;
22+ var generatedRequest = new Request ( SourceId , SerialNumber , Time . Now , DateTime . Now . AddMilliseconds ( 5.0 ) ) ;
23+ SerialNumber ++ ;
24+ return generatedRequest ;
6225 }
63-
64- public Request GetNewRequest ( ) // отдаём текущую сгенирированную и генерируем новую
65- {
66- Request temp = this . sourceRequests ;
67- float prevTime = temp . dateTime ;
68-
69- serialNumber ++ ;
70- sourceRequests = null ;
71- // генерировать следующую заявку источника
72- sourceRequests = new Request ( prevTime + Program . timeOfSourceGenerateNewRequest , numberSource , serialNumber ) ;
73-
74- Program . numberOfRequestsWereGenerated ++ ;
75-
76- if ( Program . numberOfRequestsWereGenerated >= Program . totalRequestGenerate )
77- {
78- sourceRequests = null ;
79- // больше не генерируем
80- }
81-
82- Program . allRequestInSystem . Add ( temp ) ;
83- allRequetsOfSource . Add ( temp . dateTime ) ;
84- // возращаем текущую
85- return temp ;
86- }
26+ }
0 commit comments