public WrappingTransformer()

in jpa-container/src/main/java/org/apache/aries/jpa/container/weaving/impl/WrappingTransformer.java [43:62]


    public WrappingTransformer(ClassTransformer delegate, ServiceReference<?> persistenceProvider) {
        validate(delegate, persistenceProvider);
        this.delegate = delegate;

        Object packages = persistenceProvider.getProperty("org.apache.aries.jpa.container.weaving.packages");
        if (packages instanceof String[]) {
            for (String s : (String[])packages) {
                packageImportsToAdd.add(s);
            }
        } else {
            Bundle provider = persistenceProvider.getBundle();
            String suffix = ";" + Constants.BUNDLE_SYMBOLICNAME_ATTRIBUTE + "=" + provider.getSymbolicName()
                            + ";" + Constants.BUNDLE_VERSION_ATTRIBUTE + "=" + provider.getVersion();

            BundleRevision br = provider.adapt(BundleWiring.class).getRevision();
            for (BundleCapability bc : br.getDeclaredCapabilities(BundleRevision.PACKAGE_NAMESPACE)) {
                packageImportsToAdd.add(bc.getAttributes().get(BundleRevision.PACKAGE_NAMESPACE) + suffix);
            }
        }
    }