Vesuvius July 9, 2013 IRC about GSoC

Listed here because official logging didn't capture this session. Time zone is EDT.



Status #sahana-meetingX 

(no topic set)

[11:02] == glennp [9c287805@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:04] == mohit21 [7ab13998@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:06] == akanduru [820efe18@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:06] == Akila [~akila@] has joined #sahana-meeting

[11:06] <glennp> Another Tuesday IRC chat.  Hi, folks.

[11:07] <mayank_jain> Hi glennp

[11:07] <akanduru> Hi Glenn

[11:07] <Sneha1> hi glennp

[11:08] <Akila> Hi

[11:09] <glennp> As you probably saw from the email, rami won't be making it today, but asked that Akila and Kaushika report to the group (& email later).  Akila, could you give us the run-down on your work?

[11:10] <Akila> I managed to configure WMI with PHP for creating machine specific UUID

[11:11] <Akila> so tracking machine movements for Vesuvius Portable is very efficient and reliable now

[11:11] <glennp> Also, if mohit21's on, you and akanduru can begin chat.

[11:11] == guru___ [~guruthars@] has joined #sahana-meeting

[11:12] <akanduru> Hi Mohit

[11:12] <Akila> I think stage 1 of the project is complete with this

[11:12] <glennp> Akila: does WMI work OK with Win 7, Win 8?

[11:12] <Akila> compatible with WinXP and above

[11:12] <Akila> including server editions

[11:13] <glennp> :-)

[11:13] <glennp> What's the next stage?

[11:14] <Akila> next step would be to make a design for customizing portable app

[11:14] <Akila> with selected data and modules

[11:14] <mohit21> Hi

[11:15] <Akila> need to discuss with Chamindra on how to proceed

[11:15] <akanduru> Any progress with sqllite integration?

[11:15] <mohit21> Yes I deployed it on Tomcat

[11:15] <mohit21> As it turned out the method didn't word

[11:16] <mohit21> So I used getRealPath()

[11:16] <glennp> Akila: there was some discussion last week about Chamindra & others having a Sykpe chat... did that happen?

[11:16] <akanduru> Okay...

[11:16] <mohit21> Now the test application is working with relative path

[11:16] <akanduru> Did that help?

[11:16] <akanduru> Okay good.

[11:16] <glennp> e.g., about native sync, portable app common issues.

[11:17] <Akila> yes, but I couldn't make it happen. I think he's very busy with work

[11:17] <mohit21> Yes now I know how I can integrate SQLite in the appliation

[11:17] <glennp> Ahh, too bad.

[11:17] <mohit21> I also wanted to check on App Engine

[11:17] <Akila> I'll start a thread in mailing list for that. Hopefully he can comment at least

[11:17] <mohit21> But some problem came in way

[11:17] <akanduru> Are you able to define sqllite resource in context.xml and access it from your test application?

[11:18] <mohit21> But I guess if it's working on Tomcat then it should work fine

[11:18] <mohit21> Do I need to define the resources

[11:18] <akanduru> I thought we decided to disable app engine...

[11:18] <glennp> OK, keep after him.  Anything else this week?

[11:18] <mohit21> I can connect to the DB just by specifying the url

[11:18] <mohit21> Yes I was talking about the test application

[11:19] <Akila> anyway I do have an idea for creating the portable app with selected modules

[11:19] <mohit21> just to check the relative path

[11:19] <Akila> Vesuvius already has a module loader ryt?

[11:19] <mohit21> Do I need to define the resource in context.xml

[11:19] <mohit21> I think it'll work fine without that also

[11:19] <akanduru> Yes, that way we don't have to change the code from switching database to database.

[11:19] <mohit21> Okay

[11:20] <glennp> I think its based on conf file settings.... triune not here for me to ask

[11:20] <Akila> so if I use that and copy only selected module directories it should work I think

[11:20] <mohit21> But since we don't know the absolute path to the database

[11:21] <mohit21> How can we define the resource in the context.xml

