Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ReceiveMetadataRequest (owning NamedValueTree nvt_i, NamedValue body_i, LibDEF_System sender_i,  
 | 
  LibDEF_IntegrationEvent event_i) 
 | 
{ 
 | 
  Description: 'Receive Metadata-Request message, to be handled by the System of the sender, or the System representing local.' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Jacky CHAN May-18-2016 (created) 
 | 
    LibDEF_Util::EventLog( event_i, "Processing Metadata-Request message" ); 
 | 
     
 | 
    // some Metadata messages should be handled by the local System 
 | 
    systemLocal := this.SystemLocal(); 
 | 
     
 | 
    // retrieve type 
 | 
    type := LibDEF_DataAccessor::GetMetadataHeaderPropertyAsString( nvt_i, LibDEF_DataAccessor::HEADER_TYPE() ); 
 | 
     
 | 
    if( type = LibDEF_DataAccessor::TYPE_METADATA_SETTYPECREATED() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestSetTypeCreated( nvt_i, body_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETTYPEDELETED() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestSetTypeDeleted( nvt_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETDELETED() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestSetDeleted( nvt_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETCREATED() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestSetCreated( nvt_i, body_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETUPDATED() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestSetUpdated( nvt_i, body_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_GETCHANNELSMETADATA() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestGetChannelsMetadata( nvt_i, body_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_GETSETLIST() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestGetSetsForSetType( nvt_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETINTERESTCREATED() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestSetInterestCreated( &nvt_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETINTERESTDELETED() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestSetInterestDeleted( &nvt_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETTYPEINTERESTCREATED() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestSetTypeInterestCreated( &nvt_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_SETTYPEINTERESTDELETED() ) 
 | 
    { 
 | 
      systemLocal.ReceiveMetadataRequestSetTypeInterestDeleted( &nvt_i, sender_i, event_i ); 
 | 
    } 
 | 
    else if( type = LibDEF_DataAccessor::TYPE_METADATA_HALTDATATRANSFER() ) 
 | 
    { 
 | 
      sender_i.ReceiveMetadataRequestHaltDataTransfer( nvt_i, event_i ); 
 | 
    } 
 | 
    else 
 | 
    { 
 | 
      LibDEF_Util::EventLogError( event_i,  
 | 
                                  "Failed to process Metadata-Request message", 
 | 
                                  "Failed to process Metadata-Request message, no handler defined for the Type '" + type + "'." ); 
 | 
    } 
 | 
  *] 
 | 
} 
 |