OpenEngSB Manual

1.2.0.M1 "Labouring Luigi"

Open Engineering Service Bus Development Team and Contributors


I. Introduction
1. How to read the Manual
2. What is the Open Engineering Service Bus
3. When to use the OpenEngSB
3.1. The OpenEngSB as Base Environment
3.2. Reusing integration Components and Workflows
3.3. Management Environment
3.4. Simple Development and Distribution Management
3.5. Simple Plug-Ins and Extensions
II. Tutorials
4. HowTo - Create a connector for an already existing domain for the OpenEngSB
4.1. Goal
4.2. Time to Complete
4.3. Prerequisites
4.4. Step 1 - Use the archetype
4.5. Step 2 - Add the dependencies
4.6. Step 3 - Configure the connector
4.7. Step 4 - Implement the connector
4.8. Step 5 - Spring Setup and Internationalization
4.9. Step 6 - Start the OpenEngSB with your Connector
4.10. Step 7 - Test the new connector
III. OpenEngSB Framework
5. Quickstart
5.1. Writing new projects using the OpenEngSB
5.2. Writing Domains for the OpenEngSB
5.3. Writing Connectors for the OpenEngSB
6. Architecture of the OpenEngSB
6.1. OpenEngSB Enterprise Service Bus (ESB)
6.2. OpenEngSB Infrastructure
6.3. OpenEngSB Components
6.4. OpenEngSB Tool Domains
6.5. Client Tools (Service Consumer)
6.6. Domain Tools (Service Provider)
6.7. Domain- and Client Tool Connectors
7. Context Management
8. Persistence in the OpenEngSB
9. Security in the OpenEngSB
9.1. Usermanagement
9.2. Access control
9.3. Authentication
10. Workflows
10.1. Workflow service
10.2. Rulemanager
10.3. Processes
11. Taskbox
11.1. Core Functionality
11.2. UI Functionality
12. External Domains and Connectors
12.1. Proxying
12.1.1. Proxying internal Connector calls
12.2. Using JMS proxying
12.2.1. Proxying internal Connector calls
12.2.2. Calling internal Services
12.2.3. Examples
12.2.3.1. Connect With Python
12.2.3.2. Connect With CSharp
12.2.3.3. Connect With Perl
13. Deployer services
13.1. Connector configuration
14. OpenEngSB Platform
IV. OpenEngSB Available Domains & Connectors
15. Notification Domain
15.1. Description
15.2. Functional Interface
15.3. Connectors
15.3.1. Email Connector
15.3.1.1. External Tool Configuration
16. SCM Domain
16.1. Description
16.2. Functional Interface
16.3. Connectors
16.3.1. Git Connector
16.3.1.1. External Tool Configuration
17. Issue Domain
17.1. Description
17.2. Functional Interface
17.3. Connectors
17.3.1. Trac Connector
17.3.1.1. External Tool Configuration
17.3.2. Jira Connector
17.3.2.1. External Tool Configuration
18. Report Domain
18.1. Description
18.2. Functional Interface
18.3. Connectors
18.3.1. Plaintext Report Connector
18.3.1.1. External Tool Configuration
19. Build Domain
19.1. Description
19.2. Functional Interface
19.3. Connectors
20. Test Domain
20.1. Description
20.2. Functional Interface
20.3. Connectors
21. Deploy Domain
21.1. Description
21.2. Functional Interface
21.3. Connectors
22. Auditing Domain
22.1. Description
22.2. Functional Interface
22.3. Connectors
22.3.1. Memory Auditing Connector
23. Multi-Domain Connectors
23.1. Connectors
23.1.1. Maven Connector
23.1.1.1. External Tool Configuration
V. OpenEngSB Commiters & Contributors
24. Getting Started as a Developer
24.1. Getting comfortable with the infrastructure
24.1.1. Mailing Lists
24.1.2. Jira Issue Tracker
24.1.3. Code Repository
24.1.4. Maven Repository
24.1.5. Build Server
24.2. Prerequisites
24.2.1. Installing Git
24.2.2. Installing Maven
24.3. Starting OpenEngSB
24.4. Using Eclipse
24.5. Using Other IDEs than Eclipse
24.6. Git Documentation
24.6.1. Usage
24.6.2. Github
24.6.3. Starting up and configure
24.6.4. Contributor Workflow
24.6.5. Commiter Workflow
24.6.6. Additional Rules
24.7. Useful Tools
24.7.1. openengsb-maven-plugin
24.7.1.1. Configuring the openengsb-maven-plugin for your project
24.7.1.2. Available Goals
25. How To Create an Internal Connector
25.1. Prerequisites
25.2. Creating a new connector project
25.2.1. Using the Maven Archetype
25.2.2. Using the openengsb-maven-plugin:genConnector
25.3. Project Structure
25.4. Integrating the Connector into the OpenEngSB environment
26. How To Create an Internal Domain
26.1. Prerequisites
26.2. Creating a new domain project
26.2.1. Using the Maven Archetype
26.2.2. Using openengsb-maven-plugin:genDomain
26.2.3. Project structure
26.3. Components
26.4. Connectors
27. Prepare and use Non-OSGi Artifacts
27.1. Create Wrapped Artifacts
27.2. Tips and Tricks
28. Release and Release Process
28.1. Releases and the OpenEngSB
28.2. Git Branches
28.2.1. New Feature Workflow
28.2.2. Milestone Releases
28.2.3. Release Candidates
28.2.4. Final and Support Releases
28.3. Configure Maven
28.4. Adapt Jira
28.5. Perform the release
28.6. Spread the News
28.7. Prepare Changelog
28.7.1. General Description
28.7.2. Highlights
28.7.3. Details
29. Admin
29.1. Infrastructure
29.1.1. OpenEngSB Infrastructure Server
29.1.2. OpenEngSB Build
29.1.3. OpenEngSB Issuetracker
29.1.4. OpenEngSB git
29.1.5. OpenEngSB Maven
29.1.5.1. internal
29.1.5.2. external
29.1.6. OpenEngSB Mailinglist
29.2. Logo Locations and Upgrade
29.2.1. External Infrastructure
29.2.2. Internal Management Application
29.2.3. Documentation
30. Project Roles
30.1. Users
30.2. Contributors
30.3. Commiters
30.4. Project Comitee Members
31. Java Coding Style
31.1. Sun Coding Guidelines
31.1.1. Line length
31.1.2. Wrapping
31.1.3. Number of declarations per line
31.1.4. Declaration placement
31.1.5. Blank lines
31.2. General
31.2.1. File format
31.2.2. Header
31.2.3. Duplication
31.2.4. Use guards
31.2.5. Keep methods short
31.2.6. Use enums
31.2.7. Avoid use of static members
31.2.8. Use fully qualified imports
31.2.9. Never declare implementation types
31.2.10. SerialVersionUID
31.2.11. Restrict scope of suppressed warnings
31.2.12. Use String.format()
31.2.13. Array declaration style
31.2.14. Comments
31.3. Naming
31.3.1. Interfaces
31.3.2. Don't abbreviate
31.4. No clutter
31.5. Exception Handling
31.6. Tests
31.6.1. General
31.6.2. Naming Scheme
31.7. XML Formatting
31.7.1. File Format
31.7.2. Eclipse Settings
31.7.3. Recommended Readings
32. Writing Code
32.1. Maven POM files in the OpenEngSB
32.2. Using the same dependencies as the OPENENGSB
32.3. Making UI Tests Localizable
32.4. How to write tests
32.4.1.
32.4.2. Technologies for writing test, and how to use them
33. Recommended Eclipse Plug-ins for Developers
33.1. Properties Editor
33.2. Spring IDE
33.3. Eclipse CS
33.4. Drools
34. Writing Documentation
34.1. General Documentation Guidelines
34.2. Document a domain or connector
34.2.1. Domain
34.2.2. Connector
34.3. Using Docbook
34.3.1. Tags
34.3.1.1. Including an image
34.3.1.2. Using a table
34.3.1.3. Generating the documentation