Quintiq file version 2.0
|
#parent: #root
|
Method SendSystemConfigurationToDMViaSOAP (String systemName_i, String systemQProductName_i, String systemHost_i,
|
Number systemPort_i, Strings channelNames_i, String dmHost_i,
|
Number dmPort_i, String dmDatasetKind_i, String dmDatasetFolder_i,
|
String dmDatasetName_i)
|
{
|
Description: 'Send System configuration to Data Manager Via SOAP'
|
TextBody:
|
[*
|
// Send System configuration to Data Manager
|
soapInterface := LibDMF_SOAPClient::CreateInterface();
|
|
// If the system's hostname is the same with the DataManager's hostname, change it to 'localhost' instead.
|
// A temporary workaround as SOAP is unable to send to the same machine using absolute hostname.
|
soapDMHost := ifexpr( dmHost_i = systemHost_i, "localhost", dmHost_i );
|
|
// Set the SOAP client interface such that the destination dataset of the DataManager could receive the SOAP message
|
// This information was received from DataManager
|
LibDMF_Util::SetSOAPClientInterfaceConfiguration( soapInterface,
|
soapDMHost,
|
dmPort_i,
|
"SOAPServer", // Name of SOAPServer
|
"ReceiveSystemConfiguration", // Name of the SOAP method
|
dmDatasetKind_i,
|
dmDatasetName_i );
|
|
logmessage := "Sending System's configuration to DataManager at '" + dmHost_i + ":" + [String]dmPort_i +
|
"'; Target = '" + dmDatasetKind_i + ":" + dmDatasetFolder_i + "/" + dmDatasetName_i + "' via SOAP";
|
|
// No event hook required, since this method can only be triggered in a System.
|
LibDMF_Util::Log( this.SystemShortName(), logmessage );
|
|
soapInterface.ASync_ReceiveSystemConfiguration( systemName_i, systemQProductName_i,
|
systemHost_i, systemPort_i,
|
channelNames_i.ToString( LibDMF_CommunicationChannelRoot::ChannelNameSeparator() ),
|
this );
|
*]
|
}
|