// <ModuleSAs>, It is work around code.\r
// \r
primaryKey1 = UsageInstance.getPrimaryKey(modules.get(index).module.getModuleName(), \r
- translateSchemaStringToUUID(modules.get(index).module.getModuleGuid()),\r
- modules.get(index).module.getPackageName(), \r
- translateSchemaStringToUUID(modules.get(index).module.getPackageGuid()), \r
+ null,\r
+ null, \r
+ null, \r
modules.get(index).module.getArch().toString(),\r
null);\r
primaryKey2 = UsageInstance.getPrimaryKey(modules.get(index2).module.getModuleName(), \r
- translateSchemaStringToUUID(modules.get(index2).module.getModuleGuid()), \r
- modules.get(index2).module.getPackageName(), \r
- translateSchemaStringToUUID(modules.get(index2).module.getPackageGuid()), \r
+ null, \r
+ null, \r
+ null, \r
modules.get(index2).module.getArch().toString(), \r
null);\r
if (primaryKey1.equalsIgnoreCase(primaryKey2)) {\r
datum = pcdBuildData.getValue();\r
maxDatumSize = pcdBuildData.getMaxDatumSize();\r
\r
+ //\r
+ // Check <TokenSpaceGuid> is exist? In future, because all schema verification will tools\r
+ // will check that, following checking code could be removed.\r
+ // \r
+ if (pcdBuildData.getTokenSpaceGuid() == null) {\r
+ exceptionString = String.format("[FPD file error] There is no <TokenSpaceGuid> for PCD %s in module %s! This is required!",\r
+ pcdBuildData.getCName(),\r
+ moduleName);\r
+ throw new EntityException(exceptionString);\r
+ }\r
+\r
//\r
// -------------------------------------------------------------------------------------------\r
// 2.1.1), Do some necessary checking work for FixedAtBuild, FeatureFlag and PatchableInModule\r
// \r
usageInstance = new UsageInstance(token, \r
moduleName, \r
- translateSchemaStringToUUID(modules.get(index).module.getModuleGuid()),\r
- modules.get(index).module.getPackageName(),\r
- translateSchemaStringToUUID(modules.get(index).module.getPackageGuid()),\r
+ null,\r
+ null,\r
+ null,\r
modules.get(index).type, \r
pcdType,\r
modules.get(index).module.getArch().toString(), \r
\r
dynamicPcdBuildDataArray = dynamicPcdBuildDefinitions.getPcdBuildDataList();\r
for (index = 0; index < dynamicPcdBuildDataArray.size(); index ++) {\r
+ //\r
+ // Check <TokenSpaceGuid> is exist? In future, because all schema verification will tools\r
+ // will check that, following checking code could be removed.\r
+ // \r
+ if (dynamicPcdBuildDataArray.get(index).getTokenSpaceGuid() == null) {\r
+ exceptionString = String.format("[FPD file error] There is no <TokenSpaceGuid> for PCD %s in <DynamicPcdBuildDefinitions>! This is required!",\r
+ dynamicPcdBuildDataArray.get(index).getCName());\r
+ throw new EntityException(exceptionString);\r
+ }\r
+\r
dynamicPrimaryKey = Token.getPrimaryKeyString(dynamicPcdBuildDataArray.get(index).getCName(),\r
translateSchemaStringToUUID(dynamicPcdBuildDataArray.get(index).getTokenSpaceGuid()));\r
if (dynamicPrimaryKey.equalsIgnoreCase(token.getPrimaryKeyString())) {\r