[11:21] <akanduru> It shouldn't be too hard, if you follow earlier definitions in context.xml. You can try resource definition in your test application.

[11:22] <glennp> So the user would select modules at Portable-App creation time... what happens if later they change their mind, want more?

[11:22] <mohit21> Yes that's fine but don't we need absolute path of the database to define the resource

[11:22] <akanduru> See if it works with absolute path in context.xml.

[11:23] <Akila> the user will have to create a new one (with new modules selected) and download

[11:23] == kaushikaruk [67f73092@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:23] <akanduru> THere should be a way to access application working directory.

[11:24] <glennp> I guess that wouldn't be terrible... and it is the obvious way to start out.

[11:24] <mohit21> In the code I am able to access the database with it's relative path

[11:25] <mohit21> that is if the database is present in the war folder I can be accessed

[11:25] <Akila> Chamindra mentioned that portable app should start with minimum set of data (which he referred to as base data)

[11:25] <mohit21> It will work f the code is deployed on a different server as well

[11:26] <Akila> getting a database dump with specific set of data is little challenging

[11:26] <mohit21> The condition will remain that the database remain in the war folder and the database name is assumed to be same

[11:26] <akanduru> Right, but if we choose to use PL database, then we have to change the code. Instead I prefer to change the context.xml, even if I have to enter full path in context.xml.

[11:27] <glennp> Sounds good.  I'm hoping the Demo Instance will do something similar... but with a choice of datasets.  Sneha1, care to comment?

[11:27] <mohit21> So we will be providing the absolute path of the database to the application?

[11:28] <akanduru> If using sqllite it will be hardcoded path in context.xml, but if using PL database, it will have other paramters.

[11:28] <mohit21> I didn't get you

[11:28] <akanduru> If the relative path doesn't work from context.xml.

[11:28] <glennp> One way is just to have multiple frozen base databases, and you select 1 as your base.

[11:28] <Sneha1> glennp: that is what i plan to do this week. to enable the choice of dataset. i wanted a discussion before proceeding.

[11:30] <mohit21> Where will the database be in the application?

[11:30] <glennp> Sneha1: dilantha's not on yet, and maybe we should hold off a full discussion to see if he arrives?

[11:30] <akanduru> I want to use relative path from context.xml. If that is not possible, I will go with hardcoded path in context.xml. In any case, I want to avoid changing the code when the deployment changes.

[11:30] <Akila> glennp: can you explain how these frozen base databases are created?

[11:30] <Sneha1> yes sure!

[11:32] <mohit21> Isn't the database always present in the working directory of the application

[11:32] <akanduru> If it is sqllite it will be in WEB-INF. If it is mysql as is the case with PL, it can be any host.

[11:32] <glennp> Akila: well, you just create a new instance of the system, populate it as you wish, then either rename it or dump it (as a MySQL admin in either event)

[11:33] <akanduru> Not necessarily. That is the reason resource definitions are used.

[11:33] <glennp> Then reverse the process when a user selects it.

[11:33] <mohit21> So is mySQL supposed to be continued in the application?

[11:33] == roshan [~roshan.h@] has joined #sahana-meeting

[11:34] <glennp> This is not a fast or elegant approach, and may have permission issues to overcome.  Just easy to conceive.

[11:34] <akanduru> Yes. The application should not care  about where or which database is used, as long as it is a relational.

[11:35] <mohit21> But while making the connection the driver has to be specified

[11:35] <akanduru> and it has the same table schema.

[11:36] <mohit21> and mysql and sqlite have different drivers

[11:36] <mohit21> sqlite can also access mysql databases?

[11:36] <mohit21> isn't it

[11:36] <akanduru> That is right, but that is external to code. At run time you install the driver you need. For most cases, we may include both.

[11:37] <glennp> Akila: thanks for the update.  Stick around, we may touch on this again with Sneha later.

[11:37] <akanduru> Sorry, I am a bit out of sync with your responses...

[11:37] <akanduru> Two drivers are different

[11:37] <akanduru> Both dirvers can be included in the package.

