You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2010/09/29 12:27:10 UTC

svn commit: r1002566 - /karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java

Author: gnodet
Date: Wed Sep 29 10:27:09 2010
New Revision: 1002566

URL: http://svn.apache.org/viewvc?rev=1002566&view=rev
Log:
Fix namespacehandler to work with blueprint 0.3-SNAPSHOT, clean it a bit from old stuff

Modified:
    karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java

Modified: karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java
URL: http://svn.apache.org/viewvc/karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java?rev=1002566&r1=1002565&r2=1002566&view=diff
==============================================================================
--- karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java (original)
+++ karaf/trunk/shell/console/src/main/java/org/apache/karaf/shell/console/commands/NamespaceHandler.java Wed Sep 29 10:27:09 2010
@@ -25,6 +25,7 @@ import java.util.HashSet;
 import java.util.Set;
 
 import org.apache.felix.service.command.Function;
+import org.osgi.service.blueprint.reflect.*;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;
@@ -37,45 +38,21 @@ import org.apache.aries.blueprint.mutabl
 import org.apache.aries.blueprint.mutable.MutableRefMetadata;
 import org.apache.aries.blueprint.mutable.MutableCollectionMetadata;
 import org.apache.karaf.shell.console.CompletableFunction;
-import org.osgi.service.blueprint.reflect.BeanArgument;
-import org.osgi.service.blueprint.reflect.BeanProperty;
-import org.osgi.service.blueprint.reflect.ComponentMetadata;
-import org.osgi.service.blueprint.reflect.IdRefMetadata;
-import org.osgi.service.blueprint.reflect.Metadata;
-import org.osgi.service.blueprint.reflect.ValueMetadata;
-import org.osgi.service.blueprint.reflect.RefMetadata;
-import org.osgi.service.blueprint.reflect.NullMetadata;
-import org.osgi.service.blueprint.reflect.BeanMetadata;
 import org.osgi.service.blueprint.container.ComponentDefinitionException;
 
 
 public class NamespaceHandler implements org.apache.aries.blueprint.NamespaceHandler {
 
     public static final String ID = "id";
-    public static final String DESCRIPTION = "description";
-    public static final String PLUGIN_TEMPLATE = "pluginTemplate";
     public static final String ACTION = "action";
     public static final String ACTION_ID = "actionId";
-    public static final String COMMAND_TEMPLATE_SUFFIX = "CommandTemplate";
     public static final String COMMAND_BUNDLE = "command-bundle";
     public static final String NAME = "name";
-    public static final String LOCATION = "location";
-    public static final String COMMANDS = "commands";
     public static final String COMMAND = "command";
-    public static final String DOCUMENTER = "documenter";
-    public static final String COMPLETER = "completer";
     public static final String COMPLETERS = "completers";
     public static final String BEAN = "bean";
     public static final String REF = "ref";
     public static final String NULL = "null";
-    public static final String MESSAGE_SOURCE = "message-source";
-    public static final String MESSAGES = "messages";
-    public static final String PROTOTYPE = "prototype";
-    public static final String ALIAS = "alias";
-    public static final String ALIASES = "aliases";
-    public static final String LINK = "link";
-    public static final String LINKS = "links";
-    public static final String TARGET = "target";
     public static final String BLUEPRINT_CONTAINER = "blueprintContainer";
     public static final String BLUEPRINT_CONVERTER = "blueprintConverter";
 
@@ -114,10 +91,6 @@ public class NamespaceHandler implements
     private void parseChildElement(Element element, ParserContext context) {
         if (nodeNameEquals(element, COMMAND)) {
             parseCommand(element, context);
-        } else if (nodeNameEquals(element, LINK)) {
-//            parseLink(element, context);
-        } else if (nodeNameEquals(element, ALIAS)) {
-//            parseAlias(element, context);
         }
     }
 
@@ -126,16 +99,6 @@ public class NamespaceHandler implements
         command.setRuntimeClass(BlueprintCommand.class);
         command.addProperty(BLUEPRINT_CONTAINER, createRef(context, BLUEPRINT_CONTAINER));
         command.addProperty(BLUEPRINT_CONVERTER, createRef(context, BLUEPRINT_CONVERTER));
-//        MutableBeanMetadata documenter = context.createMetadata(MutableBeanMetadata.class);
-//        documenter.setRuntimeClass(MessageSourceCommandDocumenter.class);
-//        command.addProperty(DOCUMENTER, documenter);
-//        MutableBeanMetadata messages = context.createMetadata(MutableBeanMetadata.class);
-//        messages.setRuntimeClass(CommandMessageSource.class);
-//        command.addProperty(MESSAGES, messages);
-//        MutableBeanMetadata location = context.createMetadata(MutableBeanMetadata.class);
-//        location.setRuntimeClass(CommandLocationImpl.class);
-//        location.addArgument(createStringValue(context, element.getAttribute(NAME)), String.class.getName(), 0);
-//        command.addProperty(LOCATION, location);
 
         String location = element.getAttribute(NAME);
         location = location.replace('/', ':');
@@ -170,8 +133,7 @@ public class NamespaceHandler implements
         MutableServiceMetadata commandService = context.createMetadata(MutableServiceMetadata.class);
         commandService.setActivation(MutableServiceMetadata.ACTIVATION_LAZY);
         commandService.setId(getName());
-        commandService.addInterface(Function.class.getName());
-        commandService.addInterface(CompletableFunction.class.getName());
+        commandService.setAutoExport(ServiceMetadata.AUTO_EXPORT_ALL_CLASSES);
         commandService.setServiceComponent(command);
         commandService.addServiceProperty(createStringValue(context, "osgi.command.scope"),
                                           createStringValue(context, scope));
@@ -223,32 +185,6 @@ public class NamespaceHandler implements
         return collection;
     }
 
-//    private void parseLink(Element element, ParserContext context) {
-//        MutableBeanMetadata link = context.createMetadata(MutableBeanMetadata.class);
-//        link.setRuntimeClass(LinkImpl.class);
-//        link.addArgument(createStringValue(context, element.getAttribute(NAME)), String.class.getName(), 0);
-//        link.addArgument(createStringValue(context, element.getAttribute(TARGET)), String.class.getName(), 0);
-//
-//        MutableServiceMetadata linkService = context.createMetadata(MutableServiceMetadata.class);
-//        linkService.setId(getName());
-//        linkService.addInterface(Link.class.getName());
-//        linkService.setServiceComponent(link);
-//        context.getComponentDefinitionRegistry().registerComponentDefinition(linkService);
-//    }
-//
-//    private void parseAlias(Element element, ParserContext context) {
-//        MutableBeanMetadata alias = context.createMetadata(MutableBeanMetadata.class);
-//        alias.setRuntimeClass(AliasImpl.class);
-//        alias.addArgument(createStringValue(context, element.getAttribute(NAME)), String.class.getName(), 0);
-//        alias.addArgument(createStringValue(context, element.getAttribute(ALIAS)), String.class.getName(), 0);
-//
-//        MutableServiceMetadata aliasService = context.createMetadata(MutableServiceMetadata.class);
-//        aliasService.setId(getName());
-//        aliasService.addInterface(Alias.class.getName());
-//        aliasService.setServiceComponent(alias);
-//        context.getComponentDefinitionRegistry().registerComponentDefinition(aliasService);
-//    }
-//
     private ValueMetadata createStringValue(ParserContext context, String str) {
         MutableValueMetadata value = context.createMetadata(MutableValueMetadata.class);
         value.setStringValue(str);