GeoTools

News from Jun 02, 2008

June 2008
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

Jun 09, 2008
May 26, 2008

  2008/06/02
Last changed: Jun 02, 2008 14:52 by jgarnett

0) what is up
1) update headers
2) DataStoreFactory.Param for passwords

acuster: btw, jgarnett medii decided to contribute under the umbrella of Geomatys
acuster: he decided signing an aggreement was way too much work, the slacker
jgarnett: yeah I saw that on email; thanks.
jgarnett: so agenda is open for another couple minuets; what do people want to talk about today?
acuster: java 7!
***acuster has been watching google tech talks
jgarnett: (I remember some topics from the geoserver meeting being aimed at the geotools code base ...)
jgarnett: but mostly last week was build hell around these parts.
acuster: looks like the File tools are going to be great
acuster: copy/move/symlinks...
jgarnett: .. cannot find links to last weeks IRC meeting for geoserver (sigh)
acuster: shall we get this over with?
jgarnett: yep
jgarnett: 0) what is up
vheurteaux left the room.
***dwins links to last weeks GeoServer meeting log: <dwinslow> Do we need to have GeoServer generate the super-overlays itself, or is it safe to assume we can rely on GWC for creating parent documents that link the proper tiles?
dwins: http://geoserver.org/display/GEOS/2008/05/27
acuster: acuster — learning how to code 101, setting up a system for geometries
***dwins learns the difference between shift+insert and middle click
jgarnett: jgarnett - sorting out feature events (I wish Feature actually had a FeatureId rather than a string!), we are down to daily uDig 1.1 releases, and then I have my day job.
vheurteaux [n=vheurtea@85.170.87.197] entered the room.
gdavis_: gdavis: still working on WPS module and tweaking the XSD/bing stuff for WPS. With the recent xsd module name fixes I can now work on getting the gt-wps module committed (in unsupported)
jgarnett: Right the idea was to let DataStoreFactory.Param subclass for passwords; groldan did you want to grab a agenda topic for that?
groldan: right
acuster: desruisseaux---waiting for his computer to reach its breakpoint
acuster: the poor man won't leave his aging laptop
groldan has changed the topic to: 0) What's up? 1) update headers 2) DataStoreFactory.Param for passwords
groldan: done
jgarnett: okay lets get this party started....
jgarnett: 1) update headers
jgarnett: I am hoping acuster? Or someone? has good news for us in the form of a script.
acuster: not quite yet
jgarnett: (my hopes are dashed!)
acuster: we are hammering it out, cedric keeps getting more sophisticated and then chases down bugs
acuster: we're trying to keep it more broadly useable
acuster: i.e. in english
acuster: so sometime this week it should chew through metadata and referencing
acuster: I'd like to commit all these scripts /helper classes
acuster: to the svn
acuster: for example in some utility directory in build/ or some such
acuster: any objections to that?
jgarnett: sounds fine; but
acuster: e.g. the svndumpfilter scripts
jgarnett: I don't want to be too distracted getting a perfect script; ie a search and replace in eclipse followed by a manual check would also work.
jgarnett: (ie results matter, and a manual check is still needed right?)
acuster: yes
acuster: we have some more serious constraints on this end
acuster: i.e. Martin wants his name written out just exactly so
acuster: with little flowers all around it
acuster: no, seriously it should be soon
acuster: I'll post it tomorrow and you can hack it in another direction for your needs
acuster: (or at least test what works/doesn't work for you)
acuster: anything else?
desruisseaux: Jody: Search and replace doesn't work.
desruisseaux: The work to done is a little bit more complex than that.
desruisseaux: But Cédric is almost done.
wolf [i=woberghe@hoas-fe35dd00-150.dhcp.inet.fi] entered the room.
jgarnett: deruisseaux; you are correct; it only does 70% of the work.
jgarnett: or perhaps less?
acuster: we want to get warnings when wierd things are encountered
jgarnett: okay; so in terms of project planning we wanted to get done by now so we could put ourselves up for graduation at the next board meeting right?
acuster: ah, indeed
***acuster goes looking for the script as is
jgarnett: acuster++ yeah I can see how that would be good; it would save some time on the manual check ... but the idea is to do the manual check (updating the headers before the manual check is fine, but the manual check is still needed)
desruisseaux: Jody, it does less than 70% of the work. I wanted the script to take in account the dates in the (C) statements and move the copyright holders as @author when they are not already there.
jgarnett: okay for me I can just stay tuned for email; and we will miss out on graduating this month.
acuster: http://pastebin.stonekeep.com/3254
jgarnett: I would like to get the core library and plugins sorted; and then start the gradudation process.
acuster: when is the meeting?
jgarnett: I will check; or someone can ask on #osgeo channel
jgarnett: http://wiki.osgeo.org/wiki/Board_of_Directors
jgarnett: June 6th
acuster: yeah, not for this month
acuster: first day of summer was our fallback deadline
jgarnett: On a related note I am "mentor" for Deegree and they are going to finish in a couple of weeks.
acuster: poor Cameron who wanted us done in 3months
jgarnett: moving on?
jgarnett: 2) DataStoreFactory.Param
jgarnett: groldan this one is yours...
groldan: hi, take this as background http://jira.codehaus.org/browse/GEOS-1793
groldan: the thing is, we need a way to identify a datastore param that holds a password
groldan: so the configuration system can store it encrypted, not show it up on ui's as clear text, etc
groldan: and the less friction path seems to be just to add a "password" field to DataStore.Param
jgarnett: This is the same problem we have in the unsupported/process API; ie tell me some more details about this parameter so I can treat it correctly.
groldan: DataStoreFactory.Param, I mean
jgarnett: groldan can you review the approach here: http://svn.geotools.org/trunk/modules/unsupported/process/src/main/java/org/geotools/process/Parameter.java
groldan: the Map?
jgarnett: I would not mind moving this interface into wider use; and making DataStoreFactorySPI.Param extend it.
jgarnett: combo of Map + document keys
groldan: and what about 2.4.x
acuster: yeah, we should never store passwords, at least not until we have a serious security system in place
jgarnett: And what about 2.4.x? Why not add the Map there; you are breaking API so you may as well break API in a way that is method compatible with "the future" ?
groldan: jgarnett: I don't quite see why the same parameter object shall be used for the process and datastore api
jgarnett: because they are both the same design; ie
jgarnett: lets document what the keys mean when the user interface gives us them.
jgarnett: In both cases we need enough information to make "widgets" on screen to communicate with the user...
jgarnett: Note you can do what you need right now just by "handling" the text and parse and toString methods...
groldan: hmmm.. wonder about loosing cohesion too
groldan: and would you be doing this on 2.4.x too?
jgarnett: DataStoreFactorySpi.Param.text is human readable? DataStoreFactorySpi.Param.parse( text ) converts it to the internal representation. This is what we did for geoserver to "prevent" the need for extra flags describing what the data was for...
groldan: I don't want to do one thiing on the branch and another on trunk
jgarnett: so you have a choice right?
groldan: so you're suggesting parse(text) and text() to take the responsibility of encrypting and decrypting?
jgarnett: a) use parse, text, toString methods (ie stick with the current plan for geoserver)
jgarnett: b) add a field isPassword?
jgarnett: c) add a Map allowing isPassword, isHidden, isASmallFish etc...
jgarnett: you can review if (a) works for you ...
groldan: I don't think they text() and parse() should do so, will we put pluggable cryptography algorithms on it?
jgarnett: if not (given a choice between (b) and (c) ) I ask you to consider (c) in order to match what we are doing for WPS
sfarber left the room.
jgarnett: note you probably want to "encrypt" username and password; so you are not talking a single isPassword flag right?
groldan: hmmm you're increasing the scope of this
groldan: Param already has a lot of fields, most of the time with defaults
groldan: if we go with c)
jgarnett: I am sick of people saying that I am trying to explore your problem with you ... trying to see a solution that will last us more than a couple minuets ...
groldan: where you put that Param class? un org.geotools.util?
jgarnett: I have had that feedback a couple times now; I don't mind that we are all on deadlines ... but really?
groldan: I understand Jody, I'm wondering if c) is good enough though
jgarnett: groldan you are right; we don't know if (c) is good enough
jgarnett: we did do a bunch of experiments for WPS on this topic
jgarnett: tried out java beans etc...
jgarnett: but to proof is in the pudding and WPS has not shipped yet.
groldan: for example, then we'll have to configure community schema related datastores, which have a lot more configuration than Param can handle
jgarnett: Where is DataAccess.Param now? Can we take it out as a seperate class called Parameter?
groldan: I need something that works both for trunk and 2.4.x
jgarnett: good question ...
jgarnett: For community schema one of your parameters is going to be an rather interesting complete object (say DataMappings) I would hope? But I doubt you will be able to reduce it to a single String anymore. Ie parse and text methods would also fail you?
groldan: exactly
groldan: right now there's a single param poiting to a mappings file
groldan: that could well keep being like this
groldan: or people may start needing more flexibility (you tried java beans already, for example)
jgarnett: so how does this solution not work on 2.4.x? Take DataStoreFactory.Param and rather than (b) add a boolean isCredential field choose (c) add a filed metadata of type Map
groldan: as said last week on the geoserver meeting, I could either go for an extra boolean field or for a metadata Map
groldan: inside DataAccessFactory.Param
jgarnett: note if you add them as methods; isPassword() and isUser() you can be forward compatible with a Map metadata solution.
jgarnett: okay so you will write up a proposal on this then Gabriel?
groldan: and that's all the flexibility I need
groldan: does it need a proposal?
jgarnett: and we can talk about this without wasting IRC time...
jgarnett: it is an API change; with intergration concerns for WPS work
jgarnett: basically we want to reuse any and all user interface code we make based on parameter / conneciton handling.
jgarnett: so you are exposed to a lot of requirements; so proposal all the way..
groldan: I'm really hesitant of spending two more weeks on deciding this
groldan: to be honest
groldan: but ok
jgarnett: so decide; and write up a proposal so we can approve it?
jgarnett: it is not like you can just patch this gabriel; it is an API change .
groldan: understood, really
jgarnett: but I agree if this takes two weeks to decide we are doing it wrong; I am sorry you did not have a proposal for todays meeting (I thought you were on it after last weeks geoserver meeting?)
rraffin [n=RomainRa@lns-bzn-51f-62-147-196-37.adsl.proxad.net] entered the room.
groldan: me too, apologies about that, too much grief with arcsde
rraffin left the room ("$> wall ciao").
jgarnett: yeah; me 2
jgarnett: that is it for agenda topics ... shall we end early?
groldan: ok for me
jgarnett: I will post the logs...

Posted at 02 Jun @ 2:52 PM by jgarnett | 0 comments