[11:38] <Akila> sure, I was thinking how that approach could be applied in portable app scenario

[11:38] <mohit21> But in the code only one driver can be used, isn't it

[11:38] <glennp> For now, kaushikaruk, could you give us an update on Merge?  As you probably know, rami can't make it this week.

[11:39] <kaushikaruk> hi glennp

[11:39] <glennp> greets

[11:40] <kaushikaruk> i have completed the adding person to the shelter and started to work on  search shelter

[11:40] <akanduru> The resource manager should be able resolve which driver is used. If you look at the context.xml, you can see that the driver class is specified for each resource.

[11:41] <akanduru> That is part of J2EE/tomcat framework.

[11:41] <kaushikaruk> will complete the search screen by mid way of this week

[11:41] == guru____ [7086d77f@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:41] <glennp> kaushikaruk: Were you able to solve the problem with submenus?

[11:42] <mohit21> In the resource definition it will be defined which driver to be used for the database

[11:42] <kaushikaruk> we discussed to have links inside a tab group for now

[11:42] == guru___ [~guruthars@] has quit [Ping timeout: 240 seconds]

[11:42] <glennp> ok

[11:43] <kaushikaruk> will look into introduce a sub menu js if time permits

[11:43] <akanduru> right. that is how it will know which driver to use. You change context.xml for each deployment, but not the java servlet code.

[11:44] <glennp> can you edit an existing person's shelter record, or is that something to tackle after search?

[11:44] <mohit21> okay

[11:44] == globaliist [] has joined #sahana-meeting

[11:44] <kaushikaruk> listing the persons in the shelter comes with the search

[11:45] <kaushikaruk> from that you will be able to edit a person

[11:45] <glennp> makes sense

[11:45] <mohit21> So for sql is there any need for change in the codebase?

[11:45] == dilantha [70878a66@gateway/web/freenode/ip.] has joined #sahana-meeting

[11:46] <akanduru> The tomcat frame work, reads the resource definition, looks for driver class its path, and loads it. You simple use the resource by its name in the application.

[11:46] == guru___ [~guruthars@] has joined #sahana-meeting

[11:46] == guru____ [7086d77f@gateway/web/freenode/ip.] has quit [Quit: Page closed]

[11:46] <mohit21> Yes I got it

[11:46] <glennp> so for the coming week, build out of the search continues as the main work.

[11:46] <kaushikaruk> yes glennp

[11:47] <kaushikaruk> wil complete the search functionality and start working on the editing a person on the shelter

[11:47] <glennp> Sounds like you're making good progress.  Anything else to report?

[11:48] <akanduru> I don't think you need to change any sql in application, as long as its is ANSI standard sql. We want to avoid any sqllite or mysql specific statements in the code. If there are any, we want to change them to comply with standard sql.

[11:49] <akanduru> I don't think have any mysql specific statements in the code, but if there are, we have to change them.

[11:49] <mohit21> okay

[11:50] <kaushikaruk> when working on forms I will be able to introduce new widgets.. will merge them to lib_form as they become stable

[11:50] <mohit21> So how will I know which are mysql specific statements

[11:50] <kaushikaruk> thats all from my side..

[11:50] <mohit21> will I have to test it?

[11:50] <glennp> Great.  Thanks, kaushikaruk.  Mayank, roshan:  saw the latest on disaster specific pages

[11:50] <kaushikaruk> thanks glennp..

[11:50] <akanduru> When sqllite complains!

[11:51] <mayank_jain> Hi glennp roshan

[11:51] <mayank_jain> glennp: Your thoughts on that.

[11:51] <mohit21> So I'll have to test it

[11:51] <glennp> Probably too many cooks on your project, but I'm going to stir the pot anyway.

[11:52] <mayank_jain> :D

[11:52] <glennp> Minor:  don't use "temp" as an abbreviation for "template", reads too much like "temporary"

[11:52] <roshan> that's very helpful glennp

[11:53] <akanduru> Yes. You can't say it works, until you test it.

