Hi Dan, Thank you. (Actually my friends at university call me Upeksha but I prefer Dimuthu because Upeksha sounds like a girl's name :-) ) Because design is now pretty much solid (except that Domain cache. I need to think about it much deeper) I would like to implement rest of the features. But I need to clarify some facts.
1. As I'm new to Isis project I don't know coding conventions you use. Like packaging and naming classes 2 In the app I would like to use mvc architecture that those three levels are packaged in separate packages. Actually I don't know how to make a efficient packaging structure for this kind of applications although I'm clear about what to do. 3 If you can give me a existing project which has a good packaging structure, (a github link) I will be able to refer it and have a clear idea. Thanks Dimuthu On Fri, Apr 19, 2013 at 11:19 PM, Dan Haywood <[email protected]> wrote: > Hi Dimuthu (apologies... have been addressing you as Upeksha), > > Looks like you are on the right track here, nice to see some early > screenshots too. > > Regarding the PDF, makes sense, you'll notice that the diagram you've > provided is basically the same as in section 2.1 of the RO spec [1]... which > is exactly as I would expect. > > I recommend you add a README.md (markdown) to your project, then the project > is a bit more self-documenting. You could also capture details like how > you've set up your dev environment, or any other miscellaneous notes. > > > Good stuff, though! > > Cheers > Dan > > [1] http://restfulobjects.org > > > > > On 19 April 2013 22:44, DImuthu Upeksha <[email protected]> wrote: >> >> Hi Dan, >> Thank you for the information. I started developing actual application >> instead that dummy one I created. Before that I needed a plan to >> figure out correct paths to develop this. So I created a document >> mentioning abstract overview of the app [1] I'm going to develop, >> Please refer to that document and give some comments, so I can figure >> out whether I'm on the right track. >> >> Thank you >> Dimuthu >> >> [1] >> https://github.com/DImuthuUpe/IsisAndroid/tree/master/IsisAndroid/support >> >> On Thu, Apr 18, 2013 at 10:55 PM, Dan Haywood >> <[email protected]> wrote: >> > >> > >> > >> > On 19 April 2013 05:10, DImuthu Upeksha <[email protected]> >> > wrote: >> >> >> >> Hi Dan, >> >> When creating fields to input data or view data of domain objects we >> >> need to know the exact data type of the properties of the domain >> >> object (Srting, Date, Bolb). So I went through the application and >> >> finally ended up with the attributes like "canonicalName: >> >> "org.joda.time.LocalDate",". or "java.lang.String" like that. >> > >> > >> > That sounds correct. You'll have seen that there are "describedBy" >> > links >> > that reference the domainTypes resources. This is where you get this >> > metadata from. >> > >> > >> >> >> >> But I >> >> don't know how to figure out the data type from this. One thing I can >> >> do is one to one mapping all the data types to the data types in >> >> android manually. >> > >> > >> > Yup, you'll need to do this, I think. The viewer needs to have built-in >> > knowledge about the standard primitives, plus one or two additional >> > common >> > types - String, BigDecimal, BigInteger, the joda date classes. There >> > are >> > also some Isis-specific value classes in the applib. >> > >> > If you look at the Wicket viewer (or any of the viewers) then you'll see >> > that they all do something similar. In the case of the Wicket viewer, >> > it >> > has a component for each of the types [1]. >> > >> > That viewer also uses the chain of responsibility pattern. There is a >> > registry of ComponentFactory's [2] and each is asked in turn as to >> > whether >> > it can render the value (or indeed the collection, or action, or entity, >> > or >> > standalone collection of entities). >> > >> > It's this design that lets the viewer support extensions such as the >> > googlemaps or wickedcharts or excel extensions [3,4,5] >> > >> >> >> >> Then I need to know the all the possible data types >> >> provided by the server so that I can create a pre-defined entry to map >> >> those datatypes to android data types. Or is there any convenient way >> >> to fix this? >> > >> > >> > Focus on the ones listed above. Anything that isn't a "built-in" should >> > then be treated as an entity. Typically this is rendered as a link to >> > the >> > associated object. For example, an Order entity has a reference to a >> > Customer entity. >> > >> > (Strictly speaking, the above is a simplification: Isis also supports >> > types >> > annotated with @Value, which are types that can be rendered converted to >> > and >> > from strings. The google-map extension for wicket [3] defines the >> > Location >> > class, which is an example. So a further refinement would be to support >> > these types, too). >> > >> > HTH >> > Dan >> > >> > >> >> >> >> Department of Computer Science And Engineering >> >> >> >> University of Moratuwa, Sri Lanka >> > >> > >> > [1] >> > >> > https://github.com/apache/isis/tree/master/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars >> > [2] >> > >> > https://github.com/apache/isis/blob/master/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java >> > [3] https://github.com/danhaywood/isis-wicket-gmap3 >> > [4] https://github.com/danhaywood/isis-wicket-wickedcharts >> > [5] https://github.com/danhaywood/isis-wicket-excel >> >> >> >> -- >> Regards >> >> W.Dimuthu Upeksha >> Undergraduate >> >> Department of Computer Science And Engineering >> >> University of Moratuwa, Sri Lanka > > -- Regards W.Dimuthu Upeksha Undergraduate Department of Computer Science And Engineering University of Moratuwa, Sri Lanka
