SAService Architect Back to designer
SAService ArchitectDocumentation
Code generation reference module != package != functionPackage

Module, package, and functionPackage

Three similarly named fields control ownership, type alias metadata, and function placement at different levels.

When to use

Use this page when choosing package fields or locating generated types and functions.

Behavior

  • module selects a user-defined project Module and therefore the repository/module that owns a public artifact.
  • Data Type package is optional package-alias metadata. It does not choose a filesystem directory.
  • functionPackage selects placement below a generated functions root.
  • functionModule changes the owning Module only for a public function; otherwise the service owns it.

Which field should I use?

  • To share a type: set publicType = true and select module.
  • To override type import alias metadata: set Data Type package; normally leave it empty.
  • To organize function source files: set functionPackage.
  • To move a public function into another Module: set publicFunction = true and select functionModule.

Fields properties

Ownership and placement controls must be interpreted together.

PropertyTypeDescription
publicTypeboolean

Makes a Data Type module-owned and shareable.

Default: false
moduleModule

User-defined owner selected from StreamApp.modules.

Used when publicType is true.
packagestring

Optional type package/import alias metadata.

Default: empty (inferred alias)
publicFunctionboolean

Selects the public functions root instead of the service-internal root.

Default: false
functionModuleModule

Optional owner of a public function.

Used when publicFunction is true.
functionPackagerelative path

Placement below the selected functions root.

Default: empty (functions root)

Configuration example

publicType: true
module: model
package: ""

publicFunction: false
functionPackage: domain/orders