[11:53] <mohit21> okay

[11:53] <mohit21> One other thing was that from where will the application get the list of directories from where events have to be searched

[11:53] <glennp> Also, table "disaster_template" is really "disaster_template_group"... there's no templates in it.

[11:54] <mayank_jain> ok. will use the full form only then.

[11:55] <akanduru> For that you need to specify an environment variable in servlet to locate the repository directory, then use standard java file io classes to read the list of directories.

[11:55] <glennp> You refer to a "disaster_temp[plate]_id", which I guess points to the "disaster_template[_group]" table?  But there's no disaster_template_id in that later table. ????

[11:56] <mayank_jain> I did not mention it explicitly in the disaster_template_group table.

[11:56] <mohit21> and return a list of urls of the images

[11:57] <mohit21> in the form of facets?

[11:57] <mayank_jain> In the group table there will be templates

[11:57] <mayank_jain> One template for one disaster

[11:57] <mayank_jain> It will have basic content for that disaster

[11:57] <glennp> Likewise, there's a "search_id" but no explanation of its role.

[11:57] <glennp> So just need a little more documentation on these.

[11:58] <mayank_jain> search_id is already existing in the incident table

[11:58] <mayank_jain> I simply showed the existing table ..

[12:00] <akanduru> Yes, it returns Map<String, List<FacetModel>>.

[12:00] <glennp> Oh, OK.  It wasn't in your first diagram of that table (in July 7th section), so I thought it was something you introduced

[12:01] <akanduru> Mohit, any other questions before we yeild to others?

[12:01] <mayank_jain> :D . I need to be consistent with the diagrams and documentation

[12:01] <mohit21> just one last thing

[12:01] <glennp> I was also unclear about "end_date", what it means and how to use it.

[12:02] <mohit21> what are field and display label in facetmodel

[12:02] == louiqa [6c12b23e@gateway/web/freenode/ip.] has joined #sahana-meeting

[12:02] <mohit21> What does this Map<String, List<FacetModel>> represent

[12:02] <glennp> hi, louiqa.

[12:02] <louiqa> hi sorry i am late

[12:03] <roshan> end date is to indicate whether the incident is still active (or archived - sort of)

[12:03] <glennp> we're chatting with mayank and roshan.  akanduru and mohit21 are just finishing up.

[12:03] <akanduru> The actual event names could be different than more descriptive wording we provide for the user in the GUI.

[12:04] <glennp> RE end_date... the lifetime of a disaster event goes through some stage here at NLM...

[12:04] <mohit21> okay so field is the actual event name and displaylabel is the event name displayed

[12:05] <glennp> starts of course, then later gets closed to new reporting (there are 3 flavors of this).

[12:05] <glennp> Then still later becomes accessible only to admins/researchers

[12:06] <roshan> yes, that's what we mean by end date

[12:06] <roshan> any better name for it glennp?

[12:06] <glennp> and we're now talking about a later stage where the records would be de-identified (whether that's the same event is unclear)

[12:07] <glennp> roshan: which?  close to new reporting, or hidden from public view?

[12:07] <roshan> hidden from public view

[12:07] == kaushikaruk [67f73092@gateway/web/freenode/ip.] has quit [Quit: Page closed]

[12:07] <glennp> ok

[12:08] <louiqa> dilantha sneha hi how are things going?

[12:08] <glennp> hide_date  ???

[12:08] <Sneha1> hi louiqa

[12:08] <roshan> ok, that's more meaningful

[12:08] <dilantha> hi louiqa, Sneha1

[12:09] <glennp> akanduru, mohit21... thanks for today.

[12:09] <mohit21> Thanks :)

[12:09] <dilantha> Sneha1 : how is the progress ?

[12:10] <mayank_jain> glennp roshan : I have completed the disaster_category -> incident mapping

[12:10] <Sneha1> i have handled the timeout capability. still have a bit of problem with displaying of the timer, but i am working on that

[12:10] <mayank_jain> One issue here. Who will manage categories? Editor or Event Manager?

