CODE_PACKAGE

It is possible for two or more process or struct classes in the model to have the same name. Equally named classes are distinguished (on the server side only) by theirCODE_PACKAGE value which may be specified for one of its containing packages.

TheCODE_PACKAGE option, when specified, affects struct, entity, facade and process classes within that package and in the packages contained within that package. Applying theCODE_PACKAGE option to a class has the effect of moving that class into a package within the default package, curam, and including any of the package's parentCODE_PACKAGE options. The following example outlines how this works:

For example, the UML meta-model class MyProcess in the model causes the following Java classes to be created:

and the developer must implement:

If the developer wishes to create another class named MyProcess, they can do so provided that they create the class within a package for which a differentCODE_PACKAGE option has been specified. This is to ensure that the corresponding Java classes can be stored in separate locations on disk.

The developer specifies the following option for the package containing the MyProcess class (this must be manually typed into the documentation for the package in the UML meta-model):

In this instance the following classes and interfaces will result:

and the developer must implement: