karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guillaume Nodet (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (KARAF-2772) Separate command api and support classes from shell
Date Thu, 06 Mar 2014 00:40:49 GMT

     [ https://issues.apache.org/jira/browse/KARAF-2772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Guillaume Nodet resolved KARAF-2772.
------------------------------------

       Resolution: Won't Fix
    Fix Version/s:     (was: 3.1.0)

> Separate command api and support classes from shell
> ---------------------------------------------------
>
>                 Key: KARAF-2772
>                 URL: https://issues.apache.org/jira/browse/KARAF-2772
>             Project: Karaf
>          Issue Type: Improvement
>          Components: karaf-shell
>    Affects Versions: 3.0.0
>            Reporter: Christian Schneider
>            Assignee: Christian Schneider
>
> Like discussed on irc we would like to make karaf commands more reusable outside karaf.
> The goal is to run karaf commands without the karaf shell.
> So we need to split the shell project in two parts:
> - command-api (proposed name)
>   contains command API + supporting classes like AbstractCommand which are necessary
to run Action classes
> - shell.console impls
> The command-api bundle should only depend on the OSGi APIs and gogo to make it lightweight.
So projects implementing commands can do this while having minimal compile time dependencies
to karaf.
> I already took a peek into the shell to see how difficult this is. I found very few problematic
classes.
> One is ConsoleFactory which depends on jline and several exceptions which use jansi.

> -> I propose we move this to a new package console.factory. This package then needs
to remain in shell.console
> The other is NamespaceHandler
> -> The blueprint NamespaceHandler can not go to the API bundle as it depends on aries.
So for now we could move it to console.commands.blueprint.impl or similar and leave it in
shell.console



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message