[12:10] <akanduru> Okay Glenn. Mohit we can take up your questions in tomorrow's chat.

[12:10] <dilantha> ok good..

[12:11] <dilantha> for the moment shall we the displaying timer as it is and start  working on a basic flow ?

[12:11] <Sneha1> dilantha: yes.

[12:11] <mayank_jain> I was thinkng of event-manager . While creating incident he can add categories if he does n't fine one ..

[12:11] <mohit21> Yes that would be good.

[12:12] <glennp> mayank: makes sense

[12:12] <dilantha> better to start off with the demo requesting form

[12:12] <Sneha1> demo requesting form?

[12:12] <mayank_jain> I added a few images to show the working of mapping part :

[12:13] <mayank_jain> Adding categories remains.

[12:14] <dilantha> users fill have to fillout certain details to request a demo in the first place

[12:14] <dilantha> *will

[12:14] <Sneha1> ohk.

[12:14] <Sneha1> this will be after the registration?

[12:14] <Sneha1> or similar to it?

[12:15] <glennp> mayank:  could be a separate add-category button outside the dropdown, I suppose

[12:15] <mayank_jain> yes! Just beside the dropdown

[12:15] <dilantha> yes.. in other words registration :-)

[12:15] <dilantha> louiqa: anything you want to add ?

[12:16] <louiqa> sneha do you have a workflow for the user to register and request a demo instance?

[12:18] <Sneha1> the user registers, chooses the kind of capability, like hospital registration etc.

[12:18] <Sneha1> actually these were supposed to com with prefilled data sets

[12:18] <glennp> The whole parent-child/association aspect has become a bit muddled by all our discussions.

[12:19] <louiqa> sneha is there a menu of capabilities?  what is a 'prefilled data set'?

[12:19] <louiqa> sneha what are the elements of the registration process?

[12:20] <louiqa> sneha i meant what are the steps of the registration process not elements

[12:20] <Sneha1> the user doesn't have to fill up the details. there will be mock data

[12:20] <mayank_jain> glennp: Why do u say that?

[12:20] <louiqa> sneha do you mean some default data for the demo instance?

[12:21] <Sneha1> yes. default data for hospitals for example.

[12:21] <glennp> Since 2 alternative designs with & with/out association are on the table.  I think I'm going to put my head down on that and let someone else resolve it  :-P

[12:21] <louiqa> sneha where do you get the categories such as 'hospital demo instance' and where do you get the mock data?

[12:22] <mayank_jain> :P

[12:22] <mayank_jain> glennp roshan : One last thing from me.

[12:23] <dilantha> is it necessary to select a category when requesting a demo ?

[12:23] <mayank_jain> Do i need to track these mappings with the event-manager?

[12:23] <mayank_jain> Like if there are two Managers M1 and M2. In my current implementation if M2 makes an edit to these mappings.

[12:23] <glennp> You mean an audit trail?

[12:24] <mayank_jain> He will be overwriting/replacing the mapping of M1

[12:24] <louiqa> dilantha and sneha it seems like the steps and options of the registration process are not clearly defined?

[12:24] <mayank_jain> Let there be an incident XYZ. M1 assigns XYZ categories D1,D2,D3 .On the other hand M2 edits and assigns categories D3,D4 to it.

[12:25] <mayank_jain> I am replacing D1,D2,D3 with D3,D4

[12:25] <mayank_jain> I hope this is fine

[12:26] <glennp> Thanks fine.   The event manager generally needs an audit trail, and its something that we'll work on later in the year.  I wouldn't worry about it now.

[12:26] <glennp> i.e., beyond the scope of your project.

[12:26] <mayank_jain> fine :)

[12:26] <dilantha> yes.. it's not there in the blue print..

[12:26] <Sneha1> the demo user will test the modules, so when the user registers ( normal registration, like username, organistaion name, etc),after this the user will have the choice of setting up his specific demo instance

[12:27] <roshan> glennp: how many roll backs or death to log?

