#
# -CONCIERGE-
# 
# This file contains the setup for the Concierge repository
#

-plugin.concierge.repo= \
	aQute.bnd.deployer.repository.FixedIndexedRepo; \
		name=Concierge; \
		locations=https://www.eclipse.org/concierge/repository/index.xml;
	
#
# run system packages for the Java 1.8 compact profiles
#
# remove compact3 or compact2 if you want a lower profile
#

# compact1 profile packages
-runsystempackages.compact1: \
	javax.crypto.interfaces,\
 	javax.crypto.spec,\
 	javax.net,\
 	javax.net.ssl,\
 	javax.script,\
 	javax.security.auth,\
 	javax.security.auth.callback,\
 	javax.security.auth.login,\
 	javax.security.auth.spi,\
 	javax.security.auth.x500,\
 	javax.security.cert

# compact2 profile packages
-runsystempackages.compact2: \
	javax.crypto.interfaces,\
 	javax.crypto.spec,\
 	javax.net,\
 	javax.net.ssl,\
 	javax.rmi.ssl,\
 	javax.script,\
 	javax.security.auth,\
 	javax.security.auth.callback,\
 	javax.security.auth.login,\
 	javax.security.auth.spi,\
 	javax.security.auth.x500,\
 	javax.security.cert,\
 	javax.sql,\
 	javax.transaction,\
 	javax.transaction.xa,\
 	javax.xml,\
 	javax.xml.datatype,\
 	javax.xml.namespace,\
 	javax.xml.parsers,\
 	javax.xml.stream,\
 	javax.xml.stream.events,\
 	javax.xml.stream.util,\
 	javax.xml.transform,\
 	javax.xml.transform.dom,\
 	javax.xml.transform.sax,\
 	javax.xml.transform.stax,\
 	javax.xml.transform.stream,\
 	javax.xml.validation,\
 	javax.xml.xpath,\
 	org.w3c.dom,\
 	org.w3c.dom.bootstrap,\
 	org.w3c.dom.events,\
 	org.w3c.dom.ls,\
 	org.xml.sax,\
 	org.xml.sax.ext,\
 	org.xml.sax.helpers

# compact3 profile packages
-runsystempackages.compact3: \
 	javax.annotation.processing,\
 	javax.crypto.interfaces,\
 	javax.crypto.spec,\
 	javax.lang.model,\
 	javax.lang.model.element,\
 	javax.lang.model.type,\
 	javax.lang.model.util,\
 	javax.management,\
 	javax.management.loading,\
 	javax.management.modelmbean,\
 	javax.management.monitor,\
 	javax.management.openmbean,\
 	javax.management.relation,\
 	javax.management.remote,\
 	javax.management.remote.rmi,\
 	javax.management.timer,\
 	javax.naming,\
 	javax.naming.directory,\
 	javax.naming.event,\
 	javax.naming.ldap,\
 	javax.naming.spi,\
 	javax.net,\
 	javax.net.ssl,\
 	javax.rmi.ssl,\
 	javax.script,\
 	javax.security.auth,\
 	javax.security.auth.kerberos,\
 	javax.security.auth.callback,\
 	javax.security.auth.login,\
 	javax.security.auth.spi,\
 	javax.security.auth.x500,\
 	javax.security.cert,\
 	javax.security.sasl,\
 	javax.sql,\
 	javax.sql.rowset,\
 	javax.sql.rowset.serial,\
 	javax.sql.rowset.spi,\
 	javax.tools,\
 	javax.transaction,\
 	javax.transaction.xa,\
 	javax.xml,\
 	javax.xml.crypto,\
 	javax.xml.crypto.dom,\
 	javax.xml.crypto.dsig,\
 	javax.xml.crypto.dsig.dom,\
 	javax.xml.crypto.dsig.keyinfo,\
 	javax.xml.crypto.dsig.spec,\
 	javax.xml.datatype,\
 	javax.xml.namespace,\
 	javax.xml.parsers,\
 	javax.xml.stream,\
 	javax.xml.stream.events,\
 	javax.xml.stream.util,\
 	javax.xml.transform,\
	javax.xml.transform.dom,\
	javax.xml.transform.sax,\
	javax.xml.transform.stax,\
	javax.xml.transform.stream,\
 	javax.xml.validation,\
 	javax.xml.xpath,\
 	org.ieft.jgss,\
 	org.w3c.dom,\
 	org.w3c.dom.bootstrap,\
 	org.w3c.dom.events,\
 	org.w3c.dom.ls,\
 	org.xml.sax,\
 	org.xml.sax.ext,\
 	org.xml.sax.helpers

-runproperties.concierge: \
	org.osgi.framework.bootdelegation="sun.*"
