Return-Path: Delivered-To: apmail-felix-commits-archive@www.apache.org Received: (qmail 38784 invoked from network); 23 Apr 2010 11:42:25 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 23 Apr 2010 11:42:25 -0000 Received: (qmail 15620 invoked by uid 500); 23 Apr 2010 11:42:25 -0000 Delivered-To: apmail-felix-commits-archive@felix.apache.org Received: (qmail 15543 invoked by uid 500); 23 Apr 2010 11:42:24 -0000 Mailing-List: contact commits-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list commits@felix.apache.org Received: (qmail 15536 invoked by uid 99); 23 Apr 2010 11:42:24 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Apr 2010 11:42:24 +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; Fri, 23 Apr 2010 11:42:22 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 52A0F238897F; Fri, 23 Apr 2010 11:41:39 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r937258 - /felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java Date: Fri, 23 Apr 2010 11:41:39 -0000 To: commits@felix.apache.org From: cziegeler@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100423114139.52A0F238897F@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: cziegeler Date: Fri Apr 23 11:41:38 2010 New Revision: 937258 URL: http://svn.apache.org/viewvc?rev=937258&view=rev Log: FELIX-2300 : SCR Plugin should be able to produce a metatype property for service.ranking. Apply patch from Justin Edelson Modified: felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java Modified: felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java URL: http://svn.apache.org/viewvc/felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java?rev=937258&r1=937257&r2=937258&view=diff ============================================================================== --- felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java (original) +++ felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/helper/PropertyHandler.java Fri Apr 23 11:41:38 2010 @@ -114,15 +114,7 @@ public class PropertyHandler { // property is private if explicitly marked or a well known // service property such as service.pid - final boolean isPrivate = SCRDescriptorGenerator.getBoolean(tag, - Constants.PROPERTY_PRIVATE, false) - || name.equals(org.osgi.framework.Constants.SERVICE_PID) - || name.equals(org.osgi.framework.Constants.SERVICE_DESCRIPTION) - || name.equals(org.osgi.framework.Constants.SERVICE_ID) - || name.equals(org.osgi.framework.Constants.SERVICE_RANKING) - || name.equals(org.osgi.framework.Constants.SERVICE_VENDOR) - || name.equals(ConfigurationAdmin.SERVICE_BUNDLELOCATION) - || name.equals(ConfigurationAdmin.SERVICE_FACTORYPID); + final boolean isPrivate = isPrivate(name, tag); // if this is an abstract component we store the extra info in the property if ( component.isAbstract() ) { @@ -190,6 +182,22 @@ public class PropertyHandler { component.addProperty(prop); } + + private boolean isPrivate(String name, JavaTag tag) { + if (name.equals(org.osgi.framework.Constants.SERVICE_RANKING)) { + return SCRDescriptorGenerator.getBoolean(tag, + Constants.PROPERTY_PRIVATE, true); + } else { + return SCRDescriptorGenerator.getBoolean(tag, + Constants.PROPERTY_PRIVATE, false) + || name.equals(org.osgi.framework.Constants.SERVICE_PID) + || name.equals(org.osgi.framework.Constants.SERVICE_DESCRIPTION) + || name.equals(org.osgi.framework.Constants.SERVICE_ID) + || name.equals(org.osgi.framework.Constants.SERVICE_VENDOR) + || name.equals(ConfigurationAdmin.SERVICE_BUNDLELOCATION) + || name.equals(ConfigurationAdmin.SERVICE_FACTORYPID); + } + } /** * Return the name of the property.