Re: [GShell] Plexus dependency in CommandLineBuilder
Okay, I don't really know what OSGI is doing with classloaders, but as before I'm willing to make changes to support your needs as long as they fit inline witht he ongoing work using Plexus. But for example, how do you plan to handle the section of the gshell commands.xml descriptor with OSGI? --jason On Nov 13, 2007, at 12:54 AM, Guillaume Nodet wrote: The problem with plexus is that objects are wired in a certain way, which is not the way I want, mainly because I don't want plexus to mess with my OSGi classloaders. For remoting support, I want to be able to configure it through OSGi which means in my case that I define a set of properties that a factory will be given to create a service (though this is mostly hidden by using spring). I don't recall exacty what the exact problems are, but having a quick look through the code, i suppose the main problem comes from the OpenShellHandler which is really dependant on plexus. I will try to have a deeper look soon but i'd be happy to rewrite a few classes in a different way if needed for spring/osgi. On Nov 13, 2007 3:35 AM, Jason Dillon <[EMAIL PROTECTED]> wrote: What do you need done here to use the RSH bits sans-Plexus? Going forward I'm really wondering if I want to abstract the IoC bits which Plexus provides or not. Seems like if I do want that, then I have to duplicate a lot of what it provides for me already. I have already duplicated some of the annotations and descriptor generation bits to detach any plexus deps from the core command API, and well... Im starting to regret it. Going forward we will have for GShell plugin descriptors which I had planned to continue and follow Maven 2.1 as an example of how to make that work with Plexus. The additional work and code required to abstract that functionality into something Plexus- agnostic is IMO not going to be worth it. Perhaps later though once the main features of GShell are implemented and tested using Plexus we can work on abstracting the framework to allow for other IoC containers to be used instead, but ATM I'm thinking its best to get GShell working 100% with Plexus. --jason On Oct 11, 2007, at 9:41 AM, Guillaume Nodet wrote: > So I've been able to have a local shell wired with Spring without > including any plexus jars in the classpath :-) > I'm trying to do the same with the remote shell, but it seems that > gshel-whisper is much more tied to plexus. Do you have any ongoing > modifications to decouple it a bit from plexus or can I look at that ? > > On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: >> FYI, I've found a workaround as Spring can solve such situations if >> using property injection rather than constructor injection... So >> creating wrapper solves the problem. >> >> On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: >>> Ok, so it seems that wiring gshell using spring is not too >>> difficult. >>> However I have seen a weird dependency between two POJOs which >>> cause a >>> problem when wiring them. It happens between >>> DefaultCommandExecutor >>> which has a dependency on OsgiCommandLineBuilder which also has a >>> dependency on the command executor. Is there any way to refactor >>> things a bit to avoid this circular dependency ? >>> >>> On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a few short cuts when I whipped this stuff up... after what now seems like a long time ago. Anyways, go for it. Only comment I've got is you should call the intf CommandLineBuilder and the default impl DefaultCommandLineBuilder (prefix insteand of suffix to follow how the other components play... ). --jason On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > I'm trying to configure GShell through spring because spring can > integrate nicely in OSGi (which is my main purpose) and I just > crossed > one problem: the CommandLineBuilder is a dependency of > DefaultCommandExecutor (in terms of POJOs). The problem is that > CommandLineBuilder is a class, not an interface, with a strong > dependency on plexus. So I'd like to introduce an interface > CommandLineBuilder and rename the class as the default > implementation > CommandLineBuilderDefault. Any objections ? > > -- > Cheers, > Guillaume Nodet > > Blog: http://gnodet.blogspot.com/ >>> >>> >>> -- >>> Cheers, >>> Guillaume Nodet >>> >>> Blog: http://gnodet.blogspot.com/ >>> >> >> >> -- >> Cheers, >> Guillaume Nodet >> >> Blog: http://gnodet.blogspot.com/ >> > > > -- > Cheers, > Guillaume Nodet > > Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
The problem with plexus is that objects are wired in a certain way, which is not the way I want, mainly because I don't want plexus to mess with my OSGi classloaders. For remoting support, I want to be able to configure it through OSGi which means in my case that I define a set of properties that a factory will be given to create a service (though this is mostly hidden by using spring). I don't recall exacty what the exact problems are, but having a quick look through the code, i suppose the main problem comes from the OpenShellHandler which is really dependant on plexus. I will try to have a deeper look soon but i'd be happy to rewrite a few classes in a different way if needed for spring/osgi. On Nov 13, 2007 3:35 AM, Jason Dillon <[EMAIL PROTECTED]> wrote: > What do you need done here to use the RSH bits sans-Plexus? > > Going forward I'm really wondering if I want to abstract the IoC bits > which Plexus provides or not. Seems like if I do want that, then I > have to duplicate a lot of what it provides for me already. I have > already duplicated some of the annotations and descriptor generation > bits to detach any plexus deps from the core command API, and well... > Im starting to regret it. > > Going forward we will have for GShell plugin > descriptors which I had planned to continue and follow Maven 2.1 as an > example of how to make that work with Plexus. The additional work and > code required to abstract that functionality into something Plexus- > agnostic is IMO not going to be worth it. Perhaps later though once > the main features of GShell are implemented and tested using Plexus we > can work on abstracting the framework to allow for other IoC > containers to be used instead, but ATM I'm thinking its best to get > GShell working 100% with Plexus. > > --jason > > > On Oct 11, 2007, at 9:41 AM, Guillaume Nodet wrote: > > > So I've been able to have a local shell wired with Spring without > > including any plexus jars in the classpath :-) > > I'm trying to do the same with the remote shell, but it seems that > > gshel-whisper is much more tied to plexus. Do you have any ongoing > > modifications to decouple it a bit from plexus or can I look at that ? > > > > On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > >> FYI, I've found a workaround as Spring can solve such situations if > >> using property injection rather than constructor injection... So > >> creating wrapper solves the problem. > >> > >> On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > >>> Ok, so it seems that wiring gshell using spring is not too > >>> difficult. > >>> However I have seen a weird dependency between two POJOs which > >>> cause a > >>> problem when wiring them. It happens between > >>> DefaultCommandExecutor > >>> which has a dependency on OsgiCommandLineBuilder which also has a > >>> dependency on the command executor. Is there any way to refactor > >>> things a bit to avoid this circular dependency ? > >>> > >>> On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > few short cuts when I whipped this stuff up... after what now seems > like a long time ago. > > Anyways, go for it. Only comment I've got is you should call the > intf CommandLineBuilder and the default impl > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > the other components play... ). > > --jason > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > I'm trying to configure GShell through spring because spring can > > integrate nicely in OSGi (which is my main purpose) and I just > > crossed > > one problem: the CommandLineBuilder is a dependency of > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > CommandLineBuilder is a class, not an interface, with a strong > > dependency on plexus. So I'd like to introduce an interface > > CommandLineBuilder and rename the class as the default > > implementation > > CommandLineBuilderDefault. Any objections ? > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > > >>> > >>> > >>> -- > >>> Cheers, > >>> Guillaume Nodet > >>> > >>> Blog: http://gnodet.blogspot.com/ > >>> > >> > >> > >> -- > >> Cheers, > >> Guillaume Nodet > >> > >> Blog: http://gnodet.blogspot.com/ > >> > > > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
What do you need done here to use the RSH bits sans-Plexus? Going forward I'm really wondering if I want to abstract the IoC bits which Plexus provides or not. Seems like if I do want that, then I have to duplicate a lot of what it provides for me already. I have already duplicated some of the annotations and descriptor generation bits to detach any plexus deps from the core command API, and well... Im starting to regret it. Going forward we will have for GShell plugin descriptors which I had planned to continue and follow Maven 2.1 as an example of how to make that work with Plexus. The additional work and code required to abstract that functionality into something Plexus- agnostic is IMO not going to be worth it. Perhaps later though once the main features of GShell are implemented and tested using Plexus we can work on abstracting the framework to allow for other IoC containers to be used instead, but ATM I'm thinking its best to get GShell working 100% with Plexus. --jason On Oct 11, 2007, at 9:41 AM, Guillaume Nodet wrote: So I've been able to have a local shell wired with Spring without including any plexus jars in the classpath :-) I'm trying to do the same with the remote shell, but it seems that gshel-whisper is much more tied to plexus. Do you have any ongoing modifications to decouple it a bit from plexus or can I look at that ? On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: FYI, I've found a workaround as Spring can solve such situations if using property injection rather than constructor injection... So creating wrapper solves the problem. On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: Ok, so it seems that wiring gshell using spring is not too difficult. However I have seen a weird dependency between two POJOs which cause a problem when wiring them. It happens between DefaultCommandExecutor which has a dependency on OsgiCommandLineBuilder which also has a dependency on the command executor. Is there any way to refactor things a bit to avoid this circular dependency ? On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a few short cuts when I whipped this stuff up... after what now seems like a long time ago. Anyways, go for it. Only comment I've got is you should call the intf CommandLineBuilder and the default impl DefaultCommandLineBuilder (prefix insteand of suffix to follow how the other components play... ). --jason On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: I'm trying to configure GShell through spring because spring can integrate nicely in OSGi (which is my main purpose) and I just crossed one problem: the CommandLineBuilder is a dependency of DefaultCommandExecutor (in terms of POJOs). The problem is that CommandLineBuilder is a class, not an interface, with a strong dependency on plexus. So I'd like to introduce an interface CommandLineBuilder and rename the class as the default implementation CommandLineBuilderDefault. Any objections ? -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
I will see about adding a TransportProvider abstraction to deal with this... I'm flying to Hawaii this weeken for a funeral :-( But I might have time to look into this stuff then... else when I get back. --jason On Oct 12, 2007, at 3:48 PM, Guillaume Nodet wrote: The core container has only a few dependencies: one on org.codehaus.plexus.personality.plexus.lifecycle.phase package and several on org.codehaus.plexus.util package, but I don't have to include the whole plexus to make gshell run, so I'm quite happy with that. However, whisper heavily rely on plexus for the configuration of transport, so I'll try to abstract that a bit (i'd be happy to delegate that to you if you prefer). Mainly the BaseTransportFactory class should rely on factories somehow instead of asking the container to retrieve a new transport at each connection. On 10/12/07, Jason Dillon <[EMAIL PROTECTED]> wrote: I'm not actively trying to decouple Plexus from gshell-whisper... or really any of GShel, though if I can add some abstraction to make it easier for you to use GShell w/o Plexus I'm happy to do that as long as it is not intrusive. --jason On Oct 11, 2007, at 12:41 PM, Guillaume Nodet wrote: So I've been able to have a local shell wired with Spring without including any plexus jars in the classpath :-) I'm trying to do the same with the remote shell, but it seems that gshel-whisper is much more tied to plexus. Do you have any ongoing modifications to decouple it a bit from plexus or can I look at that ? On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: FYI, I've found a workaround as Spring can solve such situations if using property injection rather than constructor injection... So creating wrapper solves the problem. On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: Ok, so it seems that wiring gshell using spring is not too difficult. However I have seen a weird dependency between two POJOs which cause a problem when wiring them. It happens between DefaultCommandExecutor which has a dependency on OsgiCommandLineBuilder which also has a dependency on the command executor. Is there any way to refactor things a bit to avoid this circular dependency ? On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a few short cuts when I whipped this stuff up... after what now seems like a long time ago. Anyways, go for it. Only comment I've got is you should call the intf CommandLineBuilder and the default impl DefaultCommandLineBuilder (prefix insteand of suffix to follow how the other components play... ). --jason On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: I'm trying to configure GShell through spring because spring can integrate nicely in OSGi (which is my main purpose) and I just crossed one problem: the CommandLineBuilder is a dependency of DefaultCommandExecutor (in terms of POJOs). The problem is that CommandLineBuilder is a class, not an interface, with a strong dependency on plexus. So I'd like to introduce an interface CommandLineBuilder and rename the class as the default implementation CommandLineBuilderDefault. Any objections ? -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
The core container has only a few dependencies: one on org.codehaus.plexus.personality.plexus.lifecycle.phase package and several on org.codehaus.plexus.util package, but I don't have to include the whole plexus to make gshell run, so I'm quite happy with that. However, whisper heavily rely on plexus for the configuration of transport, so I'll try to abstract that a bit (i'd be happy to delegate that to you if you prefer). Mainly the BaseTransportFactory class should rely on factories somehow instead of asking the container to retrieve a new transport at each connection. On 10/12/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > I'm not actively trying to decouple Plexus from gshell-whisper... or > really any of GShel, though if I can add some abstraction to make it > easier for you to use GShell w/o Plexus I'm happy to do that as long > as it is not intrusive. > > --jason > > > On Oct 11, 2007, at 12:41 PM, Guillaume Nodet wrote: > > > So I've been able to have a local shell wired with Spring without > > including any plexus jars in the classpath :-) > > I'm trying to do the same with the remote shell, but it seems that > > gshel-whisper is much more tied to plexus. Do you have any ongoing > > modifications to decouple it a bit from plexus or can I look at that ? > > > > On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > >> FYI, I've found a workaround as Spring can solve such situations if > >> using property injection rather than constructor injection... So > >> creating wrapper solves the problem. > >> > >> On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > >>> Ok, so it seems that wiring gshell using spring is not too > >>> difficult. > >>> However I have seen a weird dependency between two POJOs which > >>> cause a > >>> problem when wiring them. It happens between > >>> DefaultCommandExecutor > >>> which has a dependency on OsgiCommandLineBuilder which also has a > >>> dependency on the command executor. Is there any way to refactor > >>> things a bit to avoid this circular dependency ? > >>> > >>> On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > few short cuts when I whipped this stuff up... after what now seems > like a long time ago. > > Anyways, go for it. Only comment I've got is you should call the > intf CommandLineBuilder and the default impl > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > the other components play... ). > > --jason > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > I'm trying to configure GShell through spring because spring can > > integrate nicely in OSGi (which is my main purpose) and I just > > crossed > > one problem: the CommandLineBuilder is a dependency of > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > CommandLineBuilder is a class, not an interface, with a strong > > dependency on plexus. So I'd like to introduce an interface > > CommandLineBuilder and rename the class as the default > > implementation > > CommandLineBuilderDefault. Any objections ? > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > > >>> > >>> > >>> -- > >>> Cheers, > >>> Guillaume Nodet > >>> > >>> Blog: http://gnodet.blogspot.com/ > >>> > >> > >> > >> -- > >> Cheers, > >> Guillaume Nodet > >> > >> Blog: http://gnodet.blogspot.com/ > >> > > > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
I'm not actively trying to decouple Plexus from gshell-whisper... or really any of GShel, though if I can add some abstraction to make it easier for you to use GShell w/o Plexus I'm happy to do that as long as it is not intrusive. --jason On Oct 11, 2007, at 12:41 PM, Guillaume Nodet wrote: So I've been able to have a local shell wired with Spring without including any plexus jars in the classpath :-) I'm trying to do the same with the remote shell, but it seems that gshel-whisper is much more tied to plexus. Do you have any ongoing modifications to decouple it a bit from plexus or can I look at that ? On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: FYI, I've found a workaround as Spring can solve such situations if using property injection rather than constructor injection... So creating wrapper solves the problem. On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: Ok, so it seems that wiring gshell using spring is not too difficult. However I have seen a weird dependency between two POJOs which cause a problem when wiring them. It happens between DefaultCommandExecutor which has a dependency on OsgiCommandLineBuilder which also has a dependency on the command executor. Is there any way to refactor things a bit to avoid this circular dependency ? On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a few short cuts when I whipped this stuff up... after what now seems like a long time ago. Anyways, go for it. Only comment I've got is you should call the intf CommandLineBuilder and the default impl DefaultCommandLineBuilder (prefix insteand of suffix to follow how the other components play... ). --jason On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: I'm trying to configure GShell through spring because spring can integrate nicely in OSGi (which is my main purpose) and I just crossed one problem: the CommandLineBuilder is a dependency of DefaultCommandExecutor (in terms of POJOs). The problem is that CommandLineBuilder is a class, not an interface, with a strong dependency on plexus. So I'd like to introduce an interface CommandLineBuilder and rename the class as the default implementation CommandLineBuilderDefault. Any objections ? -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/ -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
So I've been able to have a local shell wired with Spring without including any plexus jars in the classpath :-) I'm trying to do the same with the remote shell, but it seems that gshel-whisper is much more tied to plexus. Do you have any ongoing modifications to decouple it a bit from plexus or can I look at that ? On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > FYI, I've found a workaround as Spring can solve such situations if > using property injection rather than constructor injection... So > creating wrapper solves the problem. > > On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > > Ok, so it seems that wiring gshell using spring is not too difficult. > > However I have seen a weird dependency between two POJOs which cause a > > problem when wiring them. It happens between DefaultCommandExecutor > > which has a dependency on OsgiCommandLineBuilder which also has a > > dependency on the command executor. Is there any way to refactor > > things a bit to avoid this circular dependency ? > > > > On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > > > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > > > few short cuts when I whipped this stuff up... after what now seems > > > like a long time ago. > > > > > > Anyways, go for it. Only comment I've got is you should call the > > > intf CommandLineBuilder and the default impl > > > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > > > the other components play... ). > > > > > > --jason > > > > > > > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > > > > > I'm trying to configure GShell through spring because spring can > > > > integrate nicely in OSGi (which is my main purpose) and I just crossed > > > > one problem: the CommandLineBuilder is a dependency of > > > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > > > CommandLineBuilder is a class, not an interface, with a strong > > > > dependency on plexus. So I'd like to introduce an interface > > > > CommandLineBuilder and rename the class as the default implementation > > > > CommandLineBuilderDefault. Any objections ? > > > > > > > > -- > > > > Cheers, > > > > Guillaume Nodet > > > > > > > > Blog: http://gnodet.blogspot.com/ > > > > > > > > > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > > > > -- > Cheers, > Guillaume Nodet > > Blog: http://gnodet.blogspot.com/ > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
FYI, I've found a workaround as Spring can solve such situations if using property injection rather than constructor injection... So creating wrapper solves the problem. On 10/11/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote: > Ok, so it seems that wiring gshell using spring is not too difficult. > However I have seen a weird dependency between two POJOs which cause a > problem when wiring them. It happens between DefaultCommandExecutor > which has a dependency on OsgiCommandLineBuilder which also has a > dependency on the command executor. Is there any way to refactor > things a bit to avoid this circular dependency ? > > On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > > few short cuts when I whipped this stuff up... after what now seems > > like a long time ago. > > > > Anyways, go for it. Only comment I've got is you should call the > > intf CommandLineBuilder and the default impl > > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > > the other components play... ). > > > > --jason > > > > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > > > I'm trying to configure GShell through spring because spring can > > > integrate nicely in OSGi (which is my main purpose) and I just crossed > > > one problem: the CommandLineBuilder is a dependency of > > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > > CommandLineBuilder is a class, not an interface, with a strong > > > dependency on plexus. So I'd like to introduce an interface > > > CommandLineBuilder and rename the class as the default implementation > > > CommandLineBuilderDefault. Any objections ? > > > > > > -- > > > Cheers, > > > Guillaume Nodet > > > > > > Blog: http://gnodet.blogspot.com/ > > > > > > > -- > Cheers, > Guillaume Nodet > > Blog: http://gnodet.blogspot.com/ > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
Ok, so it seems that wiring gshell using spring is not too difficult. However I have seen a weird dependency between two POJOs which cause a problem when wiring them. It happens between DefaultCommandExecutor which has a dependency on OsgiCommandLineBuilder which also has a dependency on the command executor. Is there any way to refactor things a bit to avoid this circular dependency ? On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > few short cuts when I whipped this stuff up... after what now seems > like a long time ago. > > Anyways, go for it. Only comment I've got is you should call the > intf CommandLineBuilder and the default impl > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > the other components play... ). > > --jason > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > I'm trying to configure GShell through spring because spring can > > integrate nicely in OSGi (which is my main purpose) and I just crossed > > one problem: the CommandLineBuilder is a dependency of > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > CommandLineBuilder is a class, not an interface, with a strong > > dependency on plexus. So I'd like to introduce an interface > > CommandLineBuilder and rename the class as the default implementation > > CommandLineBuilderDefault. Any objections ? > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
Yep, that's what i did. I just mistyped in my email ... I may also have to add constructors to a few classes (as done in other classes) where they are missing... On 10/11/07, Jason Dillon <[EMAIL PROTECTED]> wrote: > Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a > few short cuts when I whipped this stuff up... after what now seems > like a long time ago. > > Anyways, go for it. Only comment I've got is you should call the > intf CommandLineBuilder and the default impl > DefaultCommandLineBuilder (prefix insteand of suffix to follow how > the other components play... ). > > --jason > > > On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: > > > I'm trying to configure GShell through spring because spring can > > integrate nicely in OSGi (which is my main purpose) and I just crossed > > one problem: the CommandLineBuilder is a dependency of > > DefaultCommandExecutor (in terms of POJOs). The problem is that > > CommandLineBuilder is a class, not an interface, with a strong > > dependency on plexus. So I'd like to introduce an interface > > CommandLineBuilder and rename the class as the default implementation > > CommandLineBuilderDefault. Any objections ? > > > > -- > > Cheers, > > Guillaume Nodet > > > > Blog: http://gnodet.blogspot.com/ > > -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/
Re: [GShell] Plexus dependency in CommandLineBuilder
Yup, sounds fine. As I mentioned to ya a while ago on IRC I took a few short cuts when I whipped this stuff up... after what now seems like a long time ago. Anyways, go for it. Only comment I've got is you should call the intf CommandLineBuilder and the default impl DefaultCommandLineBuilder (prefix insteand of suffix to follow how the other components play... ). --jason On Oct 11, 2007, at 6:46 AM, Guillaume Nodet wrote: I'm trying to configure GShell through spring because spring can integrate nicely in OSGi (which is my main purpose) and I just crossed one problem: the CommandLineBuilder is a dependency of DefaultCommandExecutor (in terms of POJOs). The problem is that CommandLineBuilder is a class, not an interface, with a strong dependency on plexus. So I'd like to introduce an interface CommandLineBuilder and rename the class as the default implementation CommandLineBuilderDefault. Any objections ? -- Cheers, Guillaume Nodet Blog: http://gnodet.blogspot.com/