Quintiq file version 2.0
|
#parent: #root
|
StaticMethod Create (LibDEF_DataBroker owner_i, String guid_i, String hostName_i,
|
Number portNumber_i) as LibDEF_System
|
{
|
Description:
|
[*
|
Create and assign primary-key attributes.
|
Also check for primary keys like TypeIndex.
|
*]
|
TextBody:
|
[*
|
// Jacky CHAN Apr-19-2016 (created)
|
// SystemByGUID
|
duplicatedGUID := LibDEF_System::FindSystemByGUID( owner_i, guid_i );
|
if( not isnull( duplicatedGUID ) )
|
{
|
LibDEF_Util::LogErrorInstanceUniqueness( typeof( LibDEF_System ), duplicatedGUID.GetInstanceKeyGUIDAsString() );
|
}
|
|
// SystemByCoordinate
|
duplicatedCoordinate := LibDEF_System::FindSystemByCoordinate( owner_i, hostName_i, portNumber_i );
|
if( not isnull( duplicatedCoordinate ) )
|
{
|
LibDEF_Util::LogErrorInstanceUniqueness( typeof( LibDEF_System ), duplicatedCoordinate.GetInstanceKeyCoordinateAsString() );
|
}
|
|
return owner_i.System( relnew,
|
GUID := guid_i,
|
HostName := LibDEF_Util::ConvertLocalhost( hostName_i ),
|
PortNumber := portNumber_i,
|
// always treat a System is available on creation
|
IsAvailable := true );
|
*]
|
}
|