commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

r5134 - in trunk/gnue-appserver: . samples src/classrep


From: johannes
Subject: r5134 - in trunk/gnue-appserver: . samples src/classrep
Date: Thu, 19 Feb 2004 02:47:45 -0600 (CST)

Author: johannes
Date: 2004-02-19 02:47:44 -0600 (Thu, 19 Feb 2004)
New Revision: 5134

Modified:
   trunk/gnue-appserver/BUGS
   trunk/gnue-appserver/samples/base.gsd
   trunk/gnue-appserver/samples/sample.gsd
   trunk/gnue-appserver/src/classrep/Property.py
   trunk/gnue-appserver/src/classrep/SchemaSupport.py
   trunk/gnue-appserver/src/classrep/__init__.py
   trunk/gnue-appserver/src/classrep/repository.ini
Log:
Fixed length=0 issues in classrep / SchemaSupport.


Modified: trunk/gnue-appserver/BUGS
===================================================================
--- trunk/gnue-appserver/BUGS   2004-02-19 08:26:18 UTC (rev 5133)
+++ trunk/gnue-appserver/BUGS   2004-02-19 08:47:44 UTC (rev 5134)
@@ -18,6 +18,3 @@
 
 * Test what happens if a classname or a property contains non-ASCII characters.
   What does gnue-schema or gnue-gsdgen do with items like that?
-
-* Class repository should support strings without length (e.g. long texts like
-  gnue_procedure.gnue_code)

Modified: trunk/gnue-appserver/samples/base.gsd
===================================================================
--- trunk/gnue-appserver/samples/base.gsd       2004-02-19 08:26:18 UTC (rev 
5133)
+++ trunk/gnue-appserver/samples/base.gsd       2004-02-19 08:47:44 UTC (rev 
5134)
@@ -291,6 +291,8 @@
           <value field="gnue_class">'00000000000000000000000000000040'</value>
           <value field="gnue_name">'code'</value>
           <value field="gnue_type">'string'</value>
+          <value field="gnue_length">'0'</value>
+          <value field="gnue_scale">'0'</value>
           <value field="gnue_comment">'Procedure code'</value>
         </row>
         <row>
@@ -309,6 +311,8 @@
           <value field="gnue_class">'00000000000000000000000000000040'</value>
           <value field="gnue_name">'compiledcode'</value>
           <value field="gnue_type">'string'</value>
+          <value field="gnue_length">'0'</value>
+          <value field="gnue_scale">'0'</value>
           <value field="gnue_comment">'Compiled procedure code'</value>
         </row>
         <row>

Modified: trunk/gnue-appserver/samples/sample.gsd
===================================================================
--- trunk/gnue-appserver/samples/sample.gsd     2004-02-19 08:26:18 UTC (rev 
5133)
+++ trunk/gnue-appserver/samples/sample.gsd     2004-02-19 08:47:44 UTC (rev 
5134)
@@ -4,10 +4,24 @@
 <schema author="Appserver SchemaSupport" title="Appserver Schema Dump"
         version="1.0">
   <tables>
+    <table name="address_country">
+      <fields>
+        <field name="address_code" description="ISO-Country code" length="2"
+               type="string"/>
+        <field name="address_name" description="The name of the country"
+               length="35" type="string"/>
+        <field name="gnue_id" description="Object ID" length="32"
+               type="string"/>
+      </fields>
+      <constraints/>
+      <indexes/>
+      <primarykey name="gnue_id_pk_address_country">
+        <pkfield name="gnue_id"/>
+      </primarykey>
+    </table>
     <table name="address_person">
       <fields>
-        <field name="address_born" description="Birthday" length="0"
-               type="date"/>
+        <field name="address_born" description="Birthday" type="date"/>
         <field name="address_children" description="Number of children"
                length="2" type="number"/>
         <field name="address_city" description="City where the person lives"
@@ -15,11 +29,11 @@
         <field name="address_country"
                description="Country where the person lives" length="32" 
type="string"/>
         <field name="address_human"
-               description="Whether the person is human or not" length="0" 
type="boolean"/>
+               description="Whether the person is human or not" 
type="boolean"/>
         <field name="address_lastmeeting"
-               description="Date and time of the last meeting" length="0" 
type="datetime"/>
+               description="Date and time of the last meeting" 
type="datetime"/>
         <field name="address_meettime"
-               description="Preferred time for meetings" length="0" 
type="time"/>
+               description="Preferred time for meetings" type="time"/>
         <field name="address_name" description="Name of the person"
                length="35" type="string"/>
         <field name="address_street"
@@ -37,21 +51,6 @@
         <pkfield name="gnue_id"/>
       </primarykey>
     </table>
