Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipse-dev] Initial User Settings document


Philippe,

Please see comments below



Philippe P Mulet/France/IBM@IBMFR
Sent by: eclipse-dev-admin@xxxxxxxxxxx

19/06/2003 06:11 AM
Please respond to eclipse-dev

       
        To:        eclipse-dev@xxxxxxxxxxx
        cc:        
        Subject:        Re: [eclipse-dev] Initial User Settings document




I share Jeff's opinion on XML values. If some value cannot be decoded, then
the client can react more appropriately (for instance surface a more
informative error : "unable to read classpath") than some generic facility.


MV>>Good point. I still don't like the single line for all preferences because of the reasons I stated in my response to Jeff. Perhaps it is enough to support preferences can span mulitple lines or live in their own file.

Modes are highly desirable. The document captures them really well.

One thing to keep in mind with sharing settings is to keep some degree of
separation of concerns. Unless some smart comparison tool is provided to
reconcile changes to shared settings, then it is better to keep them in
separate files, e.g. .classpath file and .project files are separate.
However, as you described, some generalized facility to achieve this would
be more than welcome. Our thinking was that there could be some metadata
folder inside the project tree which would be shared. This area would
encapsulate all these concerns (which could go beyond user settings).


MV>>The shared metadata folder was exactly what I was thinking of as well. I apologize for not be clearer on this point in the doc. I was also thinking that the .classpath file could be a setting that happens to live in it's own file in the metadata area.

One minor clarification. Not only Java compiler settings are stored into
the workspace metadata area by the JDT(Core) plugin. All JDT/Core tooling
options are stored in there. This includes formatter and codeassist
preferences.




                                                                                                                                               
                     Jeff                                                                                                                      
                     McAffer/Ottawa/IBM        To:       eclipse-dev@xxxxxxxxxxx                                                              
                     @IBMCA                    cc:                                                                                            
                     Sent by:                  Subject:  Re: [eclipse-dev] Initial User Settings document                                      
                     eclipse-dev-admin@                                                                                                        
                     eclipse.org                                                                                                              
                                                                                                                                               
                                                                                                                                               
                     06/19/2003 05:06                                                                                                          
                     AM                                                                                                                        
                     Please respond to                                                                                                        
                     eclipse-dev                                                                                                              
                                                                                                                                               
                                                                                                                                               





This is great capture of usecases and scenarios.  Clearly user settings is
one of those areas that looks simple but turns out to be very problematic.
I don't have much to add in the way of scenarios but do have some thoughts
on the store...

- you mention an interest using XML values to support more than primitives.
Does this imply that you expect any part of the settings mechanism to
interpret the values it manages?  To what end?  This would essentially mean
unmarshalling the objects encoded in the XML and may prove to be quite
difficult (unless you are spec'ing a marshaling DTD in which case, your
crazy! :-).  I would suggest just storing strings.  If the string happened
to be XML then whoever accesses the value can parse/unmarshal it.

- by unified settings store it is unclear if you mean that all settings
would be stored in one store or that there will be one store mechanism and
any given running Eclipse will be using several store instances for the
differently scoped settings.  I am assuming/hoping for the latter.

- It may be interesting to allows others to supply implementations for the
stores in various scopes.  In some enterprise scenarios for example,
application preferences would be stored on a central server/database.  This
may also help in controling sharing in the sense that the store for a
particular scope of setting can dictate whether or not the settings in that
scope are shared.

- Applications will have some security concerns wrt settings.  It is
unclear if you actually have to do anything.  On the one hand you could say
that the setting mechanism has security and people have to have the right
permissions etc.  On the other you can just say that it is insecure and
people who store valuable info there should encode it properly to prevent
tampering.  The former is more work for you, the latter puts the work on
the consumers.  Either way a security statement should be made.

- As an aside, OSGi (http://osgi.org) has a "user preference service" with
a relatively simple store API .  Basically a hierarchical tree of
keys/values(with primitive types I think).  As it is a service, the
implementation is not specified or implied.  You might look at it when
designing your store API.

Jeff


                                                                         
  Michael                                                                
  Valenta/Ottawa/IBM@IBMCA            To:                                
  Sent by:                    platform-core-dev@xxxxxxxxxxx,            
  eclipse-dev-admin@eclipse.o eclipse-dev@xxxxxxxxxxx                    
  rg                                  cc:                                
                                      Subject:        [eclipse-dev]      
                              Initial User Settings document            
  06/17/2003 12:06 PM                                                    
  Please respond to                                                      
  eclipse-dev                                                            
                                                                         






The initial document describing user settings problem has been posted at
the following URL:

http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/docs/online/team3.0/settings.html


The term "user settings" can mean different things to different people so
the first goal is to ensure all of the relevant scenarios are documented.
If you know of a scenario that is not covered, please let me know either by
annotating the bug report (
https://bugs.eclipse.org/bugs/show_bug.cgi?id=36965) or posting on the
platform-core-dev mailing list (I have cross-posted to eclipse-dev because
of the broad nature of the problem). Also, a first cut at defining a
solution is also included so feel free to comment on that as well.

Michael Valenta





_______________________________________________
eclipse-dev mailing list
eclipse-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/eclipse-dev


Back to the top