Hi, I was not aware that filter concept was removed from jaggery, but we need to have a proper alternative so we can full fill basic needs of a basic web application.
@Nuwan: Could you please give an example on how a controller should be implemented given that my application adheres the caramel standards? If we can come up with a proper way of doing this, it will save a lot of time. Regards, Venura On Tue, Dec 3, 2013 at 10:55 AM, Gayan Gunawardana <[email protected]> wrote: > Hi Venura, > > We have discussed jaggery filter functionality few months back. You can > find more information from [xacml with jaggery] mail thread in > [email protected]. We had the same requirement like how to implement > Entitlement filter from jaggery side. > > But the final conclusion was there are no filters in jaggery world, what > you can do is, route all requests through one controller which will act as > your filter > > I am totally +1 for considering these kind of existing features when > implementing a new language. > > > On Tue, Dec 3, 2013 at 10:29 AM, Venura Kahawala <[email protected]> wrote: > >> Hi Nuwan, >> >> I'm new to jaggery world but while I was developing "my-identity" >> application for IS I found out some limitations in jaggery and Caramel. >> What I needed was to implement a filter functionality just as in servlet >> filter. Purpose of the filter is described. When we have multiple pages and >> if some page should be restricted for some set of people based on the >> permissions, groups or some other factor, then we can intercept the request >> and validate within the filter. This is a basic requirement and it is >> pretty hard to implement that requirement in jaggery without adding a code >> segment to each page. >> >> IMO we need to consider these kinds of existing features when >> implementing a new language. Yes as you mentioned, we need to improve the >> jaggery and Caramel instead of implementing functionality in separate >> places, but we should add these functionality since we are moving towards >> jaggery and caramel. >> >> Regards, >> Venura >> >> >> On Tue, Dec 3, 2013 at 8:06 AM, Nuwan Bandara <[email protected]> wrote: >> >>> Hi Dulitha, >>> >>> We have had this debate over and over. What am trying to point out here >>> is that we simply CANNOT have another way of writing jaggery apps. If we >>> need improvements to Caramel please go ahead and contribute, don't create a >>> new one that serves ur purpose. Caramel was there for sometime and APIM / >>> UES / Store are build on that pattern. Front controller is sometimes good >>> and sometime not so good, people will need multiple controller patterns at >>> times. So please dont rely on just one pattern. >>> >>> In a web app framework there are more things to think about, not just >>> the controllers, most of the elements are well thought and included to >>> caramel. So please take a moment and try to understand the framework and >>> improve it as you need, but dont invent a new thing just for your cause. >>> and please think about the consistency when developing apps/components you >>> cannot and should not just use random technologies here and there. >>> >>> Regards, >>> /Nuwan >>> >>> >>> On Mon, Dec 2, 2013 at 11:48 AM, Dulitha Wijewantha <[email protected]>wrote: >>> >>>> Hi Nuwan, >>>> My comments are inline. What I am proposing - is to build a fully >>>> functional front-end controller rather than just another template renderer. >>>> Let's have a discussion regarding this. I am also refactoring Absolute to >>>> provide capability to override how the pattern matching is done. This >>>> training is for anyone who is interested in these frameworks- mainly >>>> because they are pragmatic. >>>> >>>> On Mon, Dec 2, 2013 at 6:18 PM, Nuwan Bandara <[email protected]> wrote: >>>> >>>>> Hi Chan, >>>>> >>>>> We need to review the new security stuff you did for Goose.js (the >>>>> routing library) >>>>> >>>> >>>> +1 for reviewing security of Goose.js. >>>> >>>> >>>>> and also if we are doing any new jaggery application, we MUST follow >>>>> caramel as that is the standard. >>>>> >>>> -1 for Caramel - below are my reasons >>>> >>>> - Caramel is not really a framework. It's a template engine that >>>> does dynamic engine. It's an overkill for applications (that's not meant >>>> for overriding) >>>> - A front end controller is required for an application due >>>> authentication, custom controller actions, monitoring etc. >>>> - Caramel enforce carmel objects into the controller jags >>>> >>>> >>>> If there are improvements lets do it to Caramel. >>>>> >>>> -1 reasons for not improving Caramel are - >>>> >>>> - Caramel is all together a different concept. It's not about a >>>> front-end controller. It's about a dynamic template engine >>>> - Caramel is kind of procedural where you have to evoke it from >>>> controllers >>>> - Caramel can be used in ways the developer wants. It's exactly >>>> opposing the idea of a framework. A framework exert certain things over >>>> developer. Caramel makes everyone write their own version of MVC (take >>>> Store and Publisher for an example. >>>> >>>> >>>> >>>>> We should not use two libraries in the platform as it will be a >>>>> maintenance nightmare. So am -1 on developing applications in Absolute. If >>>>> Caramel is missing functionalities that you desire, please add them to >>>>> Caramel. >>>>> >>>> I am suggesting to drop Caramel support and build a fully functional >>>> front-end controller. Caramel was built for something else and it shouldn't >>>> be continued because it's not really needed if you really look at it. Why - >>>> I am explaining below - >>>> >>>> Why do you need a framework - You want to run the X logic on the Y >>>> request and display the Z representation to the user. In the world of >>>> frameworks - X is a controller, Y is the request, and Z is a display >>>> (view). Absolute simply allows you to match a controller to a view based on >>>> the user's request. The way you do it is up to you. You can use a >>>> conventional base approach as a pattern matching algorithm or a >>>> configuration approach. The underlying framework requirement is just >>>> mapping logic to request and rendering representations. >>>> >>>> >>>>> Regards, >>>>> /Nuwan >>>>> >>>>> >>>>> On Sun, Dec 1, 2013 at 11:45 PM, [email protected] <[email protected]>wrote: >>>>> >>>>>> more details >>>>>> »<https://www.google.com/calendar/event?action=VIEW&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>>>>> Goose.js and Absolute.js training >>>>>> Goose is a javascript framework for quickly writing APIs. Absolute is >>>>>> a front-end controller framework for jaggery for that can be used to >>>>>> build >>>>>> MVC type applications. >>>>>> >>>>>> Goose.js - >>>>>> https://github.com/dulichan/goose.js<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fdulichan%2Fgoose.js&ust=1385963104897000&usg=AFQjCNEM7cwSyUJriD-sAjpP1avqz1-csA> >>>>>> Absolute.js - >>>>>> https://github.com/dulichan/absolute.js<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fdulichan%2Fabsolute.js&ust=1385963104897000&usg=AFQjCNGDK9rHxfbYsx_fhEJrhLhUFRZAVQ> >>>>>> *When* >>>>>> Tue Dec 3, 2013 1pm – 2pm Colombo >>>>>> *Where* >>>>>> 3rd Floor Kernel Meeting room >>>>>> (map<http://maps.google.lk/maps?q=3rd+Floor+Kernel+Meeting+room&hl=en> >>>>>> ) >>>>>> *Calendar* >>>>>> [email protected] >>>>>> *Who* >>>>>> • >>>>>> [email protected] - organizer >>>>>> • >>>>>> Shanmugarajah Sinnathamby >>>>>> • >>>>>> Kasun Dananjaya Delgolla >>>>>> • >>>>>> Gayan Gunawardana >>>>>> • >>>>>> Krishanthi Samarasinghe >>>>>> • >>>>>> Harshan Liyanage >>>>>> • >>>>>> Dilshan Edirisuriya >>>>>> • >>>>>> Niranjan Karunanandham >>>>>> • >>>>>> Dilan Jayakody >>>>>> • >>>>>> WSO2 Training Group >>>>>> >>>>>> Going? *Yes >>>>>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=1&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>>>>> - Maybe >>>>>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=3&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>>>>> - No >>>>>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=2&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en>* >>>>>> more options >>>>>> »<https://www.google.com/calendar/event?action=VIEW&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>>>>> >>>>>> Invitation from Google Calendar <https://www.google.com/calendar/> >>>>>> >>>>>> You are receiving this courtesy email at the account >>>>>> [email protected] because you are an attendee of this event. >>>>>> >>>>>> To stop receiving future notifications for this event, decline this >>>>>> event. Alternatively you can sign up for a Google account at >>>>>> https://www.google.com/calendar/ and control your notification >>>>>> settings for your entire calendar. >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> >>>>> >>>>> *Thanks & Regards, Nuwan BandaraTechnical Lead; **WSO2 Inc. * >>>>> *lean . enterprise . middleware | http://wso2.com <http://wso2.com> * >>>>> >>>>> *blog : http://nuwanbando.com <http://nuwanbando.com>; email: >>>>> [email protected] <[email protected]>; phone: +1 812 606 7390 >>>>> <%2B1%20812%20606%207390> * >>>>> <http://www.nuwanbando.com/> >>>>> >>>> >>>> >>>> >>>> -- >>>> Chan (Dulitha Wijewantha) >>>> Software Engineer - Mobile Development >>>> WSO2Mobile >>>> Lean.Enterprise.Mobileware >>>> * ~Email [email protected] <[email protected]>* >>>> * ~Mobile +94712112165 <%2B94712112165>* >>>> >>>> * ~Website dulithawijewantha.com <http://dulithawijewantha.com/> * >>>> >>>> * ~Blog blog.dulithawijewantha.com >>>> <http://dulichan.github.io/chan/>* >>>> * ~Twitter @dulitharw <https://twitter.com/dulitharw>* >>>> >>> >>> >>> >>> -- >>> >>> >>> >>> *Thanks & Regards,Nuwan BandaraTechnical Lead; **WSO2 Inc. * >>> *lean . enterprise . middleware | http://wso2.com <http://wso2.com> * >>> >>> *blog : http://nuwanbando.com <http://nuwanbando.com>; email: >>> [email protected] <[email protected]>; phone: +1 812 606 7390 >>> <%2B1%20812%20606%207390> * >>> <http://www.nuwanbando.com/> >>> >> >> >> >> -- >> Senior Software Engineer >> >> Mobile: +94 71 82 300 20 >> >> > > > -- > Gayan Gunawardana > Software Engineer; WSO2mobile Inc.; http://wso2mobile.com/ > Email: [email protected] > Mobile: +94 (71) 8020933 > Blog: http://gayanj2ee.blogspot.com/ > -- Senior Software Engineer Mobile: +94 71 82 300 20
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