-    <table name="address_country">
-      <fields>
-        <field name="address_code" description="ISO-Country code" length="2"
-               type="string"/>
-        <field name="address_name" description="The name of the country"
-               length="35" type="string"/>
-        <field name="gnue_id" description="Object ID" length="32"
-               type="string"/>
-      </fields>
-      <constraints/>
-      <indexes/>
-      <primarykey name="gnue_id_pk_address_country">
-        <pkfield name="gnue_id"/>
-      </primarykey>
-    </table>
   </tables>
   <data>
     <tabledata name="gnue_module_dump" tablename="gnue_module">
@@ -66,22 +65,52 @@
     <tabledata name="gnue_class_dump" tablename="gnue_class">
       <rows>
         <row>
-          <value field="gnue_id">'00000000000000000000000000001010'</value>
-          <value field="gnue_module">'00000000000000000000000000001000'</value>
-          <value field="gnue_name">'person'</value>
-          <value field="gnue_comment">'Person'</value>
-        </row>
-        <row>
           <value field="gnue_id">'00000000000000000000000000001020'</value>
           <value field="gnue_module">'00000000000000000000000000001000'</value>
           <value field="gnue_name">'country'</value>
           <value field="gnue_comment">'Country'</value>
         </row>
+        <row>
+          <value field="gnue_id">'00000000000000000000000000001010'</value>
+          <value field="gnue_module">'00000000000000000000000000001000'</value>
+          <value field="gnue_name">'person'</value>
+          <value field="gnue_comment">'Person'</value>
+        </row>
       </rows>
     </tabledata>
     <tabledata name="gnue_property_dump" tablename="gnue_property">
       <rows>
         <row>
+          <value field="gnue_id">'00000000000000000000000000001022'</value>
+          <value field="gnue_module">'00000000000000000000000000001000'</value>
+          <value field="gnue_class">'00000000000000000000000000001020'</value>
+          <value field="gnue_name">'code'</value>
+          <value field="gnue_type">'string'</value>
+          <value field="gnue_length">'2'</value>
+          <value field="gnue_scale">'0'</value>
+          <value field="gnue_comment">'ISO-Country code'</value>
+        </row>
+        <row>
+          <value field="gnue_id">'00000000000000000000000000001023'</value>
+          <value field="gnue_module">'00000000000000000000000000001000'</value>
+          <value field="gnue_class">'00000000000000000000000000001020'</value>
+          <value field="gnue_name">'name'</value>
+          <value field="gnue_type">'string'</value>
+          <value field="gnue_length">'35'</value>
+          <value field="gnue_scale">'0'</value>
+          <value field="gnue_comment">'The name of the country'</value>
+        </row>
+        <row>
+          <value field="gnue_id">'00000000000000000000000000001021'</value>
+          <value field="gnue_module">'00000000000000000000000000000000'</value>
+          <value field="gnue_class">'00000000000000000000000000001020'</value>
+          <value field="gnue_name">'id'</value>
+          <value field="gnue_type">'id'</value>
+          <value field="gnue_length">'0'</value>
+          <value field="gnue_scale">'0'</value>
+          <value field="gnue_comment">'Object ID'</value>
+        </row>
+        <row>
           <value field="gnue_id">'00000000000000000000000000001019'</value>
           <value field="gnue_module">'00000000000000000000000000001000'</value>
           <value field="gnue_class">'00000000000000000000000000001010'</value>
@@ -201,36 +230,6 @@
           <value field="gnue_scale">'0'</value>
           <value field="gnue_comment">'Object ID'</value>
         </row>
-        <row>
-          <value field="gnue_id">'00000000000000000000000000001022'</value>
-          <value field="gnue_module">'00000000000000000000000000001000'</value>
-          <value field="gnue_class">'00000000000000000000000000001020'</value>
-          <value field="gnue_name">'code'</value>
-          <value field="gnue_type">'string'</value>
-          <value field="gnue_length">'2'</value>
-          <value field="gnue_scale">'0'</value>
-          <value field="gnue_comment">'ISO-Country code'</value>
-        </row>
-        <row>
-          <value field="gnue_id">'00000000000000000000000000001023'</value>
-          <value field="gnue_module">'00000000000000000000000000001000'</value>
-          <value field="gnue_class">'00000000000000000000000000001020'</value>
-          <value field="gnue_name">'name'</value>
-          <value field="gnue_type">'string'</value>
-          <value field="gnue_length">'35'</value>
-          <value field="gnue_scale">'0'</value>
-          <value field="gnue_comment">'The name of the country'</value>
-        </row>
-        <row>
-          <value field="gnue_id">'00000000000000000000000000001021'</value>
-          <value field="gnue_module">'00000000000000000000000000000000'</value>
-          <value field="gnue_class">'00000000000000000000000000001020'</value>
-          <value field="gnue_name">'id'</value>
-          <value field="gnue_type">'id'</value>
-          <value field="gnue_length">'0'</value>
-          <value field="gnue_scale">'0'</value>
-          <value field="gnue_comment">'Object ID'</value>
-        </row>
       </rows>
     </tabledata>
     <tabledata name="sample_procedures" tablename="gnue_procedure">
