blob: ea7c35485b55b93b9c36ce7dab1661a21f6f0352 [file] [log] [blame]
# ------------------------------------------------------------------
# General mangen properties example
# ------------------------------------------------------------------
# Determines which OSGi release level to create the bundle jars against. Current
# valid values are '3' and '4' (default is '3')
mangen.osgi.level=3
# Determines whether to automatically process any inner jars found, including
# generation of a suitable "Bundle-Classpath" header. Valid values are 'true' or
# 'false' (default is 'false').
#TODO: not implemented yet
#mangen.innerjar.auto=true
# Default is to fail (exit code = 3) on errors, can be disabled
#mangen.failonerror=off
# Optionally can be made to fail (exit code = 5) if there are warnings
#mangen.failonwarning=on
#
# The concept of rulesets is to make it easier to group whole sets of rules for
# use e.g. here it's used to separate general rules, OSGi R3 vs. OSGi R4
# specific rules, and an app. specific rule to ignore all Ant packages found
# in packages. Without rulesets, the sequential numbering means that mixing
# and matching various rules requires a lot of manual renumbering.
#
# Note also the use of ${var} expansion, which follows the same model as used
# for Oscar properties (http://oscar.objectweb.org/)
#
mangen.rulesets=mangen-rule-initial- , mangen-rule-R${mangen.osgi.level}- , mangen-rule- , mangen-rule-final-
# Standard JDK javax.* packages
mangen.jdk.javax.packages=javax\\.accessibility,javax\\.crypto,javax\\.crypto\\.interfaces,javax\\.crypto\\.spec,javax\\.imageio,javax\\.imageio\\.event,javax\\.imageio\\.metadata,javax\\.imageio\\.plugins\\.jpeg,javax\\.imageio\\.spi,javax\\.imageio\\.stream,javax\\.naming,javax\\.naming\\.directory,javax\\.naming\\.event,javax\\.naming\\.ldap,javax\\.naming\\.spi,javax\\.net,javax\\.net\\.ssl,javax\\.print,javax\\.print\\.attribute,javax\\.print\\.attribute\\.standard,javax\\.print\\.event,javax\\.rmi,javax\\.rmi\\.CORBA,javax\\.security\\.auth,javax\\.security\\.auth\\.callback,javax\\.security\\.auth\\.kerberos,javax\\.security\\.auth\\.login,javax\\.security\\.auth\\.spi,javax\\.security\\.auth\\.x500,javax\\.security\\.cert,javax\\.sound\\.midi,javax\\.sound\\.midi\\.spi,javax\\.sound\\.sampled,javax\\.sound\\.sampled\\.spi,javax\\.sql,javax\\.swing,javax\\.swing\\.border,javax\\.swing\\.colorchooser,javax\\.swing\\.event,javax\\.swing\\.filechooser,javax\\.swing\\.plaf,javax\\.swing\\.plaf\\.basic,javax\\.swing\\.plaf\\.metal,javax\\.swing\\.plaf\\.multi,javax\\.swing\\.table,javax\\.swing\\.text,javax\\.swing\\.text\\.html,javax\\.swing\\.text\\.html\\.parser,javax\\.swing\\.text\\.rtf,javax\\.swing\\.tree,javax\\.swing\\.undo,javax\\.transaction,javax\\.transaction\\.xa,javax\\.xml\\.parsers,javax\\.xml\\.transform,javax\\.xml\\.transform\\.dom,javax\\.xml\\.transform\\.sax,javax\\.xml\\.transform\\.stream,org\\.ietf\\.jgss,org\\.omg\\.CORBA,org\\.omg\\.CORBA_2_3,org\\.omg\\.CORBA_2_3\\.portable,org\\.omg\\.CORBA\\.DynAnyPackage,org\\.omg\\.CORBA\\.ORBPackage,org\\.omg\\.CORBA\\.portable,org\\.omg\\.CORBA\\.TypeCodePackage,org\\.omg\\.CosNaming,org\\.omg\\.CosNaming\\.NamingContextExtPackage,org\\.omg\\.CosNaming\\.NamingContextPackage,org\\.omg\\.Dynamic,org\\.omg\\.DynamicAny,org\\.omg\\.DynamicAny\\.DynAnyFactoryPackage,org\\.omg\\.DynamicAny\\.DynAnyPackage,org\\.omg\\.IOP,org\\.omg\\.IOP\\.CodecFactoryPackage,org\\.omg\\.IOP\\.CodecPackage,org\\.omg\\.Messaging,org\\.omg\\.PortableInterceptor,org\\.omg\\.PortableInterceptor\\.ORBInitInfoPackage,org\\.omg\\.PortableServer,org\\.omg\\.PortableServer\\.CurrentPackage,org\\.omg\\.PortableServer\\.POAManagerPackage,org\\.omg\\.PortableServer\\.POAPackage,org\\.omg\\.PortableServer\\.portable,org\\.omg\\.PortableServer\\.ServantLocatorPackage,org\\.omg\\.SendingContext,org\\.omg\\.stub\\.java\\.rmi,org\\.w3c\\.dom,org\\.xml\\.sax,org\\.xml\\.sax\\.ext,org\\.xml\\.sax\\.helpers
# R3 treats any standard JDK classes as system packages
mangen.R3.syspackages=java\\..*,sun\\..*,com\\.sun\\..*,${mangen.jdk.javax.packages}
# R4 system packages are only considered to be java.*
mangen.R4.syspackages=java\\..*
# Initial rule to "process" each bundle's JAR. Without this, no class scanning
# will be done. Hence this will nearly always be the first rule.
mangen-rule-initial-0=ProcessBundles
# App specific rule to ignore Ant packages
mangen-rule-initial-1=Ignore imports(org\\.apache\\.tools\\.ant.*)
# R3 rule to ignore all standard JDK classes.
#
# The rule contains an option, in this case imports(), which contains a comma
# separate list of option qualifiers, in this case a set of regex patterns to
# match against package name.
#
# Care needs to be taken with delimitter chars - ',' and space (' ') should
# not be used except as shown since the tokenizer needs them for parsing.
#
mangen-rule-R3-0=Ignore imports(${mangen.R3.syspackages})
mangen-rule-R3-1=DontImportOwnExports
mangen-rule-R3-2=ResolveImportsToExports sys-packages(${mangen.R3.syspackages})
# R4 rule is only to ignore java.* classes
mangen-rule-R4-0=Ignore imports(${mangen.R4.syspackages})
mangen-rule-R4-1=DontImportOwnExports
mangen-rule-R4-2=ResolveImportsToExports sys-packages(${mangen.R4.syspackages})
# General rules. These use the default rule name and will also be used if no
# "mangen.rulesets" property is specified.
#mangen-rule-0=Merge existing imports(.*) exports(.*)
mangen-rule-0=Merge fixed imports(.*) exports(.*)
# The AttribuetStamp rule allows atrtibutes to be supplied to be include with
# mangen generated package names. Shown commented out here to give an example
#
#mangen-rule-1=AttributeStamp imports(org\\.osgi\\.framework;version="1.2.0") exports(org\\.osgi\\.service\\.cm;version="2.0.0")
# Final rules. We use these here to run a rule that will force an update to the
# bundle manifests. The "overwrite" option tells mangen to overwrite the bundle
# with the new version.
#
mangen-rule-final-0=UpdateBundles
#mangen-rule-final-0=UpdateBundles overwrite
#
# Details of which mangen reports need to be run
#
mangen-report-0=RuleReport
#mangen-report-1=BundleReport show-local-rules show-differences
mangen-report-1=BundleReport show-local-rules
#-----------------------------------------------------------------------------
#
# Properties below this section should not be changed without a good
# understanding of mangen's internal operation
#
# Specifies which scanner class to use.
#mangen.scanner.class=com.ascert.openosgi.mangen.BCELScanner
mangen.scanner.class=org.ungoverned.osgi.mangen.ASMClassScanner
# Diagnostic tracing
#mangen.trace=on