Re: [OpenMap Users] Question about Data/Functional Flow of Properties to PropertyConsumers and some Possible Configuration Issues

From: Don Dietrick <dietrick_at_bbn.com>
Date: Thu, 14 Apr 2005 10:26:23 -0400

Hi Erich,

The automatic mechanism for delivering properties to PropertyConsumers
starts with the ComponentFactory object
(com.bbn.openmap.util.ComponentFactory). Some of the method signatures
for the ComponentFactory take a property prefix and a Properties
object, and after the ComponentFactory creates a new Object, it checks
to see if it's a PropertyConsumer - and passes it the provided prefix
and Properties if it is.

In the default OpenMap application and, therefore, in the
BasicMapPanel, the PropertyHandler is the component that reads/looks
for/parses an openmap.properties file, parses the openmap.components
property list and calls the ComponentFactory to create objects from
that list.

PropertyConsumers will be provided their properties in the
setProperties(...) method right after they are created by the
ComponentFactory but before they are added to the MapHandler.

So, with that in mind...

On Apr 14, 2005, at 9:50 AM, Klaus, Erich P. wrote:

> Hello Everyone,
>
> Can anyone briefly explain the data flow of how proerties are
> delivered to PropertyConsumers
> and what the carriers/function/data flows are - and - any gotchas?

Only that this happens automatically when the PropertyHandler is used
to read the openmap.components property. If you are doing things
programmatically in your code, you might have to manage the properties
yourself.

> If I create a descenedent of JDialog and implement PropertyConsumer -
> will I always get properties
> delivered from my properties file? - Or should I also implement other
> Interfaces as well?

It depends on when the JDialog is created and by what.

> Is there a master properties file that contains all properties read
> from the properties files?

The PropertyHandler would have those properties. Again, this is for
the default use of the BasicMapPanel, as demonstrated by the default
OpenMap application.

> How about the following example:
>
> in my properties file i assign the following:
>
> myCustomDialog.prettyName=My Custom Dialog
> myCustomDialog.notUsedOrAssignedYet01=foo
> myCustomDialog.notUsedOrAssignedYet02=boo
> myCustomDialog.notUsedOrAssignedYet02=soo
>
> If I manipulate prettyName via getProperties and setProperties I
> assume I will receive those property values;
> but what about if i don't currently reference notUsedOrAssignedYet01
> in my getProperties and setProperties;
> will it still be deliverered as a property to myCustomDialog?

All of the properties are delivered, it's up to the PropertyConsumer to
find them and use them if it wants.

> I'm trying to get a better understanding of how the properties work
> and are delivered.
>
> PS: If i instantiate some objects via the API inside my code but want
> them at least partially configured from settings
> in the properties file, I guess I should have some related
> PropertyConsumer object that receives these settings and
> distributes them on the fly to instantiated objects - does this sound
> reasonable?

Yes.

Hope this helps,

- Don

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Don Dietrick, dietrick_at_bbn.com
BBN Technologies, Cambridge, MA
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

--
[To unsubscribe to this list send an email to "majdart_at_bbn.com"
with the following text in the BODY of the message "unsubscribe openmap-users"]
Received on Thu Apr 14 2005 - 10:26:49 EDT

This archive was generated by hypermail 2.3.0 : Tue Mar 28 2017 - 23:25:06 EDT