Return-Path: Delivered-To: apmail-aries-commits-archive@www.apache.org Received: (qmail 59265 invoked from network); 23 Jan 2011 21:20:50 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 23 Jan 2011 21:20:50 -0000 Received: (qmail 7099 invoked by uid 500); 23 Jan 2011 21:20:50 -0000 Delivered-To: apmail-aries-commits-archive@aries.apache.org Received: (qmail 7006 invoked by uid 500); 23 Jan 2011 21:20:50 -0000 Mailing-List: contact commits-help@aries.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@aries.apache.org Delivered-To: mailing list commits@aries.apache.org Received: (qmail 6997 invoked by uid 99); 23 Jan 2011 21:20:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 23 Jan 2011 21:20:50 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 23 Jan 2011 21:20:49 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id DD99423889EA; Sun, 23 Jan 2011 21:20:28 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1062533 - in /aries/trunk/application: application-api/src/main/java/org/apache/aries/application/management/spi/resolve/ application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/ Date: Sun, 23 Jan 2011 21:20:28 -0000 To: commits@aries.apache.org From: cumminsh@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110123212028.DD99423889EA@eris.apache.org> Author: cumminsh Date: Sun Jan 23 21:20:26 2011 New Revision: 1062533 URL: http://svn.apache.org/viewvc?rev=1062533&view=rev Log: ARIES-542: New API on DeploymentManifestManager which takes in a PlatformRepository. Modified: aries/trunk/application/application-api/src/main/java/org/apache/aries/application/management/spi/resolve/DeploymentManifestManager.java aries/trunk/application/application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/DeploymentManifestManagerImpl.java Modified: aries/trunk/application/application-api/src/main/java/org/apache/aries/application/management/spi/resolve/DeploymentManifestManager.java URL: http://svn.apache.org/viewvc/aries/trunk/application/application-api/src/main/java/org/apache/aries/application/management/spi/resolve/DeploymentManifestManager.java?rev=1062533&r1=1062532&r2=1062533&view=diff ============================================================================== --- aries/trunk/application/application-api/src/main/java/org/apache/aries/application/management/spi/resolve/DeploymentManifestManager.java (original) +++ aries/trunk/application/application-api/src/main/java/org/apache/aries/application/management/spi/resolve/DeploymentManifestManager.java Sun Jan 23 21:20:26 2011 @@ -23,10 +23,10 @@ import java.util.jar.Manifest; import org.apache.aries.application.ApplicationMetadata; import org.apache.aries.application.Content; -import org.apache.aries.application.ServiceDeclaration; import org.apache.aries.application.management.AriesApplication; import org.apache.aries.application.management.ResolveConstraint; import org.apache.aries.application.management.ResolverException; +import org.apache.aries.application.management.spi.repository.PlatformRepository; import org.apache.aries.application.modelling.DeployedBundles; import org.apache.aries.application.modelling.ModelledResource; @@ -56,6 +56,22 @@ public interface DeploymentManifestManag Collection otherBundles) throws ResolverException; /** + * Generate the deployment manifest map. The method can be used for some advanced scenarios. + * @param appMeta The Aries application metadata + * @param byValueBundles By value bundles + * @param useBundleSet Use Bundle set + * @param otherBundles Other bundles to be used to narrow the resolved bundles + * @param platformRepository a platform repository to use instead of the default + * @return DeployedBundles model of the deployed application + * @throws ResolverException + */ + DeployedBundles generateDeployedBundles( + ApplicationMetadata appMetadata, + Collection byValueBundles, + Collection otherBundles, + PlatformRepository platformRepository) throws ResolverException; + + /** * Generate a Manifest representation of a DEPLOYMENT.MF, * suitable for example to writing to disk * @param appSymbolicName Modified: aries/trunk/application/application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/DeploymentManifestManagerImpl.java URL: http://svn.apache.org/viewvc/aries/trunk/application/application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/DeploymentManifestManagerImpl.java?rev=1062533&r1=1062532&r2=1062533&view=diff ============================================================================== --- aries/trunk/application/application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/DeploymentManifestManagerImpl.java (original) +++ aries/trunk/application/application-deployment-management/src/main/java/org/apache/aries/application/deployment/management/impl/DeploymentManifestManagerImpl.java Sun Jan 23 21:20:26 2011 @@ -49,6 +49,7 @@ import org.apache.aries.application.mana import org.apache.aries.application.management.BundleInfo; import org.apache.aries.application.management.ResolveConstraint; import org.apache.aries.application.management.ResolverException; +import org.apache.aries.application.management.spi.repository.PlatformRepository; import org.apache.aries.application.management.spi.resolve.AriesApplicationResolver; import org.apache.aries.application.management.spi.resolve.DeploymentManifestManager; import org.apache.aries.application.management.spi.resolve.PostResolveTransformer; @@ -181,9 +182,19 @@ public class DeploymentManifestManagerIm Collection provideByValueBundles, Collection otherBundles) throws ResolverException { - _logger.debug(LOG_ENTRY, "generateDeployedBundles", new Object[]{appMetadata, - provideByValueBundles,otherBundles }); + _logger.debug(LOG_ENTRY, "generateDeployedBundles", new Object[] { + appMetadata, provideByValueBundles, otherBundles }); + DeployedBundles bundles = generateDeployedBundles(appMetadata, + provideByValueBundles, otherBundles, null); + _logger.debug(LOG_EXIT, "generateDeploymentManifest", + new Object[] { bundles }); + return bundles; + } + public DeployedBundles generateDeployedBundles(ApplicationMetadata appMetadata, + Collection provideByValueBundles, Collection otherBundles, PlatformRepository platformRepository) + throws ResolverException { + Collection useBundleSet = appMetadata.getUseBundles(); Collection appContent = appMetadata.getApplicationContents(); @@ -233,7 +244,13 @@ public class DeploymentManifestManagerIm bundlesToResolve.addAll(appContent); Collection slimmedDownUseBundle = narrowUseBundles(useBundleIB, requiredUseBundle); bundlesToResolve.addAll(toContent(slimmedDownUseBundle)); - bundlesToBeProvisioned = resolver.resolve(appSymbolicName, appVersion, byValueBundles, bundlesToResolve); + if (platformRepository != null) { + bundlesToBeProvisioned = resolver.resolve(appSymbolicName, appVersion, + byValueBundles, bundlesToResolve, platformRepository); + } else { + bundlesToBeProvisioned = resolver.resolve(appSymbolicName, appVersion, + byValueBundles, bundlesToResolve); + } pruneFakeBundleFromResults (bundlesToBeProvisioned); for (ModelledResource rbm : bundlesToBeProvisioned) {