On Sat, Jun 16, 2012 at 7:01 PM, sasinda rukshan <[email protected]> wrote: > Hi, > I checked the source code.(still it would be helpful if u cn explain) > I have a little issue. > Say with the current model > Blog.BlogPostClass > properties|__DBTreeList category {has a list of attributes} > |__TextAreaClass content {has a list of attributes} > |__ MYType myComplexTypeProp {has a list of attributes which > are all simple properties such as StringProperty etc} [ for ex:TagClass > tagprop ] > |__ StringClass mystring {also have a > list of attributes. > > The XML schema > > <complexType name="Object"> > <complexContent> > <extension base="{http://www.xwiki.org}ObjectSummary"> > <sequence> > <element name="property" > type="{http://www.xwiki.org}Property" maxOccurs="unbounded" > minOccurs="0"/> > </sequence> > </extension> > </complexContent> > </complexType> > > <complexType name="Property"> > <complexContent> > <extension base="{http://www.xwiki.org}LinkCollection"> > <sequence> > <element name="attribute" > type="{http://www.xwiki.org}Attribute" maxOccurs="unbounded" > minOccurs="0"/> > <element name="value" > type="{http://www.w3.org/2001/XMLSchema}string"/> > </sequence> > <attribute name="name" use="required" > type="{http://www.w3.org/2001/XMLSchema}string" /> > <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" > /> > </extension> > </complexContent> > </complexType> > > <complexType name="Attribute"> > <complexContent> > <extension base="{http://www.xwiki.org}LinkCollection"> > <attribute name="name" use="required" > type="{http://www.w3.org/2001/XMLSchema}string" /> > <attribute name="value" > type="{http://www.w3.org/2001/XMLSchema}string" /> > </extension> > </complexContent> > </complexType> > > does not seem to be addressing such an occasion where multiple levels of > nesting is happening. (May be I'm horribly wrong here) > > Am I correct to think that any type of Object like BlogPostClass obj > will only have properties of simple types such as StringClass, > TextAreaClass and etc. It will not have a complex type for example > XWiki.TagClass in it.(I know it never happens in BlogPostClass, but > don't know if someone needs to do a weird class). ?
Yes, right now the XWiki model does not allow to put an object in another object. > > My findings and comprehension on the model: > > I guess StringClass, TextAreaClass etc, carry most of those many > attributes for rendering purpose. I saw StaticListClass has attribute > (separators) for defining the list value delimeters as well. > > Can you please post me a diagram taking a single class like DateClass. How > the aggregations and inheritance is done. > Ill send my design. I intend to do all that with just single definition for > each XWiki data type classes.For ex: XString extends XObject.XObject > contains the collection of fields.These can be converted to <attribute> > elements. A Document Object will contain a BlogPost (represent > BlobPostClass) object which contains XObject s as properties. (ideally if > multiple levels of nesting is supported BlogPost should also be a XObject). > The Document Object is an entity.(refer > https://docs.google.com/drawings/d/1hwfQMVgCvYKS6iHU060drcET3Aq3Vles2DQlJOOt3n8/edit<https://docs.google.com/drawings/d/1hwfQMVgCvYKS6iHU060drcET3Aq3Vles2DQlJOOt3n8/edit?pli=1> > ) > When we persist a document object it should serialize the BLogPost class > into its xml representation and save it on the filesystem. SQLite DB will > have a row with the URI for that file. So I am not going to persist > rest-model objects ( neither annotate them for persistence). Storing such > bulk objects may degrade DB performance. In the android dev guides it is > said a curser to a table should not exceed 2 MB of data otherwise the > performance will be low due to paging. > This makes the persistence a little complex. I will manage it. PLS tell if > my approach is wrong. > > By the way I will merge my work to the master branch next week. Is it ok to > duplicate your maven work to a mvn branch and undo the commit in master and > merge my work with a fast forward merge, so that it will show a linear > history. It's all yours, you can manage the branches the way you want as long as the master is as up to date as possible. > > Thanks > Best Regards. > Sasinda Rukshan. > > > > > > > > On Sat, Jun 16, 2012 at 11:21 AM, sasinda rukshan > <[email protected]>wrote: > >> Thanks very much for the help on maven build. >> >> *About making a object from Blog.BlogPostClass and toXML()* >> >> A blog object is having properties of type other xobject classes. So to >> make the things general can we do a stripped down replication or make >> something similer to the java classes in com.xpn.xwiki.objects and its 2 >> sub packages .classes, .meta . >> We can make a document object representing a page and put a >> Blog.BlogPostClass object to its list of objects.We can convert them to >> simple xml model directly.If we want to post blog object we can post the >> Blog object.If the page does not exist we can put the page by getting the >> xml from the Document object. >> Then the things will be general not only for blog client app. Also we can >> have Type checking when we don't directly manipulate simplexml objects. >> i.e. XStringClass will define the attributes for it and likewise. >> >> I don't have a good idea on the above packages and classes. Specially why >> there are three classes for each XType ex: StringProperty, StringClass, >> StringMeta. >> It will be helpful if you can give an explanation. >> >> My draft solution is to do some simple thing as, >> XObject >> |____ XBoolean >> >> XObject >> |____XString >> >> XString has methods, >> toEmbedXML gives a <property><attribute/>...</property> string/ simpleXML >> objects >> toXML gives <object><id><ClassName>.......</object> for the same thing. >> >> Also >> XObject >> |_____ XBlogPost for(BlogPostClass and other 2 Meta,Property classes) >> >> I don't yet have a clear idea on this. May be I am wrong on this. >> Can you give me your idea here as well. How to approach the problem and >> what should the design be like? >> >> Thanks. >> Best Regards >> Sasinda. >> >> >> >> On Thu, Jun 7, 2012 at 9:28 PM, Thomas Mortagne <[email protected] >> > wrote: >> >>> As just did a commit with last version of android plugin and some >>> cleanup. Seems to work well. >>> >>> On Thu, Jun 7, 2012 at 12:19 PM, Thomas Mortagne >>> <[email protected]> wrote: >>> > BTW if you have quick questions it's probaly better to use IRC (I'm >>> > tmortgane on the channel and I'm on GMT+2 tome zone but you can ask >>> > anyone when I'm not around). See >>> > http://dev.xwiki.org/xwiki/bin/view/Community/IRC. >>> > >>> > On Thu, Jun 7, 2012 at 12:17 PM, Thomas Mortagne >>> > <[email protected]> wrote: >>> >> Not need to send this kind of mail privately to me. >>> >> >>> >> On Thu, Jun 7, 2012 at 5:33 AM, sasinda rukshan >>> >> <[email protected]> wrote: >>> >>> Thanks, >>> >>> The project is building perfectly well in eclipse (and runs well too) >>> [I >>> >>> configured the build paths for eclipse opening each module as a >>> project and >>> >>> giving project dependencies and etc.]. This is because android facet >>> and >>> >>> maven-android plugin for eclipse [m2e-android] (not the jayway >>> androi maven >>> >>> plugin)does not work together well. >>> >>> Maven build does not work with newer jayway android maven plugins >>> because of >>> >>> the simplexml library. I checked with another helloworld app that >>> does not >>> >>> have simplexml dependancy and have simplexml dependancy. When we have >>> the >>> >>> dependancy it does not work. Also when packaged with the beta version >>> maven >>> >>> plugin I get runtime error logs notifying that the exact classes >>> informed >>> >>> missed in the compile time for newer maven plugin are missing. But >>> the app >>> >>> is running ok. >>> >>> I will try with it some more and if I can't can you help me with it a >>> >>> little. >>> >> >>> >> Sure If it's just related to simplexml it's probably not much. I will >>> >> try to take a look today. At worst the version we are using right now >>> >> is working fine so you can continue with it anyway. >>> >> >>> >>> >>> >>> I looked at the Enterprise platform apis just to make my apis similar >>> when >>> >>> possible.Source code is not at all relevant to me. But as you say It >>> will be >>> >>> imperfect if I use its style heavily for the mobile version as well. >>> >> >>> >> Yes there is several issues here: >>> >> * most APIs in oldcore module are old and bad and we are trying to get >>> >> rif of them so better not getting too much attached to it ;) >>> >> * they are designed to run in an enironment with lots of resources and >>> >> don't care as much as a mobile API should about memory, etc. >>> >> >>> >>> >>> >>> >>> >>> Thank you. >>> >>> Best Regards. >>> >>> Sasinda. >>> >>> >>> >>> >>> >>> On Wed, Jun 6, 2012 at 1:03 PM, Thomas Mortagne < >>> [email protected]> >>> >>> wrote: >>> >>>> >>> >>>> On Tue, Jun 5, 2012 at 7:07 PM, sasinda rukshan >>> >>>> <[email protected]> wrote: >>> >>>> > Hi, >>> >>>> > *1: User Config Saving* >>> >>>> > * >>> >>>> > * >>> >>>> > Xwiki android can now save user login data. >>> >>>> > I refered >>> >>>> > http://platform.xwiki.org/xwiki/bin/view/AdminGuide/AccessWiki. >>> >>>> > Currently assuming the authority >>> >>>> > >>> >>>> > part(platform.xwiki.org< >>> http://platform.xwiki.org/xwiki/bin/view/AdminGuide/AccessWiki>) >>> >>>> > only >>> >>>> > as a unique wiki identifier. But in the >>> org.xwiki.android.entity.User I >>> >>>> > have the method >>> >>>> > setXWikiRealm(String url);: >>> >>>> > Here I have intended the meaning realm as the url root path for a >>> unique >>> >>>> > wiki instance. >>> >>>> > i.e. it should identify a wiki using path upto >>> >>>> > http://host/xwiki/wiki/wikialias/ >>> >>>> > But that functionality is not implemented.I just mailed this >>> asking for >>> >>>> > the >>> >>>> > opinion wether the usage of word realm was right here. >>> >>>> > Also do you have seperate users for wikis for path based wiki >>> access.Or >>> >>>> > are they the same with the main wiki *http://<host>/xwiki*. >>> >>>> >>> >>>> Both actually, you can have global users (which are the one on main >>> >>>> wiki) and local users. >>> >>>> >>> >>>> > *2: Entity model* >>> >>>> > * >>> >>>> > * >>> >>>> > About the convention for using C_ prefix for core entity tables. I >>> >>>> > was referring to make the android versions of these entities >>> >>>> > http://platform.xwiki.org/xwiki/bin/view/DevGuide/DatabaseSchemaand >>> >>>> > start >>> >>>> > there db prefixes with C_ >>> >>>> > This is because other apps may need to store some specific tables >>> needed >>> >>>> > for them. Rather than having a seperate DB schema for them we can >>> put >>> >>>> > those >>> >>>> > tables here as well prefixing them with <appname>_ . >>> >>>> > I added more entities like User as well to the core entities(table >>> >>>> > C_User).Also will implement a Log Entity(C_Log table) for logging >>> some >>> >>>> > important application activities(such as login attempts) But the >>> Log may >>> >>>> > be >>> >>>> > a little additional weight to the space and performance.I may >>> implement >>> >>>> > a >>> >>>> > generic DBCleaning service to clean the tables like Log, if I have >>> time. >>> >>>> > (Perhaps this description will resolve the confusion about the DB >>> >>>> > conventions. Sorry I was not very clear in that earlier mail. ;-).) >>> >>>> > >>> >>>> > I am sorry to say I am somewhat confused with all those entities in >>> >>>> > http://platform.xwiki.org/xwiki/bin/view/DevGuide/DatabaseSchema. >>> >>>> >>> >>>> The XWiki model is based on generic classes and objects wich is why >>> >>>> you see lots of tables (class properties, object properties , etc.). >>> >>>> There is no table for users for example, its an object of class >>> >>>> XWiki.XWikiUsers. >>> >>>> >>> >>>> > >>> >>>> > Any way to reduce my confusion >>> >>>> > I refered >>> >>>> > 1) XWiki Data >>> >>>> > Model<http://platform.xwiki.org/xwiki/bin/view/DevGuide/DataModel> >>> >>>> > : >>> >>>> > can you give me a link to a documentation that explains the >>> workflow >>> >>>> > of >>> >>>> > how a normal request is converted in to the requested page by the >>> >>>> > bin View action . So I can get a better understanding of how >>> classes , >>> >>>> > objects are used. >>> >>>> >>> >>>> Not sure there is one. but basically you get either: >>> >>>> * document content executed >>> >>>> * if a class sheet is defined for one of the document objects >>> classes, >>> >>>> the class sheet is executed >>> >>>> * if a document sheet is defined for the documment, the document >>> sheet >>> >>>> is executed >>> >>>> >>> >>>> That's pretty much all, then is a matter of free script and wiki >>> >>>> syntax to actually display the content. >>> >>>> >>> >>>> > 2) package com.xpn.xwiki.api: I don't need to consider this, do I? >>> >>>> >>> >>>> That's limited scripting API so you should not consider this. >>> >>>> >>> >>>> > 3) >>> >>>> > Cache< >>> http://extensions.xwiki.org/xwiki/bin/view/Extension/Cache+Module> >>> >>>> > : Need not implement similar component. Android OS does it nicely >>> for >>> >>>> > the >>> >>>> > REST responses >>> >>>> > but still don't have a clear picture on this. >>> >>>> > To save a blog doc >>> >>>> > option 1)Seems like I have to convert a document entity to relevent >>> >>>> > xwiki-model-simplexml entities and send to server. >>> >>>> > option 2) We also can edit the relevent simplexml model object >>> fields >>> >>>> > directly. (Looks a bad option to me.It does not hide the >>> complexity of >>> >>>> > lower levels for the client layer.Anyway my work load is reduced >>> with >>> >>>> > opt:2 ;-)) >>> >>>> >>> >>>> IMO you should not even look at >>> >>>> http://extensions.xwiki.org/xwiki/bin/view/Extension/Cache+Moduleand >>> >>>> instead look at how caching is usually done in Android. The idea is >>> >>>> not to port the xwiki-platform to Android IMO but to follow Android >>> >>>> standards to provide a library to manipulate XWiki model. >>> >>>> >>> >>>> You can set the annotation you want to the simplexml model but the >>> >>>> classes/methods should remain an exact copy of what's on >>> >>>> xwiki-platform-rest-model. The idea being that we could decide to >>> >>>> change the implementation from simplexml to anything (JAXB, gson, >>> >>>> etc.) without breaking anything. >>> >>>> >>> >>>> > >>> >>>> > >>> >>>> > *3: Development/architectural approach Change* >>> >>>> > * >>> >>>> > * >>> >>>> > I was first thinking for a addon like architecture for the XWiki >>> android >>> >>>> > app. We have the client.Main app (with all platfrom libs included) >>> and >>> >>>> > Blog >>> >>>> > app as a seperate apk. >>> >>>> > But here Blog app will need to have the platform lib also. That >>> would be >>> >>>> > a >>> >>>> > complete waste of space. But dynamically extending the app is lot >>> >>>> > easier. >>> >>>> > The client.Main app can add the activities defined in other apks >>> in to >>> >>>> > its >>> >>>> > launcher interface using android PackageManager class. >>> >>>> > >>> >>>> > >>> http://stackoverflow.com/questions/9236803/android-build-an-application-that-supports-add-ons >>> >>>> > But with this approach rises additional complexities. For example >>> naming >>> >>>> > conflicts in the Components library module when two apps have the >>> same >>> >>>> > library with same activities defined. Sync issues etc etc.... >>> >>>> > So we will go with single .apk approach. >>> >>>> > When going with single .apk we dont need a content provider to >>> share >>> >>>> > config/ preferences data. So sharing module is now not needed. The >>> >>>> > client >>> >>>> > applications now can directly access the Configuration.java class >>> to >>> >>>> > get/put configuration entries. >>> >>>> > Also since I am having a User entity a configuration like >>> >>>> > defaultUser(currently the admin user , hard coded in login.xml >>> layout >>> >>>> > file) >>> >>>> > will only be needed for the first use of the app. Otherwise users >>> need >>> >>>> > not >>> >>>> > configure a default user as the application now suggests the user >>> names >>> >>>> > and >>> >>>> > automatically fill the rest. >>> >>>> >>> >>>> Keep in mind that the main goal of this project is to provide tools >>> >>>> for any application to access an XWiki instance and manipulate its >>> >>>> datas easily an improving those libraries should always be the first >>> >>>> goal. Your blog application is here as a good demo and because it's >>> >>>> hard to design a library without using it. >>> >>>> >>> >>>> I really don't understand why you talk about naming conflict. Of >>> >>>> course a library should never provide a complete final activity but >>> >>>> only interface components (View), fragments or base activities to >>> >>>> extend. Putting those elements in an activity is each application >>> job. >>> >>>> An activity is by definition unique so it has nothing to do in a >>> >>>> library. The complete activities in >>> >>>> >>> >>>> >>> https://github.com/xwiki-contrib/android-client/tree/master/xwiki-android-components/ >>> >>>> should have never been there, it's actually a mistake. >>> >>>> >>> >>>> > >>> >>>> > *4: Plan for this week* >>> >>>> >>> >>>> As a priority you should really merge your branch as soon as you have >>> >>>> something building fine. So that it goes through Jenkins and deploy >>> >>>> snapshot build of what you do. Jenkins will tells you in live when >>> >>>> your project does not build anymore or if there is any test failing >>> >>>> and it allows anyone to very easily test the current test of the >>> >>>> client just by installing the apks on >>> >>>> http://maven.xwiki.org/snapshots/org/xwiki/android/. You need to >>> have >>> >>>> something working and in good shape to succeed the GSOC so fixing >>> when >>> >>>> you break something in your build should be your priority over adding >>> >>>> more features. >>> >>>> >>> >>>> Also as I commented in your commit you should be more careful on what >>> >>>> you commit. There is many binaries and Eclipse stuff in your branch. >>> >>>> >>> >>>> > * >>> >>>> > * >>> >>>> > Make a launch pad .We can launch XWiki Navigator, blog etc from >>> this. >>> >>>> > The >>> >>>> > launch pad is shown when we launch XWiki main client. >>> >>>> > Consider adding the WYSIWYG to my blog. It will be useless without >>> the >>> >>>> > ability to convert text formatting to xwiki syntax.So I may just >>> >>>> > integrate >>> >>>> > it and ignore the uselessness for now. >>> >>>> >>> >>>> Not exactly, you could actually reuse WYSIWYG service to send html >>> and >>> >>>> let it convert it to wiki syntax. Note that you are not limited to >>> >>>> what you can find in the current Android library. This is just what >>> >>>> Chamika had the time to do. There is others REST (or not REST) server >>> >>>> interfaces you can use in your client or even add more if its generic >>> >>>> enough and make sense for something else than just Android client. >>> >>>> >>> >>>> > We currently don't have any config to save( Other than default >>> user) >>> >>>> > config. I will add some demo config data and have a developer >>> tools app >>> >>>> > added to the above mentioned XWiki launch pad that can view/edit >>> the >>> >>>> > config >>> >>>> > file. >>> >>>> > >>> >>>> > That will complete milestone 1. But it is not the Sharing >>> >>>> > module(intended >>> >>>> > to share data with other .apks).That is the configuration >>> component does >>> >>>> > not have a ContentProvider to share config data with other apks. >>> Also I >>> >>>> > will define a seperate class to have preferences which will be >>> edited by >>> >>>> > users. Config files are for configuration stuff and will be edited >>> by >>> >>>> > developers. Users have preferences files(natively supported by >>> android) >>> >>>> > to >>> >>>> > change app preferences. For example users will add the default >>> login >>> >>>> > username as a preference.(This will invalidate the use of default >>> User >>> >>>> > entry in the config file which is used until the user edits his >>> >>>> > preferences) >>> >>>> >>> >>>> I'm fine with not sharing datas between applications but it does not >>> >>>> prevent the libraries to provide tools to manage those datas in a >>> per >>> >>>> application basis. >>> >>>> >>> >>>> > >>> >>>> > Beg your pardon if the mail is too lengthy.;-) >>> >>>> >>> >>>> No problem, never too much information for this ;) >>> >>>> >>> >>>> > Thank you. >>> >>>> > Best Regards. >>> >>>> > >>> >>>> > Sasinda Rukshan. >>> >>>> > >>> >>>> > >>> >>>> > Best Regards. >>> >>>> > >>> >>>> > >>> >>>> > On Wed, May 30, 2012 at 1:11 PM, Thomas Mortagne >>> >>>> > <[email protected]>wrote: >>> >>>> > >>> >>>> >> On Wed, May 30, 2012 at 4:28 AM, sasinda rukshan >>> >>>> >> <[email protected]> wrote: >>> >>>> >> > Hi, >>> >>>> >> > I am studying ORM Lite these days. >>> >>>> >> > Please It would be comforting if you can confirm whether it is >>> worth >>> >>>> >> > the >>> >>>> >> > overhead to use ORM Lite. >>> >>>> >> > >>> >>>> >> >>> >>>> >> >>> http://logic-explained.blogspot.com/2011/12/using-ormlite-in-android-projects.html >>> >>>> >> > http://ormlite.com/ >>> >>>> >> > ORM Lite features: >>> >>>> >> > Automatically Creates standard DAOs for an annotated entity. >>> >>>> >> > Coding will be lot easier. >>> >>>> >> >>> >>>> >> Remember it's a framework for a mobile platform so it has to >>> remain >>> >>>> >> light and have good performances. I can see that Android version >>> of >>> >>>> >> ormlite is very small but I never used it so I don't know if it's >>> good >>> >>>> >> or not. At least it seems petty active which is a good point so I >>> >>>> >> don't have anything against it. >>> >>>> >> >>> >>>> >> > >>> >>>> >> > Can you suggest how to name the entities. >>> >>>> >> > I am going to go with, >>> >>>> >> > <entity> org.xwiki.xdroid.data.User --> <table> C_USER >>> >>>> >> >>> >>>> >> Note that there is already a package name prefix and group id >>> defined >>> >>>> >> for the framework and it's org.xwiki.android as you can see on >>> >>>> >> https://github.com/xwiki-contrib/android-client. Why do you want >>> to >>> >>>> >> change it ? It's more consistent with >>> >>>> >> org.xwiki.commons/org.xwiki.rendering/org.xwiki.platform so I >>> would >>> >>>> >> prefer to keep it that way unless you can give arguments. The >>> goal is >>> >>>> >> not to redo something completely but complete and improve the >>> existing >>> >>>> >> framework. >>> >>>> >> >>> >>>> >> Also as far as I can see there is already several things called >>> >>>> >> "xdroid" on Google play among which an application developer >>> >>>> >> (https://play.google.com/store/apps/developer?id=x-droid) and an >>> >>>> >> application ( >>> >>>> >> >>> >>>> >> >>> https://play.google.com/store/apps/details?id=com.gurudigitalsolutions.xdroid >>> >>>> >> ). >>> >>>> >> >>> >>>> >> > >>> >>>> >> > Thanks, >>> >>>> >> > Best Regards >>> >>>> >> > >>> >>>> >> > Sasinda. >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > >>> >>>> >> > On Wed, May 30, 2012 at 7:42 AM, sasinda rukshan >>> >>>> >> > <[email protected]>wrote: >>> >>>> >> > >>> >>>> >> >> Hi, >>> >>>> >> >> >>> >>>> >> >> I am commiting my work to my fork >>> >>>> >> >> https://github.com/sasinda/android-client. >>> >>>> >> >> I ll request to pull it to xwiki-contrib later. >>> >>>> >> >> >>> >>>> >> >> I was running in a wrong path these days. Wanted to save login >>> >>>> >> >> history >>> >>>> >> and >>> >>>> >> >> suggest login. I was going to do it using an xml file (login >>> >>>> >> attempts.xml). >>> >>>> >> >> Now it seems database is better. >>> >>>> >> >> Any way before I go wrong again I will say what I am going to >>> do. >>> >>>> >> >> I am going to enforce following conventions.These are not yet >>> >>>> >> >> needed, >>> >>>> >> >> considered the small scale.But when the system grows it would >>> be >>> >>>> >> >> nice to >>> >>>> >> >> have them to avoid confusions. >>> >>>> >> >> *Database prefixes for:* >>> >>>> >> >> *Platform tables (can begin with appropriate prefix)* >>> >>>> >> >> AD_ //application dictionary : don't know when it will be >>> needed ;-) >>> >>>> >> >> C_ //core functionality >>> >>>> >> >> *Client Applications.* >>> >>>> >> >> X<App name prefix> ex: XBLOG_ for Blog app// All client add >>> in >>> >>>> >> modules >>> >>>> >> >> must begin with table prefix X(for xwiki and ordering) + App >>> name. >>> >>>> >> This is >>> >>>> >> >> for my blog. >>> >>>> >> >> >>> >>>> >> >> I will create >>> >>>> >> >> C_User for user data. >>> >>>> >> >> C_LoginAttempt for saving login attempts. >>> >>>> >> >> >>> >>>> >> >> From C_LoginAttempt I can filter uniqe login combinations and >>> give >>> >>>> >> >> suggestions in the login UI component. Also save the history. >>> >>>> >> >> >>> >>>> >> >> All saved data for blog app will be linked to a perticular >>> login : >>> >>>> >> >> User, >>> >>>> >> >> XWiki server. >>> >>>> >> >> But only a single user will be most probably using his personal >>> >>>> >> >> device. >>> >>>> >> So >>> >>>> >> >> above will be relevant only when he has multiple wikis. >>> >>>> >> >> >>> >>>> >> >> Best Regards, >>> >>>> >> >> Sasinda Rukshan. >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> >> On Sun, May 27, 2012 at 5:43 PM, Chamika Weerasinghe < >>> >>>> >> [email protected]>wrote: >>> >>>> >> >> >>> >>>> >> >>> On Fri, May 25, 2012 at 1:25 AM, Jerome Velociter < >>> >>>> >> [email protected] >>> >>>> >> >>> >wrote: >>> >>>> >> >>> >>> >>>> >> >>> > On Thu, May 24, 2012 at 6:09 PM, Thomas Mortagne >>> >>>> >> >>> > <[email protected]> wrote: >>> >>>> >> >>> > > On Thu, May 24, 2012 at 5:52 PM, sasinda rukshan >>> >>>> >> >>> > > <[email protected]> wrote: >>> >>>> >> >>> > >> Hi all, >>> >>>> >> >>> > >> I am starting this thread for my XWiki Android Platform >>> >>>> >> >>> > >> Project. >>> >>>> >> >>> > >> >>> >>>> >> >>> > >> Please check whether following are OK. >>> >>>> >> >>> > >> [1] INFO >>> >>>> >> >>> > >> I tried to start my new modules with the >>> >>>> >> >>> de.akquinet.android.archetypes: >>> >>>> >> >>> > >> android-quickstart:1.0.8. (added eclipse plugins m2e, >>> >>>> >> >>> > >> m2e-android[a.k.a *Android >>> >>>> >> >>> > >> Configurator* ]). But this seems buggy in eclipse. >>> >>>> >> >>> > >> Any way the earlier project has not followed the above >>> >>>> >> >>> > >> archtype >>> >>>> >> >>> either. >>> >>>> >> >>> > So >>> >>>> >> >>> > >> I am going to write pom.xml manually for my each module. >>> >>>> >> >>> > >> >>> >>>> >> >>> > >> [2] ADVICE NEEDED >>> >>>> >> >>> > >> xwiki-rest-model module contains 2 submodules >>> >>>> >> >>> > >> |-- xwiki-rest-model-gson ( gson should be corrected to >>> >>>> >> >>> > >> json) >>> >>>> >> >>> > > >>> >>>> >> >>> > > No the g is not a mistake, it's a model to be used with >>> the >>> >>>> >> >>> > > gson >>> >>>> >> >>> > > library (http://code.google.com/p/google-gson/). See >>> >>>> >> >>> > > >>> >>>> >> >>> > >>> >>>> >> >>> >>> >>>> >> >>> >>>> >> >>> http://extensions.xwiki.org/xwiki/bin/view/Extension/Google+Android+Client#HXWikiAndroidDevelopmentAPIsandResources >>> >>>> >> >>> > . >>> >>>> >> >>> > > >>> >>>> >> >>> > >> |-- xwiki-rest-model-simplexml >>> >>>> >> >>> > >> I think the xwiki-rest-model-gson is redundant. The >>> classes >>> >>>> >> >>> > >> in xwiki-rest-model-simplexml is added with simple xml >>> >>>> >> annotations, >>> >>>> >> >>> > >> otherwise both modules have same classes. There is no >>> problem >>> >>>> >> >>> > >> with >>> >>>> >> >>> the >>> >>>> >> >>> > >> added annotations for using the same model objects for >>> Json >>> >>>> >> >>> > >> REST >>> >>>> >> web >>> >>>> >> >>> > >> services. And I intend to add my JPA (ORMLite library for >>> >>>> >> >>> persistence) >>> >>>> >> >>> > >> annotations on top of it. >>> >>>> >> >>> > >> Shall I re-factor them to a single module >>> xwiki-rest-model. >>> >>>> >> >>> > > >>> >>>> >> >>> > > No keep them separated, the idea is that both are useful >>> tool >>> >>>> >> >>> > > to be >>> >>>> >> >>> > > used by someone else that might be moved to >>> xwiki-platform at >>> >>>> >> >>> > > some >>> >>>> >> >>> > > point along with the current xwiki-rest-model (to be >>> renamed to >>> >>>> >> >>> > > xwiki-rest-model-jaxb). >>> >>>> >> >>> > > >>> >>>> >> >>> > > Chamika initially started with gson and since XWiki REST >>> JSON >>> >>>> >> >>> > > representation had some limitation he moved to XML >>> >>>> >> >>> > > representation. >>> >>>> >> >>> > > Maybe at some point Android will have native support for >>> jaxb >>> >>>> >> >>> > > which >>> >>>> >> >>> > > would obviously be the easier for us (embedding jaxb is >>> not an >>> >>>> >> option >>> >>>> >> >>> > > in mobile world where size it still pretty important >>> especially >>> >>>> >> >>> > > on >>> >>>> >> >>> > > phones). Maybe it's already the case on most recent >>> versions >>> >>>> >> >>> > > like >>> >>>> >> 4.0 >>> >>>> >> >>> > > I don't know. >>> >>>> >> >>> > >>> >>>> >> >>> > There's also Jackson that could be tried for JSON >>> >>>> >> >>> > deserialization, if >>> >>>> >> >>> > said limitations are actually GSON limitations. >>> >>>> >> >>> > >>> >>>> >> >>> GSON wasn't the limitation. >>> >>>> >> >>> It was XWiki RESTful API which doesn't support JSON in some >>> cases. >>> >>>> >> >>> So >>> >>>> >> it's >>> >>>> >> >>> safe to go with xml. >>> >>>> >> >>> >>> >>>> >> >>> > >>> >>>> >> >>> > Having full JAXB support sound a bit overweight for such an >>> >>>> >> >>> > "embedded >>> >>>> >> >>> > API", even if one day it is natively supported by Android. >>> What's >>> >>>> >> >>> > important is to have an easy and fast deserialization, IMO. >>> >>>> >> >>> > The only advantage I can see of going JAXB would be in >>> re-using >>> >>>> >> >>> > the >>> >>>> >> >>> > exact representations and body readers/writers from XWiki >>> core. >>> >>>> >> >>> > But >>> >>>> >> >>> > you probably don't even want to do that since it would mean >>> >>>> >> >>> > dragging >>> >>>> >> >>> > XWiki core with you :) >>> >>>> >> >>> > >>> >>>> >> >>> > Jerome >>> >>>> >> >>> > >>> >>>> >> >>> > > >>> >>>> >> >>> > >> >>> >>>> >> >>> > >> [3] INFO >>> >>>> >> >>> > >> I had to change some pom.xml s. As the current project >>> at: >>> >>>> >> >>> > >> https://github.com/xwiki-contrib/android-client.gitdoes not >>> >>>> >> build. >>> >>>> >> >>> > Error >>> >>>> >> >>> > >> with parent pom.xml coordinates. >>> >>>> >> >>> > > >>> >>>> >> >>> > > You probably did not setup you maven install properly >>> since >>> >>>> >> >>> > > what's >>> >>>> >> on >>> >>>> >> >>> > > https://github.com/xwiki-contrib/android-client.git build >>> >>>> >> perfectly >>> >>>> >> >>> as >>> >>>> >> >>> > > you can see on >>> >>>> >> http://ci.xwiki.org/view/All/job/xwiki-android-client/ >>> >>>> >> >>> > > which run a build every time something changes on the git >>> >>>> >> repository.. >>> >>>> >> >>> > > You should look at >>> >>>> >> >>> > > http://dev.xwiki.org/xwiki/bin/view/Community/Building. >>> >>>> >> >>> > > >>> >>>> >> >>> > >> >>> >>>> >> >>> > >> >>> >>>> >> >>> > >> Thank you >>> >>>> >> >>> > >> Best Regards. >>> >>>> >> >>> > >> Sasinda Rukshan >>> >>>> >> >>> > >> _______________________________________________ >>> >>>> >> >>> > >> devs mailing list >>> >>>> >> >>> > >> [email protected] >>> >>>> >> >>> > >> http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> > > >>> >>>> >> >>> > > >>> >>>> >> >>> > > >>> >>>> >> >>> > > -- >>> >>>> >> >>> > > Thomas Mortagne >>> >>>> >> >>> > > _______________________________________________ >>> >>>> >> >>> > > devs mailing list >>> >>>> >> >>> > > [email protected] >>> >>>> >> >>> > > http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> > >>> >>>> >> >>> > >>> >>>> >> >>> > >>> >>>> >> >>> > -- >>> >>>> >> >>> > Jérôme Velociter >>> >>>> >> >>> > Winesquare >>> >>>> >> >>> > http://www.winesquare.net/ >>> >>>> >> >>> > _______________________________________________ >>> >>>> >> >>> > devs mailing list >>> >>>> >> >>> > [email protected] >>> >>>> >> >>> > http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> > >>> >>>> >> >>> _______________________________________________ >>> >>>> >> >>> devs mailing list >>> >>>> >> >>> [email protected] >>> >>>> >> >>> http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> >>> >>>> >> >> >>> >>>> >> >> >>> >>>> >> > _______________________________________________ >>> >>>> >> > devs mailing list >>> >>>> >> > [email protected] >>> >>>> >> > http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> >>>> >> >>> >>>> >> >>> >>>> >> -- >>> >>>> >> Thomas Mortagne >>> >>>> >> _______________________________________________ >>> >>>> >> devs mailing list >>> >>>> >> [email protected] >>> >>>> >> http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >> >>> >>>> > _______________________________________________ >>> >>>> > devs mailing list >>> >>>> > [email protected] >>> >>>> > http://lists.xwiki.org/mailman/listinfo/devs >>> >>>> >>> >>>> >>> >>>> >>> >>>> -- >>> >>>> Thomas Mortagne >>> >>> >>> >>> >>> >> >>> >> >>> >> >>> >> -- >>> >> Thomas Mortagne >>> > >>> > >>> > >>> > -- >>> > Thomas Mortagne >>> >>> >>> >>> -- >>> Thomas Mortagne >>> >> >> > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs -- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