[12:27] <roshan> we can try to incorporate it

[12:28] <roshan> or at least to document the idea

[12:28] <louiqa> sneha can you update your blueprint with the steps and options of the registration process and send an update to maindev?

[12:28] <roshan> *depth

[12:28] <Sneha1> yes. i'll do that tonight.

[12:29] <glennp> Just logging is probably enough, to know who did something in the past.  But greg wants to tie it in to email notification as well, and thinks this makes it too complicated for now.

[12:29] <louiqa> sneha and dilantha - what does sneha need to show she has accomplished for the project at the halfway point?

[12:29] <roshan> ye, I think fully fledge design is out of the scope for mayank.

[12:29] <louiqa> sneha do you know what you need to show at the halfway point of the project?

[12:30] <roshan> we'll try to have space in the table design if possible

[12:30] <mayank_jain> glennp roshan: This can be done if time remains.

[12:30] <Sneha1> louiqa: in my timeline i had written that i will have finished with the general workflow pf the demo instance

[12:30] <Sneha1> ie creation of the instance

[12:31] <dilantha> yes

[12:31] <Sneha1> then timer and resume capability

[12:31] <glennp> mayank: maybe.  I'm more interested in making templates content smart, incorporating database content, etc.

[12:31] <louiqa> sneha so the registration need to be completed and the demo instance with the default values wil be launched?

[12:32] <Sneha1> yes

[12:32] <louiqa> sneha what is involved in launching a demo instance with default values? do you have to run a script to populate the database of the demo instance? are all these details in the blueprint?

[12:33] == graemef [~graemef@] has quit [Ping timeout: 246 seconds]

[12:33] <glennp> event name being an obvious thing to pick up from db, generate into page file.

[12:34] <Sneha1> that is not in the blueprint. i had not discussed this part yet. i was planning to discuss the details of this today.

[12:35] <louiqa> sneha why dont you put these details in the blueprint and then we can discuss by email on maindev?

[12:35] <mayank_jain> I will finish with this mapping part and documentation by tomorrow and will get started with the template part.

[12:35] <louiqa> sneha and dilantha i have to leave now

[12:36] <Sneha1> sure

[12:36] <dilantha> ok

[12:36] <glennp> mayank, roshan: sounds great.  Anything else before triune and guru__ chat?

[12:36] <mayank_jain> Nothing else from me.

[12:37] <mayank_jain> Thanks Glenn,Roshan

[12:37] <guru___> hi

[12:37] <triune> hello :)

[12:37] <Sneha1> dilantha what about the workflow that you were saying? can you elaborate on that. i had started working on creating a separate registration process for the demo instance.

[12:37] <Sneha1> but that required a different demo table

[12:37] <guru___> i have done initial design last week..

[12:38] <Sneha1> and i was facing problem with authentication

[12:38] <triune> so, how shall we start? I was off last week... so I'd be interested in the last 2 weeks of progress if you will or you can start with any pressing matters or questions

[12:38] <Sneha1> so i switched back to the users table

[12:38] <dilantha> im not sure why do you need a seperate table for that ?

[12:39] <guru___> ya i was planned like having a seperate table on db for sync data..

[12:39] <dilantha> when a new user registered you will add that in the user table ryt ?

[12:39] <Sneha1> i wanted to add new rows.

[12:39] <Sneha1> yes.

[12:39] <guru___> which may reduce the cost of searching each time before sync..

[12:39] <triune> guru___: would that table's data be abstracted in the new sync class?

[12:40] <dilantha> so that table will contain the list of users who are registered for demo instances

[12:40] <Sneha1> yes.

[12:40] <dilantha> after a new demo instance is setup it will have a different db

[12:40] <Sneha1> and for additional details i can add a new table with foregin key?

[12:41] <dilantha> it will work as a stand alone sahana application

[12:41] <guru___> Nop.. its for fetching the last sync info with other instance..

[12:41] <dilantha> nothing to do with the demo module

[12:42] <Sneha1> yes.

