Return-Path: X-Original-To: apmail-aries-commits-archive@www.apache.org Delivered-To: apmail-aries-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D205910CFE for ; Tue, 9 Jul 2013 14:03:47 +0000 (UTC) Received: (qmail 9130 invoked by uid 500); 9 Jul 2013 14:03:47 -0000 Delivered-To: apmail-aries-commits-archive@aries.apache.org Received: (qmail 9075 invoked by uid 500); 9 Jul 2013 14:03:47 -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 9059 invoked by uid 99); 9 Jul 2013 14:03:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 Jul 2013 14:03:40 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.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; Tue, 09 Jul 2013 14:03:37 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 88763238897A; Tue, 9 Jul 2013 14:03:16 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1501272 - in /aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal: Activator.java BundleResource.java BundleRevisionResource.java Date: Tue, 09 Jul 2013 14:03:16 -0000 To: commits@aries.apache.org From: jwross@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20130709140316.88763238897A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jwross Date: Tue Jul 9 14:03:16 2013 New Revision: 1501272 URL: http://svn.apache.org/r1501272 Log: [aries-952] Make ModelledResourceManager service dependency optional. Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleRevisionResource.java Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java?rev=1501272&r1=1501271&r2=1501272&view=diff ============================================================================== --- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java (original) +++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/Activator.java Tue Jul 9 14:03:16 2013 @@ -209,8 +209,7 @@ public class Activator implements Bundle private boolean hasRequiredServices() { return coordinator != null && regionDigraph != null && - resolver != null && - modelledResourceManager != null; + resolver != null; } private boolean isActive() { Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java?rev=1501272&r1=1501271&r2=1501272&view=diff ============================================================================== --- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java (original) +++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleResource.java Tue Jul 9 14:03:16 2013 @@ -71,11 +71,7 @@ public class BundleResource implements R this.content = content; IDirectory dir = content.isDirectory() ? content.convert() : content.convertNested(); manifest = computeManifest(dir); - // TODO Could use ModelledResourceManager.getServiceElements instead. - // Only the service dependency info is being used right now. - ModelledResource resource = getModelledResourceManager().getModelledResource(dir); - computeRequirements(resource); - computeCapabilities(resource); + computeRequirementsAndCapabilities(dir); } public List getCapabilities(String namespace) { @@ -136,12 +132,11 @@ public class BundleResource implements R return content.toString(); } - private void computeCapabilities(ModelledResource resource) { + private void computeCapabilitiesOtherThanService() { computeOsgiIdentityCapability(); computeOsgiWiringPackageCapabilities(); computeOsgiWiringBundleCapability(); computeGenericCapabilities(); - computeOsgiServiceCapabilities(resource); } private void computeGenericCapabilities() { @@ -231,12 +226,24 @@ public class BundleResource implements R if (iph != null) requirements.addAll(iph.toRequirements(this)); } - - private void computeRequirements(ModelledResource resource) { + + private void computeRequirementsAndCapabilities(IDirectory directory) throws ModellerException { + computeRequirementsOtherThanService(); + computeCapabilitiesOtherThanService(); + ModelledResourceManager manager = getModelledResourceManager(); + if (manager == null) + return; + // TODO Could use ModelledResourceManager.getServiceElements instead. + // Only the service dependency info is being used right now. + ModelledResource resource = manager.getModelledResource(directory); + computeOsgiServiceRequirements(resource); + computeOsgiServiceCapabilities(resource); + } + + private void computeRequirementsOtherThanService() { computeOsgiWiringPackageRequirements(); computeGenericRequirements(); computeOsgiWiringBundleRequirements(); - computeOsgiServiceRequirements(resource); computeOsgiExecutionEnvironmentRequirement(); } Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleRevisionResource.java URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleRevisionResource.java?rev=1501272&r1=1501271&r2=1501272&view=diff ============================================================================== --- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleRevisionResource.java (original) +++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/BundleRevisionResource.java Tue Jul 9 14:03:16 2013 @@ -75,6 +75,8 @@ public class BundleRevisionResource impl private ModelledResource computeModelledResource() { Activator activator = Activator.getInstance(); ModelledResourceManager manager = activator.getModelledResourceManager(); + if (manager == null) + return null; BundleDirectory directory = new BundleDirectory(revision.getBundle()); try { return manager.getModelledResource(directory); @@ -86,6 +88,8 @@ public class BundleRevisionResource impl private List computeServiceCapabilities() { ModelledResource resource = getModelledResource(); + if (resource == null) + return Collections.emptyList(); Collection services = resource.getExportedServices(); if (services.isEmpty()) return Collections.emptyList(); @@ -102,6 +106,8 @@ public class BundleRevisionResource impl private List computeServiceRequirements() { ModelledResource resource = getModelledResource(); + if (resource == null) + return Collections.emptyList(); Collection services = resource.getImportedServices(); if (services.isEmpty()) return Collections.emptyList();