1. Adjust the function of "GenerateID" of each table, use a global variable to store...
authorhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Tue, 29 Jan 2008 05:57:32 +0000 (05:57 +0000)
committerhche10x <hche10x@7335b38e-4728-0410-8992-fb3ffe349368>
Tue, 29 Jan 2008 05:57:32 +0000 (05:57 +0000)
git-svn-id: https://buildtools.tianocore.org/svn/buildtools/trunk/BaseTools@983 7335b38e-4728-0410-8992-fb3ffe349368

Source/Python/Table/Table.py
Source/Python/Table/TableDataModel.py
Source/Python/Table/TableDsc.py
Source/Python/Table/TableFile.py
Source/Python/Table/TableFunction.py
Source/Python/Table/TableIdentifier.py
Source/Python/Table/TablePcd.py

index 815e2bb..894089c 100644 (file)
@@ -29,6 +29,7 @@ class Table(object):
     def __init__(self, Cursor):\r
         self.Cur = Cursor\r
         self.Table = ''\r
+        self.ID = 0\r
     \r
     ## Create table\r
     #\r
@@ -54,8 +55,8 @@ class Table(object):
         EdkLogger.verbose("\nQuery tabel %s started ..." % self.Table)\r
         SqlCommand = """select * from %s""" % self.Table\r
         self.Cur.execute(SqlCommand)\r
-#        for Rs in self.Cur:\r
-#            EdkLogger.verbose(Rs)\r
+        for Rs in self.Cur:\r
+            EdkLogger.verbose(str(Rs))\r
         \r
         TotalCount = self.GetCount()\r
         EdkLogger.verbose("*** Total %s records in table %s ***" % (TotalCount, self.Table) )\r
@@ -92,6 +93,6 @@ class Table(object):
     #\r
     def GenerateID(self, ID):\r
         if ID == -1:\r
