Migration Guide

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.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]