Migrating OSObject subclasses
To migrate OSObject subclasses, first determine which classes need to be migrated:
1. Load existing applications that use OSObject instances or subclasses to interface with external functions.
2. In the System Transcript, select Browse Hierarchy from the Tools menu. A prompter opens, requesting a class name.
3. Type OSObject and select OK. A hierarchy browser opens, showing the class OSObject and its direct subclasses.
The classes OSImmediate, OSPtr, and OSStorage are base Smalltalk classes which you should not migrate. The remaining OSObject subclasses were defined by you or your team and must be migrated before you can use them.
Next, change the superclass for each class that requires migration:
1. From a browser, select the class to be migrated.
2. Change the class definition from
OSObject subclass: #MyVersion3Class
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
to
OSPtr subclass: #MyVersion3Class
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
If the class being migrated requires code page conversion support, use AbtForeignOSObject as a superclass as follows:
AbtForeignOSObject subclass: #MyVersion3Class
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
3. Save the new class definition.
4. Version the migrated class.
Last modified date: 07/02/2019