lazhen
2025-01-09 8afe90b633046db39042aada36b88193062f8cff
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
Quintiq file version 2.0
#parent: #root
Method SendDataRequestSetCreated (LibDEF_Set set_i, LibDEF_Systems targets_i)
{
  Description: 'Send a Data-Request message of that Set which has been created in DataRepository.'
  TextBody:
  [*
    // To save performance cost, cache the NVT of the set here so we can avoid redoing the NVT export of the Set inside the methods called below.
    setNvt := NamedValueTreeIO::Export( set_i );
    isNewSet := true;
    
    /**** NON-CHUNKED TRANSMISSION ****/
    targetsWithoutChunking := selectset( targets_i, Elements, target,
                                         not target.CanSendDataByChunking() );
    
    if( targetsWithoutChunking.Size() > 0 )
    { 
      this.SendDataRequestSetBulkTransmission( targetsWithoutChunking, set_i, isNewSet, setNvt );
    }
    
    /**** CHUNKED TRANSMISSION ****/
    targetsWithChunking := targets_i.Difference( targetsWithoutChunking );
    if( targetsWithChunking.Size() > 0 )
    {
      this.SendDataRequestSetChunkedTransmission( targetsWithChunking, set_i, isNewSet, setNvt );
    }
  *]
  InterfaceProperties { Accessibility: 'Module' }
}