Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 6947 invoked from network); 1 May 2009 18:16:43 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 1 May 2009 18:16:43 -0000 Received: (qmail 30686 invoked by uid 500); 1 May 2009 18:16:42 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 30618 invoked by uid 500); 1 May 2009 18:16:42 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 30609 invoked by uid 99); 1 May 2009 18:16:42 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 May 2009 18:16:42 +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, 01 May 2009 18:16:40 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 5316E2388961; Fri, 1 May 2009 18:16:19 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r770780 - in /geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context: BlueprintContextImpl.java BlueprintObjectRecipe.java Parser.java Date: Fri, 01 May 2009 18:16:19 -0000 To: scm@geronimo.apache.org From: gawor@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090501181619.5316E2388961@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: gawor Date: Fri May 1 18:16:18 2009 New Revision: 770780 URL: http://svn.apache.org/viewvc?rev=770780&view=rev Log: parse reference, service, ref-list, ref-set inner components Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintContextImpl.java geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintObjectRecipe.java geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Parser.java Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintContextImpl.java URL: http://svn.apache.org/viewvc/geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintContextImpl.java?rev=770780&r1=770779&r2=770780&view=diff ============================================================================== --- geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintContextImpl.java (original) +++ geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintContextImpl.java Fri May 1 18:16:18 2009 @@ -398,14 +398,15 @@ } public Object getComponent(String name) throws NoSuchComponentException { - ComponentMetadata metadata = getComponentMetadata(name); - if (metadata == null) { + if (objectGraph == null) { throw new NoSuchComponentException(name); } - if (objectGraph == null) { - return null; + Object instance = objectGraph.create(name); + if (instance == null) { + throw new NoSuchComponentException(name); + } else { + return instance; } - return objectGraph.create(name); } public ComponentMetadata getComponentMetadata(String name) { Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintObjectRecipe.java URL: http://svn.apache.org/viewvc/geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintObjectRecipe.java?rev=770780&r1=770779&r2=770780&view=diff ============================================================================== --- geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintObjectRecipe.java (original) +++ geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/BlueprintObjectRecipe.java Fri May 1 18:16:18 2009 @@ -40,6 +40,7 @@ import org.osgi.service.blueprint.reflect.CollectionMetadata; import org.osgi.service.blueprint.reflect.MapMetadata; import org.osgi.service.blueprint.reflect.Metadata; +import org.osgi.service.blueprint.reflect.PropsMetadata; import org.osgi.service.blueprint.reflect.ValueMetadata; /** @@ -172,6 +173,8 @@ return false; } else if (metadata instanceof CollectionMetadata) { return false; + } else if (metadata instanceof PropsMetadata) { + return false; } return true; } Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Parser.java URL: http://svn.apache.org/viewvc/geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Parser.java?rev=770780&r1=770779&r2=770780&view=diff ============================================================================== --- geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Parser.java (original) +++ geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Parser.java Fri May 1 18:16:18 2009 @@ -664,8 +664,7 @@ value = getTextValue(element); } String key = element.getAttribute(KEY_ATTRIBUTE); - return new MapEntryImpl(new ValueMetadataImpl(key, String.class.getName()), - new ValueMetadataImpl(value, String.class.getName())); + return new MapEntryImpl(new ValueMetadataImpl(key), new ValueMetadataImpl(value)); } public MapMetadata parseMap(Element element, ComponentMetadata enclosingComponent) { @@ -1023,6 +1022,14 @@ if (isBlueprintNamespace(element.getNamespaceURI())) { if (nodeNameEquals(element, BEAN_ELEMENT)) { return parseBeanMetadata(element); + } else if (nodeNameEquals(element, REFERENCE_ELEMENT)) { + return parseReference(element); + } else if (nodeNameEquals(element, SERVICE_ELEMENT)) { + return parseService(element); + } else if (nodeNameEquals(element, REFLIST_ELEMENT) ) { + return parseRefCollection(element, List.class); + } else if (nodeNameEquals(element, REFSET_ELEMENT)) { + return parseRefCollection(element, Set.class); } else if (nodeNameEquals(element, NULL_ELEMENT) && allowNull) { return NullMetadata.NULL; } else if (nodeNameEquals(element, VALUE_ELEMENT)) {