[12:42] <dilantha> yes..for addition details you can user a new table

[12:42] <dilantha> like we discuss in the previous week

[12:42] <guru___> then we could see what would be the changes from last sync.. and progress but we have to keep same data other instance as well

[12:42] <Sneha1> ok.

[12:43] == mayank_jain [~mayank@] has quit [Quit: Leaving]

[12:43] <Sneha1> so after the user registers, the next step will be initialisation of the demo instance.

[12:44] <dilantha> yes

[12:44] <guru___>

[12:44] <guru___> at last page..

[12:44] <dilantha> that should be handled by the admin section of your demo module

[12:44] <triune> guru___: that makes sense, but as you know I like to abstract db data into class elements as much as possible as you can see with my other classes, why I thought it might be a good idea to abstract sync information into your class...

[12:44] <triune> perhaps I will have to learn more about your design to understand your decisions on this

[12:45] <dilantha> admin should be able to review the request and setup a instance

[12:45] <Sneha1> what should the admin section contain?

[12:46] <dilantha> admin should be able to setup instances after re-viewing the requests

[12:46] == roshan [~roshan.h@] has quit [Quit: Leaving]

[12:47] <dilantha> lot more should comes under the admin section

[12:47] <dilantha> but for the moment lets focus only on the demo creation part

[12:48] <Sneha1> ok.

[12:48] <guru___> yes thats correct, but it'll be difficult if we have more than 2 instance sync to same incident..

[12:48] == mayank_jain [~mayank@] has joined #sahana-meeting

[12:48] <dilantha> so please update the blueprint and send a mail to main-dev

[12:48] == mayank_jain [~mayank@] has quit [Client Quit]

[12:48] <glennp> I've got to go... triune will take over the hosting for the remainder of this session.  Thanks again for coming by.... bye.

[12:49] <guru___> bye glennp

[12:49] <Sneha1> since i am building this as a sahana module, so after a user registers, he is able to access the other capabilities by default.

[12:50] <dilantha> what do you men by other capabilities ?

[12:50] <Sneha1> like the pf section, or the hospital section

[12:51] <dilantha> yes.. user can do anything with the instance

[12:52] <dilantha> he can access all the modules in sahana

[12:52] <dilantha> except your one :-)

[12:53] <triune> guru___ and I are working in his document at the moment, just stopped chatting here a bit ;)

[12:53] <Sneha1> yes. so this is happening automatically, so this does not need to be coded right? i mean the demo instance is also created automatically, in this case

[12:55] <dilantha> not automatically..

[12:56] <dilantha> either you will have to provide the functionality to create a new instance in the admin

[12:56] <dilantha> or the admin will have to install it manually

[12:58] <Sneha1> how will this be done?

[13:01] <Sneha1> i mean, there will be separate admin for the demo module?

[13:01] == louiqa [6c12b23e@gateway/web/freenode/ip.] has quit [Quit: Page closed]

[13:02] <dilantha> yes..

[13:02] <triune> guru___: you're sync workflow seems solid

[13:02] <dilantha> it doesn't have to be a seperate admin JUST for demo module

[13:03] <Sneha1> ok.

[13:03] <triune> I think I'm getting to the point where I need to see some of your code design in terms of the sync class to fully understand what you've conceptualized

[13:03] <Sneha1> the admin section will take care of it?

[13:04] <Sneha1> have you gone through my launchpad branch?

[13:04] <dilantha> not yet

[13:05] <Sneha1> ok. ill update it with the timeout part.

[13:05] <dilantha> ok

[13:05] == robbyoconnor [~wakawaka@guifications/user/r0bby] has joined #sahana-meeting

[13:07] <dilantha> also update the blue print with how you are planing to implement the functionality that we discussed to day

[13:07] <guru___> ok i'll make it available soon..

[13:07] <Sneha1> yes.

[13:07] <Sneha1> what should be the goal for this week?

[13:08] <dilantha> i would say finalizing the blueprint and start working on the registration

[13:08] <dilantha> :-)

