Manual: openSEAL Directory Structure
Overall openSEAL Directory Structure
The openSEAL directory structure has the following nodes:
- OpenSEAL - the root directory for all things openSEAL
- /bin - empty as part of the distribution, all source compiled using the build scripts will be compiled to this directory
- /config - storage area for the library configuration files; files will be moved from this directory to the appropriate directories as part of a script build
- /doc - storage for generated documentation including ndoc-generated materials
- /lib - third party libraries including log4j and nunit
- /script - parent script directory
- /build - holds all build scripts
- /db - holds scripts for creating database tables used in the refapp
- /misc - random perl scripts for simplified maintenance
- /service - windows shell scrupts for managing services
- /src - parent source directory (see below for sub-folders)
The source code located underneath the "src" directory. For complete documentation of the
contents, review the API Documentation. Below is a description of the
organizational structure of these directories:
- /org/openseal
- /chron - chron-like functionality
- /config - configuration functionality
- /container - functionality for providing service infrastructure including Win32 services
- /db - database functionality
- /exception - high-level exception hierarchy used throughout the library
- /io - high-level IO functionality wrappers
- /log - logging abstraction including a log4net implementation
- /messaging - messaging functionality including MSMQ wrappers
- /meta-inf - assembly attribute declarations
- /remoting - remoting functionality provided by the library
- /refapp - the reference application for the library
- /resource - functionality for managed resources, provides transactional management
- /security - extended functionality for security in the library
- /service - tier-specific functionality for general infrastructure
- /test - tests for the library
- /types - library custom types
- /ui - user interface parent directory
- /web
- /command - command portion of the MVC architecture, general point of interaction with other tiers in an application
- /constant - web tier constants
- /control - controller functionality for moving a request to the appropriate command
- /dispatch - functionality for routing request responses to a client
- /error - error handling functionality in web applications
- /module - optional http modules for use in a web application
- /param - request parameter functionality
- /security - web-specific security functionality
- /service - web-specific implementation of container behavior
- /view - base functionality for page rendering in a web application
- /control - standard set of controls for building web apps
/manager - business tier manager objects, coarse-grained functional units
/resource - managed resources used in the business tier
/db - refapp implementations of database functionality
/messaging - refapp implementations of messaging functionality
/meta-inf - assembly attributes for the business tier assemblies
/service - Win32 service implementation for the business service
/common - common functionality shared between tiers of the reference application
/meta-inf - assembly attributes for the common assembly
/security - security objects shared between tiers in the refapp
/service - common service access in the refapp
/api - the implementation for the common service API
/test - Nunit test suite for the refapp
/business - tests for the business tier specifically
/types - custom types for the refapp
/meta-inf - assembly attributes for the types in the refapp
/ui - user interface implementation for the refapp
/web
/constant - constants for the refapp
/meta-inf - assembly attributes for the refapp web application assembly
/param - refapp model implementaions
/request - request handler implementations for the refapp
/view - view implementations for the refapp
/control - ASP.NET control implementations for the refapp
Reference Application Source Structure
- /business - the refapp business tier
- /api - the public API for the business tier
- /constant - constants for the business tier
- /impl - the business tier implementation