Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Page Properties
Target release2.0
Epic
Jira Legacy
serverJIRA (senbox.atlassian.net)
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId34c99a62-e5be-31ca-898a-01c2aded1b99
keySNAP-97
Document status
Status
titleDRAFT
Document owner

Marco Peters

DesignerFormer user (Deleted), Marco Peters
DevelopersFormer user (Deleted), Marco Peters
QAOlga Faber (Unlicensed)

Goals

Users wish to use SNAP libraries or An essential SNAP requirement is allowing users to develop their own tools applications based on SNAP librariesJava libraries. Very often, such applications are run in headless environments, without a GUI such as ist it is the case for batch-mode processing or web processing services. In BEAM and in the Sentinel Toolboxes 1.x it was relatively simple to collect a classpath from all the libraries because all binaries have been included in the lib and modules sub-directories. Since SNAP 2, libraries are distributed in the installation directory according to NetBeans clusters. It is no longer straight forward for users to collect required libraries form a NetBeans installation structure. 

Also, the NetBeans platform allows only for a single module runtime instantiation which means, only a single NetBeans application can be launched from an installation directory (unless we invoke it is invoked with a different user directoriesdirectory - TBC). But in a headless environment we users don't need and don't want the NetBeans module runtime at all. The ultimate goal is therefore allowing users to allow users use the SNAP Engine modules and their extension modules independently of NetBeans and of other unwanted (GUI) modules. Along with that, it should be possible to run any number of non-NetBeans .Even the SNAP Engine applications on a single SNAP 2 installation directory.

Background and strategic fit

The STEP Cloud Exploitation Platform, CEP, is a component that requires a headless use of the SNAP Java libraries. For example, it should be possible to directly use SNAP Java libraries for the implementation of Hadoop MapReduce jobs.

The SNAP Engine itself has at least two applications of itself:

  1. The Graph Processing Tool, GPT, a command-line tool
  2. The Product Converter, PConvert, another command-line tool 

Background and strategic fit

...

Assumptions

Requirements

#TitleUser StoryImportanceNotes
1Executable scriptShell and batch scripts are needed to execute gpf

These scripts shall be placed in the bin folder of the installation directory. Must be done by our own installer.

2

Collect modules on classpath

   
3

Collect native libraries

   
4Execute activators on start   
5Multiple running instances  As we don't use NetBeans runtime for running gpt this is probably no problem.
     

...