JavaClass.st
changeset 590 b0de66f7e728
parent 587 131f0c4afb89
child 619 b4868e432de3
--- a/JavaClass.st	Tue Jul 27 23:44:50 1999 +0000
+++ b/JavaClass.st	Fri Aug 20 13:38:35 1999 +0000
@@ -111,11 +111,11 @@
 !
 
 fullName:aString numStatic:nStatic
-    |meta cls fullName parts s ns|
+    |meta cls s ns nameComponents|
 
     "/ check for a JAVA nameSpace to exist
     JAVA isNil ifTrue:[
-	Namespace name:'JAVA'
+        Namespace name:'JAVA'
     ].
 
     "create the metaclass first"
@@ -134,11 +134,27 @@
     cls instSize:0.
     cls setName:('JAVA::' , aString).
     cls flags:0.
+    cls setAccessFlags:0.
 "/    cls setClassVariableString:''.
     cls setInstanceVariableString:''.
     cls category:#java.
+    cls setFullName:aString.
 
-    cls setFullName:aString.
+    "/ java classes do not really have a category;
+    "/ simulate one by separating its name into individual components,
+    "/ prepending 'java'"
+
+    nameComponents := aString asCollectionOfSubstringsSeparatedBy:$/.
+    nameComponents size > 1 ifTrue:[
+        cls category:((nameComponents asStringWith:$/ from:1 to:(nameComponents size - 1))
+                            replaceAll:$/ with:$. ).
+    ].
+
+    nameComponents size > 1 ifTrue:[
+        cls setPackage:((nameComponents copyWithoutLast:1) asStringWith:$/) asSymbol
+    ] ifFalse:[
+        cls setPackage:aString asSymbol
+    ].
 
     "/ break up the package and create nameSpaces
     "/ for each package component.
@@ -147,22 +163,21 @@
 
     ns := JAVA.
 
-    parts := aString asCollectionOfSubstringsSeparatedBy:$/.
-    parts size > 1 ifTrue:[
-	s := '' writeStream.
-	s nextPutAll:'JAVA'.
-	parts from:1 to:(parts size - 1) do:[:aPart |
-	    s nextPutAll:'::'.
-	    s nextPutAll:aPart
-	].
-	Metaclass confirmationQuerySignal answer:false do:[
-	    Class updateChangeFileQuerySignal answer:false do:[
-		ns := Namespace fullName:(s contents).
-	    ]
-	]
+    nameComponents size > 1 ifTrue:[
+        s := '' writeStream.
+        s nextPutAll:'JAVA'.
+        nameComponents from:1 to:(nameComponents size - 1) do:[:aPart |
+            s nextPutAll:'::'.
+            s nextPutAll:aPart
+        ].
+        Metaclass confirmationQuerySignal answer:false do:[
+            Class updateChangeFileQuerySignal answer:false do:[
+                ns := Namespace fullName:(s contents).
+            ]
+        ]
     ].
     ns isNamespace ifTrue:[
-	ns at:parts last asSymbol put:cls.
+        ns at:nameComponents last asSymbol put:cls.
     ].
 
     "/ for ST/X browsing
@@ -600,7 +615,7 @@
 !
 
 category
-    "java classes do not really hav a category;
+    "java classes do not really have a category;
      simulate one by separating its name into individual components,
      prepending 'java'"
 
@@ -608,10 +623,10 @@
 
     nameComponents := fullName asCollectionOfSubstringsSeparatedBy:$/.
     nameComponents size <= 1 ifTrue:[
-	^ 'java' "/ fullName  
+        ^ 'java' "/ fullName  
     ].
     ^ ((nameComponents asStringWith:$/ from:1 to:(nameComponents size - 1))) 
-	replaceAll:$/ with:$.
+        replaceAll:$/ with:$.
 
     "Modified: 30.7.1997 / 15:35:22 / cg"
 !
@@ -1690,6 +1705,6 @@
 !JavaClass class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.104 1999/07/26 07:30:24 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.105 1999/08/20 13:38:35 cg Exp $'
 ! !
 JavaClass initialize!