On Tue, Mar 11, 2014 at 7:39 AM, Sanjiva Weerawarana <sanj...@wso2.com>wrote:
> On Tue, Mar 11, 2014 at 7:34 AM, Nirmal Fernando > <nirmal070...@gmail.com>wrote: > >> Hi Sanjiva, >> >> On Mar 11, 2014 4:19 AM, "Sanjiva Weerawarana" <sanj...@wso2.com> wrote: >> > >> > Why do we need to make it so complicated? >> >> Hmmm... it's not complicated... by default you can simply use the default >> flow. Do you still feel it's complicated. >> > > That's not the point - if the complexity is needed the answer is not to > say default is simple! > > As an example, earlier the Cartridge Agent was always expecting that >> Cartridges opens up ports and depending on that only agent decides whether >> the member is activated or not. AFAIK there are some applications which >> does not deal with ports eg: nodejs by default doesn't open any ports, but >> you could deploy an app which opens up a listener port. (Correct me if I am >> wrong.) Hence, we need to customize the flow based on the Cartridge. > > > NodeJS of course opens a port if it wants to receive anything over the > network! I don't understand what this has to do with having phases and a > bunch of handlers in each phase (you've basically replicated the Axis2 > handler architecture). > > Why not simple make the agent be a shell script or Python and not do this > stuff? Having to write Java code and compile it and manage it is not the > usual way to do system level stuff. > Can a shell-script be used to do AMQP communication? Yes, Python Agent is in the roadmap (Future issues list in jira). Dinesh tried to write a Python agent once and he faced issues with the Python-AMQP communication. Hence, what we have currently is a Java Cartridge Agent. And with the new Cartridge Agent, you don't need to write Java code, since we provide this ScriptExtensionExecutor. You can simply specify it and add a comma separated set of script file names like; *org.apache.stratos.cartridge.agent.executor.impl.ScriptExtensionExecutor=a.sh,b* .sh,c.sh > >> > Also, I assume this is not for 4.0.0 right? Its a bad idea to make >> changes like this at this stage give (IIRC) we're done with alpha? In fact >> alpha is supposed to be feature complete ... >> >> This is an improvement to an existing feature (cartridge agent). Mainly a >> refactoring effort. >> > Sorry but adding a new config language and this level of functionality is > not a refactoring. Even if its a refactoring that doesn't mean we should be > doing this at this stage - does this not break all existing agents? > > Sanjiva. > -- > Sanjiva Weerawarana, Ph.D. > Founder, Chairman & CEO; WSO2, Inc.; http://wso2.com/ > email: sanj...@wso2.com; office: (+1 650 745 4499 | +94 11 214 5345) > x5700; cell: +94 77 787 6880 | +1 408 466 5099; voip: +1 650 265 8311 > blog: http://sanjiva.weerawarana.org/; twitter: @sanjiva > Lean . Enterprise . Middleware > -- Best Regards, Nirmal Nirmal Fernando. PPMC Member & Committer of Apache Stratos, Senior Software Engineer, WSO2 Inc. Blog: http://nirmalfdo.blogspot.com/