For Developers

This page describes the CPS software architecture and it shows you how to build the CPS application.  The CPS software is a modular Java 6 application built on the NetBeans platform and the NASA WorldWind Java SDK, plus several other open source libraries.  This information is presented here with the hope that you will get involved with this open source project, and that you can learn how to build your own NetBeans platform applications using these, or similar technologies.

Most all of the individual modules within these projects are released under the LGPL 2.1 license.

[ software module diagram goes here ]

Getting Ready

The requirements for building the CPS software include:

The CPS software is comprised of two NetBeans projects:

 

How to Do It

This section will show you how to download, install, and configure NetBeans; how to download the CPS and Emxsys projects from the Subversion repositories; and how to compile and run the projects.

Download, Install & Configure NetBeans IDE 7

Download the Emxsys and CPS Projects via the Team Server

You can use these steps to download the sources if you installed the Team Server plugin and if you are logged into the Project Kenai server. 

Note that if you "join" the CPS and Emxsys projects, it will be somewhat easier to download the sources, the Subversion repositories will be preselected for you. You can join any Project Kenai project by logging into via you web browser, search for a project, and then select the "Bookmark This Project" link.  Here are the links to bookmark the CPS and Emxsys projects:

Download Emxsys Sources
  1. Get the Emxsys Framework project:
    In the NetBeans menu, select Team > Team Server > Get Sources...
  2. Update the Get Sources from Team Server dialog:
    • Logged into: Project Kenai
    • Kenai Repository: https://svn.kenai.com/svn/emxsys~svn
      You can browse to this project if it is not in the list of your member projects: use "emxsys" for your search criteria and select the Emergency Management Expert Systems from the list.
    • Folder to Get: trunk
    • Local Folder: <your user folder>/NetBeansProjects/emxsys~svn
  3. When the Checkout is complete, you can open this project.
Download the CPS Sources

Here you simply repeat the above steps, but use "cps" instead of "emxsys":

  1. Get the CPS-Suite project:
    In the NetBeans menu, select Team > Team Server > Get Sources...
  2. Update the Get Sources from Team Server dialog:
    • Logged into: Project Kenai
    • Kenai Repository: https://svn.kenai.com/svn/cps~svn
      You can browse to this project if it is not in your list of member projects: use "cps" for your search criteria and select the Campbell Prediction System project from the list.
    • Folder to Get: trunk
    • Local Folder: <your user folder>/NetBeansProjects/cps~svn
  3. When the Checkout is complete, you can open this project.

Compile and Run the Project

The Emxsys Application Framework must be compiled before compiling the Campbell Prediction System.  Building the framework first will create the module cluster that the CPS-Suite is dependent upon.  While there are several ways to launch the build/run processes, presented here is just one way that is easy to describe:

  1. In the Projects window, right-click on the Emxsys Application Framework project node and select Clean and Build
  2. The framework is runnable from within the NetBeans IDE:  right-click on the Emxsys Application Framework project node Run from the context menu.  You should end up with a 3D map viewer and a map layer manager.

 

After asserting that the framework compiled without error, you can compile and run the Campbell Prediction System.

  1. In the Projects window, right-click on the Campbell Prediction System project node and select either Clean and Build, or Run from the context menu.

Software Development Project

Check out the CPS Wiki on Project Kenai for more information about the CPS software development.

Source Code

The Java source code can be browsed from the CPS and Emxsys Subversion repositories located on the Project Kenai hosting site:

http://emxsys.kenai.com/sources

http://cps.kenai.com/sources

 

Open Source Resources

The CPS software uses open-source libraries and code from NetBeans, NASA's WorldWind SDK, the VisAD Visualization library, and the Weka Machine Learning library.