Provided by: javahelper_0.45ubuntu1_all bug

NAME

       Debian::Javahelper::Eclipse - Eclipse Helper Library.

SYNOPSIS

        use Debian::Javahelper::Eclipse;

        my @orbitdeps = ();
        push(@orbitdeps, {
            EOB_SYM_NAME => 'org.apache.commons.net',
            EOB_SYS_JAR  => '/usr/share/java/commons-net2.jar'});
        #...
        # Install the feature to "$dropins/$name"
        install_zipped_feature($zip, "$dropins/$name");
        #  and symlink the following orbitdeps.
        install_zipped_feature($zip, "$dropins/$name", @orbitdeps);

DESCRIPTION

       This module is used by the eclipse related javahelpers to share common code.

       Please note this API is not stable and backwards compatibility is not guaranteed at the
       current time. Please contact the maintainers if you are interested in a stable API.

   Definitions
       A bundle refers to a jar file. An orbit dependency (a.k.a orbitdep) is a bundle, which is
       used by eclipse or one of its features without being a part of eclipse or said feature.

       This module keeps track of bundles via hashes; see the EOB_* constants for relevant keys
       (and their expected values).

   Constants
       EOB_SYM_NAME
           Key for hashes to fetch the symbolic name of a bundle.

       EOB_BUNDLE_VERSION
           Key for hashes to fetch the version of a bundle.

       EOB_SYS_JAR
           Key for hashes to fetch the path to the system installed jar file.

           Only valid for an orbit dependency and cannot be used with manifests.

   Methods
       install_zipped_feature($fzip, $loc[, $orbitdeps[, $package, $needs]])
           Unpacks the zipped feature $fzip into $loc, which should be a subfolder of a dropins
           folder (e.g. /usr/share/eclipse/dropins/emf). This can also be used to install the
           feature into a "build environment". In this case it should be installed into the same
           folder as the SDK is (this folder is usually called "SDK").

           If $orbitdeps is present, it should be an ARRAY ref containing orbit dependencies,
           which will be symlinked after unpacking. This sub only needs the EOB_SYM_NAME and
           EOB_SYS_JAR to be set and valid. Orbit dependencies not present in the installed
           folder will be ignored, so it is safe to have unrelated orbit dependencies in the
           ARRAY ref.

           If $package and $needs are present, the former should be the name of a debian package
           and the latter a hashref. The sub will populate the $needs hashref with which orbit
           dependencies are used by the package.  The $needs hashref can be re-used in multiple
           calls to this sub.

           Keys in $needs will be the path to the orbit jar's real location (EOB_SYS_JAR) and the
           value a new hashref. This hashref has as keys the names of packages and as values 1.
           The $needs is used by jh_installeclipse to populate the ${orbit:Depends} variables for
           packages.

AUTHOR

       Niels Thykier <niels@thykier.net>

COPYRIGHT AND LICENSE

       Copyright 2010 by Niels Thykier

       This module is free software; you may redistribute it and/or modify it under the terms of
       GNU GPL 2.