[13:09] <triune> guru___: do you have a diagram or any documentation so far on how your planned class structure is to be designed? this is the part I am most interested in

[13:09] <Sneha1> i have done a normal registration.

[13:09] <Sneha1> for the demo module.

[13:10] <triune> a high level architectural design of the various code elements: persons, sync objects, and/or sync queues

[13:10] <dilantha> ok.can you add some screen shots as well then ?

[13:10] <Sneha1> yes, i can do that.

[13:11] <Sneha1> what about the demo instance initialisation?

[13:11] <Sneha1> i mean the steps?

[13:11] <guru___> we were planned like sync object is a person object with update history data..

[13:14] <dilantha> as a abstract.. you should write the functionality to take the latest code from the LP and install it

[13:15] <guru___> but these update history will depend on last synchronization with the particular instance.. so that update history will contain only new updates from last sync..

[13:16] == mohit21 [7ab13998@gateway/web/freenode/ip.] has quit [Quit: Page closed]

[13:17] <dilantha> Sneha1: lets discuss more on the main-dev..

[13:17] <Sneha1> ok.

[13:17] <dilantha> just send the update on how you are planing to do it

[13:17] <Sneha1> sure.

[13:18] <dilantha> lets windup then

[13:19] <Sneha1> ok. i'll update maindev tonight,

[13:19] <dilantha> ok

[13:19] <guru___> triune: do u agree with that ??

[13:20] <dilantha> triune: we are done.. if there is anyone left they can continue now :-)

[13:20] <triune> guru___: makes sense

[13:20] <triune> thanks dilantha  ;)


[13:21] <triune> guru___: I still might not fully understand your design... for instance... is all the logic contained in the sync object or in the database... or in some other script that gets executed?

[13:23] <triune> I guess we've never really talked about the time/operation of the sync process, for instance: is it a cron job that runs every 5 minutes... and what this script will do when it is executed: does it instantiate a queue object that self populates with sync objects?

[13:24] <triune> if you've already thought about these aspects, please inform so I don't waste time on them ;)

[13:24] <guru___> logic will be in the scripts, but will decide based on the database..

[13:26] <triune> ok... any questions then?

[13:27] <triune> I look forward to seeing some code soon :)

[13:28] <guru___> ya for ur question about cron sync process, currently i dont have an idea.. will cron job better??

[13:31] <guru___> yes sure,  i have committed my codes but its like testing stages, will modify it and tell u..

[13:31] <triune> Do you have another idea on how to keep this running continually? You could turn it into a /etc/init.d/ script to run as a daemon

[13:31] <triune> this way it will just loop forever, perhaps sleeping for certain periods

[13:31] <guru___> ah k

[13:32] <triune> it doesn't sound like from your design you are plannng on doing push messaging to inform the other instances of changes

[13:32] <triune> so each instance will need to poll at an interval to check for updates

[13:32] <triune> cronjob and initd scripts work well for those cases

[13:35] <guru___> k

[13:36] <guru___> I think chamindra wants to talk with us, to discuss about portable app and ours..

[13:37] <triune> yah Rami keeps telling me we are going to do a Hangout, but not sure when that will be ;)

[13:38] <guru___> ah k

[13:38] <guru___> he also asks a question on mailing list, How are database schema version conflicts resolved??

[13:38] <guru___> i dont think about it..

[13:38] <guru___> how can we resolve such a prob..

[13:39] <triune> I'm not sure

[13:40] <triune> we always code those out ourselves here at NLM and have a way of managing schema changes to prevent them from happening

[13:41] <triune> the more logic you put in classes and less in the database, the better off you are when conflicts arise

[13:42] <guru___> mm..

[13:44] <triune> I guess that wraps things up? If so, I'm due for lunch :)

[13:44] <guru___> yes

[13:44] <guru___> thank you :)

[13:47] <triune> great

[13:47] <triune> until next week

[13:47] <triune> later all!

rami [not present]

QR Code
QR Code agasti:vesuvius:gsoc2013:july9irc (generated for current page)