-            ID = self.GetCount() + 1\r
-        \r
-        return ID
\ No newline at end of file
+            self.ID = self.ID + 1\r
+\r
+        return self.ID\r
index 671a019..a2d3ba8 100644 (file)
@@ -28,8 +28,9 @@ from Common.String import ConvertToSqlString
 #\r
 class TableDataModel(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'DataModel'\r
+        self.ID = self.GetCount()\r
     \r
     ## Create table\r
     #\r
@@ -57,11 +58,13 @@ class TableDataModel(Table):
     # @param Name:         Name of a ModelType\r
     # @param Description:  Description of a ModelType\r
     #\r
-    def Insert(self, ID, CrossIndex, Name, Description):\r
-        ID = self.GenerateID(ID)\r
+    def Insert(self, CrossIndex, Name, Description):\r
+        self.ID = self.ID + 1\r
         (Name, Description) = ConvertToSqlString((Name, Description))\r
-        SqlCommand = """insert into %s values(%s, %s, '%s', '%s')""" % (self.Table, ID, CrossIndex, Name, Description)\r
+        SqlCommand = """insert into %s values(%s, %s, '%s', '%s')""" % (self.Table, self.ID, CrossIndex, Name, Description)\r
         Table.Insert(self, SqlCommand)\r
+        \r
+        return self.ID\r
     \r
     ## Init table\r
     #\r
@@ -69,13 +72,11 @@ class TableDataModel(Table):
     #  \r
     def InitTable(self):\r
         EdkLogger.verbose("\nInitialize table DataModel started ...")\r
-        ID = 0\r
         for Item in DataClass.MODEL_LIST:\r
-            ID = ID + 1\r
             CrossIndex = Item[1]\r
             Name = Item[0]\r
             Description = Item[0]\r
-            self.Insert(ID, CrossIndex, Name, Description)\r
+            self.Insert(CrossIndex, Name, Description)\r
         EdkLogger.verbose("Initialize table DataModel ... DONE!")\r
     \r
     ## Get CrossIndex\r
index 9af9995..09320af 100644 (file)
@@ -28,8 +28,10 @@ from Common.String import ConvertToSqlString
 #\r
 class TableDsc(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'Dsc'\r
+        self.ID = self.GetCount()\r
+\r
     \r
     ## Create table\r
     #\r
@@ -47,6 +49,7 @@ class TableDsc(Table):
     # @param StartColumn:    StartColumn of a Dsc item\r
     # @param EndLine:        EndLine of a Dsc item\r
     # @param EndColumn:      EndColumn of a Dsc item\r
+    # @param Enabled:        If this item enabled\r
     #\r
     def Create(self):\r
         SqlCommand = """create table IF NOT EXISTS %s (ID SINGLE PRIMARY KEY,\r
@@ -60,7 +63,8 @@ class TableDsc(Table):
                                                        StartLine INTEGER NOT NULL,\r
                                                        StartColumn INTEGER NOT NULL,\r
                                                        EndLine INTEGER NOT NULL,\r
-                                                       EndColumn INTEGER NOT NULL\r
+                                                       EndColumn INTEGER NOT NULL,\r
+                                                       Enabled INTEGER DEFAULT 0\r
                                                       )""" % self.Table\r
         Table.Create(self, SqlCommand)\r
 \r
@@ -80,10 +84,13 @@ class TableDsc(Table):
     # @param StartColumn:    StartColumn of a Dsc item\r
     # @param EndLine:        EndLine of a Dsc item\r
     # @param EndColumn:      EndColumn of a Dsc item\r
+    # @param Enabled:        If this item enabled\r
     #\r
-    def Insert(self, ID, Model, Value1, Value2, Value3, Arch, BelongsToItem, BelongsToFile, StartLine, StartColumn, EndLine, EndColumn):\r
-        ID = self.GenerateID(ID)\r
+    def Insert(self, Model, Value1, Value2, Value3, Arch, BelongsToItem, BelongsToFile, StartLine, StartColumn, EndLine, EndColumn, Enabled):\r
+        self.ID = self.ID + 1\r
         #(Value1, Value2, Value3, Arch) = ConvertToSqlString((Value1, Value2, Value3, Arch))\r
-        SqlCommand = """insert into %s values(%s, %s, '%s', '%s', '%s', '%s', %s, %s, %s, %s, %s, %s)""" \\r
-                     % (self.Table, ID, Model, Value1, Value2, Value3, Arch, BelongsToItem, BelongsToFile, StartLine, StartColumn, EndLine, EndColumn)\r
+        SqlCommand = """insert into %s values(%s, %s, '%s', '%s', '%s', '%s', %s, %s, %s, %s, %s, %s, %s)""" \\r
+                     % (self.Table, self.ID, Model, Value1, Value2, Value3, Arch, BelongsToItem, BelongsToFile, StartLine, StartColumn, EndLine, EndColumn, Enabled)\r
         Table.Insert(self, SqlCommand)\r
+        \r
+        return self.ID
\ No newline at end of file
index 5cedc8a..70bd994 100644 (file)
@@ -26,8 +26,9 @@ from Common.String import ConvertToSqlString
 #\r
 class TableFile(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'File'\r
+        self.ID = self.GetCount()\r
     \r
     ## Create table\r
     #\r
@@ -64,9 +65,11 @@ class TableFile(Table):
     # @param Model:     Model of a File\r
     # @param TimeStamp: TimeStamp of a File\r
     #\r
-    def Insert(self, ID, Name, ExtName, Path, FullPath, Model, TimeStamp):\r
-        ID = self.GenerateID(ID)\r
+    def Insert(self, Name, ExtName, Path, FullPath, Model, TimeStamp):\r
+        self.ID = self.ID + 1\r
         (Name, ExtName, Path, FullPath) = ConvertToSqlString((Name, ExtName, Path, FullPath))\r
         SqlCommand = """insert into %s values(%s, '%s', '%s', '%s', '%s', %s, '%s')""" \\r
-                                           % (self.Table, ID, Name, ExtName, Path, FullPath, Model, TimeStamp)\r
+                                           % (self.Table, self.ID, Name, ExtName, Path, FullPath, Model, TimeStamp)\r
         Table.Insert(self, SqlCommand)\r
+        \r
+        return self.ID\r
index 2bba518..cc2f73d 100644 (file)
@@ -26,8 +26,9 @@ from Common.String import ConvertToSqlString
 #\r
 class TableFunction(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'Function'\r
+        self.ID = self.GetCount()\r
     \r
     ## Create table\r
     #\r
@@ -79,9 +80,11 @@ class TableFunction(Table):
     # @param BodyStartColumn:  StartColumn of a Function body\r
     # @param BelongsToFile:    The Function belongs to which file\r
     #\r
-    def Insert(self, ID, Header, Modifier, Name, ReturnStatement, StartLine, StartColumn, EndLine, EndColumn, BodyStartLine, BodyStartColumn, BelongsToFile):\r
-        ID = self.GenerateID(ID)\r
+    def Insert(self, Header, Modifier, Name, ReturnStatement, StartLine, StartColumn, EndLine, EndColumn, BodyStartLine, BodyStartColumn, BelongsToFile):\r
+        self.ID = self.ID + 1\r
         (Header, Modifier, Name, ReturnStatement) = ConvertToSqlString((Header, Modifier, Name, ReturnStatement))\r
         SqlCommand = """insert into %s values(%s, '%s', '%s', '%s', '%s', %s, %s, %s, %s, %s, %s, %s)""" \\r
-                                    % (self.Table, ID, Header, Modifier, Name, ReturnStatement, StartLine, StartColumn, EndLine, EndColumn, BodyStartLine, BodyStartColumn, BelongsToFile)\r
+                                    % (self.Table, self.ID, Header, Modifier, Name, ReturnStatement, StartLine, StartColumn, EndLine, EndColumn, BodyStartLine, BodyStartColumn, BelongsToFile)\r
         Table.Insert(self, SqlCommand)\r
+\r
+        return self.ID
\ No newline at end of file
index 501c164..0b9b5a8 100644 (file)
@@ -27,8 +27,9 @@ from Table import Table
 #\r
 class TableIdentifier(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'Identifier'\r
+        self.ID = self.GetCount()\r
     \r
     ## Create table\r
     #\r
@@ -80,9 +81,11 @@ class TableIdentifier(Table):
     # @param EndLine:            EndLine of a Identifier\r
     # @param EndColumn:          EndColumn of a Identifier\r
     #\r
-    def Insert(self, ID, Modifier, Type, Name, Value, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn):\r
-        ID = self.GenerateID(ID)    \r
+    def Insert(self, Modifier, Type, Name, Value, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn):\r
+        self.ID = self.ID + 1\r
         (Modifier, Type, Name, Value) = ConvertToSqlString((Modifier, Type, Name, Value))\r
         SqlCommand = """insert into %s values(%s, '%s', '%s', '%s', '%s', %s, %s, %s, %s, %s, %s, %s)""" \\r
-                                           % (self.Table, ID, Modifier, Type, Name, Value, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn)\r
+                                           % (self.Table, self.ID, Modifier, Type, Name, Value, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn)\r
         Table.Insert(self, SqlCommand)\r
+\r
+        return self.ID
\ No newline at end of file
index 046db91..e5c216f 100644 (file)
@@ -27,8 +27,9 @@ from Common.String import ConvertToSqlString
 #\r
 class TablePcd(Table):\r
     def __init__(self, Cursor):\r
-        self.Cur = Cursor\r
+        Table.__init__(self, Cursor)\r
         self.Table = 'Pcd'\r
+        self.ID = self.GetCount()\r
     \r
     ## Create table\r
     #\r
@@ -80,9 +81,11 @@ class TablePcd(Table):
     # @param EndLine:              EndLine of a Pcd\r
     # @param EndColumn:            EndColumn of a Pcd\r
     #\r
-    def Insert(self, ID, CName, TokenSpaceGuidCName, Token, DatumType, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn):\r
-        ID = self.GenerateID(ID)\r
+    def Insert(self, CName, TokenSpaceGuidCName, Token, DatumType, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn):\r
+        self.ID = self.ID + 1\r
         (CName, TokenSpaceGuidCName, DatumType) = ConvertToSqlString((CName, TokenSpaceGuidCName, DatumType))\r
         SqlCommand = """insert into %s values(%s, '%s', '%s', %s, '%s', %s, %s, %s, %s, %s, %s, %s)""" \\r
-                                           % (self.Table, ID, CName, TokenSpaceGuidCName, Token, DatumType, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn)\r
+                                           % (self.Table, self.ID, CName, TokenSpaceGuidCName, Token, DatumType, Model, BelongsToFile, BelongsToFunction, StartLine, StartColumn, EndLine, EndColumn)\r
         Table.Insert(self, SqlCommand)\r
+\r
+        return self.ID
\ No newline at end of file