Chapter 12. Advanced add-ons and deployment

 

This chapter covers

  • Writing advanced add-ons
  • Surveying key Roo infrastructure components
  • Generating a GPG key
  • Deploying add-ons to the RooBot and an OBR repository

Now that you’ve learned how to install add-ons to customize your projects, you may be thinking, “So what? Normally I update my Maven POM and install these frameworks myself.” True, but add-ons can be much more powerful than a codegeneration mechanism. Mastering the Roo add-on system is key to providing a wealth of productivity enhancements for your development team.

In this chapter, we’ll take a look at how to build advanced Roo add-ons. We’ll delve into Roo’s key infrastructure beans such as the fileManager and project-Operations components, how to accept parameters, and how to register for and react to changes in class definitions. We’ll wrap up by showing you how to deploy your add-on to the Roo add-on repository, also known as the RooBot.

Let’s begin by learning how to create an advanced add-on.

12.1. Advanced add-ons

Advanced add-ons are generated from a template that provides an extra level of customization. You still have the ability to create and expose commands to the shell, but in addition you can now create annotations that generate ITDs, watch for and act on changes in classes in the Roo package path (such as adding a @RooToString annotation to a bean), and manipulate the Maven configuration.

The advanced add-on template generates a few other key files:

12.2. To create an advanced add-on, you need Coffee(Script)

12.3. Key add-on beans and services

12.4. Publishing your add-ons

12.5. Deploying to an OBR

12.6. Submitting your add-on

12.7. Summary