blob: 446d13da1c42954374482d3a0911707f3924c91e [file] [log] [blame]
Rob Walkercf85daa2006-08-24 11:04:56 +00001# ------------------------------------------------------------------
2# General mangen properties example
3# ------------------------------------------------------------------
4
5# Determines which OSGi release level to create the bundle jars against. Current
6# valid values are '3' and '4' (default is '3')
7mangen.osgi.level=3
8
9
10# Determines whether to automatically process any inner jars found, including
11# generation of a suitable "Bundle-Classpath" header. Valid values are 'true' or
12# 'false' (default is 'false').
13#TODO: not implemented yet
14#mangen.innerjar.auto=true
15
16# Default is to fail (exit code = 3) on errors, can be disabled
17#mangen.failonerror=off
18# Optionally can be made to fail (exit code = 5) if there are warnings
19#mangen.failonwarning=on
20
21#
22# The concept of rulesets is to make it easier to group whole sets of rules for
23# use e.g. here it's used to separate general rules, OSGi R3 vs. OSGi R4
24# specific rules, and an app. specific rule to ignore all Ant packages found
25# in packages. Without rulesets, the sequential numbering means that mixing
26# and matching various rules requires a lot of manual renumbering.
27#
28# Note also the use of ${var} expansion, which follows the same model as used
29# for Oscar properties (http://oscar.objectweb.org/)
30#
31mangen.rulesets=mangen-rule-initial- , mangen-rule-R${mangen.osgi.level}- , mangen-rule- , mangen-rule-final-
32
33# Standard JDK javax.* packages
34mangen.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
35# R3 treats any standard JDK classes as system packages
36mangen.R3.syspackages=java\\..*,sun\\..*,com\\.sun\\..*,${mangen.jdk.javax.packages}
37# R4 system packages are only considered to be java.*
38mangen.R4.syspackages=java\\..*
39
40# Initial rule to "process" each bundle's JAR. Without this, no class scanning
41# will be done. Hence this will nearly always be the first rule.
42mangen-rule-initial-0=ProcessBundles
43# App specific rule to ignore Ant packages
44mangen-rule-initial-1=Ignore imports(org\\.apache\\.tools\\.ant.*)
45
46
47# R3 rule to ignore all standard JDK classes.
48#
49# The rule contains an option, in this case imports(), which contains a comma
50# separate list of option qualifiers, in this case a set of regex patterns to
51# match against package name.
52#
53# Care needs to be taken with delimitter chars - ',' and space (' ') should
54# not be used except as shown since the tokenizer needs them for parsing.
55#
56mangen-rule-R3-0=Ignore imports(${mangen.R3.syspackages})
57mangen-rule-R3-1=DontImportOwnExports
58mangen-rule-R3-2=ResolveImportsToExports sys-packages(${mangen.R3.syspackages})
59
60# R4 rule is only to ignore java.* classes
61mangen-rule-R4-0=Ignore imports(${mangen.R4.syspackages})
62mangen-rule-R4-1=DontImportOwnExports
63mangen-rule-R4-2=ResolveImportsToExports sys-packages(${mangen.R4.syspackages})
64
65# General rules. These use the default rule name and will also be used if no
66# "mangen.rulesets" property is specified.
67#mangen-rule-0=Merge existing imports(.*) exports(.*)
68mangen-rule-0=Merge fixed imports(.*) exports(.*)
69
70# The AttribuetStamp rule allows atrtibutes to be supplied to be include with
71# mangen generated package names. Shown commented out here to give an example
72#
73#mangen-rule-1=AttributeStamp imports(org\\.osgi\\.framework;version="1.2.0") exports(org\\.osgi\\.service\\.cm;version="2.0.0")
74
75# Final rules. We use these here to run a rule that will force an update to the
76# bundle manifests. The "overwrite" option tells mangen to overwrite the bundle
77# with the new version.
78#
79mangen-rule-final-0=UpdateBundles
80#mangen-rule-final-0=UpdateBundles overwrite
81
82#
83# Details of which mangen reports need to be run
84#
85mangen-report-0=RuleReport
86#mangen-report-1=BundleReport show-local-rules show-differences
87mangen-report-1=BundleReport show-local-rules
88
89#-----------------------------------------------------------------------------
90#
91# Properties below this section should not be changed without a good
92# understanding of mangen's internal operation
93#
94
95# Specifies which scanner class to use.
Rob Walkerd48a0112006-08-25 07:36:56 +000096#mangen.scanner.class=org.apache.felix.tool.mangen.BCELScanner
97mangen.scanner.class=org.apache.felix.tool.mangen.ASMClassScanner
Rob Walkercf85daa2006-08-24 11:04:56 +000098
99# Diagnostic tracing
100#mangen.trace=on
101
102