@@ -304,7 +303,7 @@
           <value field="gnue_id">'00000000000000000000001000000002'</value>
           <value field="gnue_username">'hacker'</value>
           <value field="gnue_password">'secret'</value>
-          <value 
field="gnue_accesslist">'address_person,address_country,gnue_module,gnue_class,gnue_property,gnue_procedure'</value>
+          <value 
field="gnue_accesslist">'address_person,address_country,gnue_module,gnue_class,gnue_property'</value>
         </row>
       </rows>
     </tabledata>

Modified: trunk/gnue-appserver/src/classrep/Property.py
===================================================================
--- trunk/gnue-appserver/src/classrep/Property.py       2004-02-19 08:26:18 UTC 
(rev 5133)
+++ trunk/gnue-appserver/src/classrep/Property.py       2004-02-19 08:47:44 UTC 
(rev 5134)
@@ -98,7 +98,7 @@
     # gnue_property.gnue_name is already a fully qualified identifier
     self.fullName = createName (self.__module.gnue_name, self.gnue_name)
     self.column   = self.fullName
-    
+
     if self.gnue_type == 'string':
       self.fullType = '%s(%d)' % (self.gnue_type, int (self.gnue_length))
 

Modified: trunk/gnue-appserver/src/classrep/SchemaSupport.py
===================================================================
--- trunk/gnue-appserver/src/classrep/SchemaSupport.py  2004-02-19 08:26:18 UTC 
(rev 5133)
+++ trunk/gnue-appserver/src/classrep/SchemaSupport.py  2004-02-19 08:47:44 UTC 
(rev 5134)
@@ -126,6 +126,8 @@
     dest.write ('<?xml version="1.0"?>\n')
     dest.write (_('<!-- Schema definition created by GNUe Appserver\'s ') + \
                 _('Schema Support. -->\n'))
+    dest.write (_("<!-- run this file through gnue-schema to create SQL ") + \
+                _("scripts -->\n"))
     dest.write (schema.dumpXML ())
     dest.close ()
 
@@ -151,7 +153,8 @@
       # map known types 
       if cProp.gnue_type in self.SCHEMA_TYPES:
         field.type        = cProp.gnue_type
-        field.length      = int (cProp.gnue_length)
+        if int (cProp.gnue_length) > 0:
+          field.length      = int (cProp.gnue_length)
         field.precision   = int (cProp.gnue_scale)
 
       # everything else should be a reference

Modified: trunk/gnue-appserver/src/classrep/__init__.py
===================================================================
--- trunk/gnue-appserver/src/classrep/__init__.py       2004-02-19 08:26:18 UTC 
(rev 5133)
+++ trunk/gnue-appserver/src/classrep/__init__.py       2004-02-19 08:47:44 UTC 
(rev 5134)
@@ -56,9 +56,9 @@
   server.modules = ModuleDict (session, bootcat)
   server.classes = ClassDict (session, server.modules, None, bootcat)
   server.modules.classdict = server.classes
-
+  
   # and finally refresh the repository from the datasource
   server.modules.reload ()
   server.classes.reload ()
-
+ 
   return

Modified: trunk/gnue-appserver/src/classrep/repository.ini
===================================================================
--- trunk/gnue-appserver/src/classrep/repository.ini    2004-02-19 08:26:18 UTC 
(rev 5133)
+++ trunk/gnue-appserver/src/classrep/repository.ini    2004-02-19 08:47:44 UTC 
(rev 5134)
@@ -283,7 +283,7 @@
 gnue_module    = 00000000000000000000000000000000
 gnue_name      = code
 gnue_type      = string
-gnue_length    = 2000
+gnue_length    = 0
 gnue_scale     = 0
 gnue_comment   = Procedure code
 
@@ -293,7 +293,7 @@
 gnue_module    = 00000000000000000000000000000000
 gnue_name      = compiledcode
 gnue_type      = string
-gnue_length    = 2000
+gnue_length    = 0
 gnue_scale     = 0
 gnue_comment   = Compiled procedure code
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]