Book a Demo

Author Topic: Custom Namespaces and package output folders  (Read 3341 times)

Philipp

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Custom Namespaces and package output folders
« on: January 19, 2006, 09:19:18 am »
Hello everybody

I'm missing some flexibility in EA when it comes to package handling, namespace and code generation. As an example: All classes of my project share the same namespace root, followed by individual namespaces, e.g.

Code: [Select]

-MyCompany.MyClient.MyProject
 -Core
 -Data
 -Util


However, just because there is such a namespace, I don't reflect this hierarchy on the file system. My project folder structure could look like this:

Code: [Select]

- project root
 - core
    - util (own namespace)
    - enums (same namespace as core)
    - model (same namespace as core)
    - ...
 - data access
   - ...



This leads to quite a few problems when it comes to code generation (with both sub folders and namespaces):
- EA requires me to create nested empty packages (or a huge root package with the full root namespace "A.B.C") in order to create classes with the correct namespace.
- I have to define the path of every file manually as default code generation creates these subfolders on my file system.
- I can't have organizational folders in my EA model without messing with the namespaces.


I assume most issues that I'm having could be easily solved if it were possible to individually define namespaces. There are two things that I would love to see in EA:

- possibility to assign arbitrary namespaces to packages (or even packages and classes) to override the default namespace generation.
- define root folders on package level (package=folder on on file system)

This would be an equally simple but more powerful approach than the current "Set as Namespace Root" feature which only allows to omit namespace creation for certain root folders. Maybe this functionality is already there (I'm not very experienced with the code engineering features of EA) but I haven't found anything like it.

Cheers,
Philipp