Re: Comments about the proposed new MM D-Bus API



> > 1) Regarding frequency/band management:
> >  * There is now AllowedBands and SupportedBands properties in the API,
> > but no GetBand() or SetBand(). So really seems the only way to set
> > specific bands is through writing the AllowedBands property. I don't
> > think its a good idea, as we really want proper error reporting when
> > trying to set bands: device may not allow to reset bands while connected
> > for example, or the specified band mask may not be supported by the
> 
> Yeah, that's a good point.  There might also be ways of working about
> dbus-glib/GObject properties here and returning an error anyway; but in
> the end I don't mind explicit getters/settings in addition to
> properties.

Don't think there is a way of doing that in plain GObjects, property
setting is never meant to fail, AFAIK; so probably not a good idea to
mix all this. I would rather go either one way (silently ignoring errors
on setting property) or the other (property setting allowed only through
a specific SetBand() with error reporting), not both (for the setters at
least).

Note that this issue also applies to AllowedMode, which is also a
readwrite property.

We could just follow the same reasoning as used for the 'State' property
here. You would never make that property readwrite, as you want to
change the State value with specific methods which provide error
reporting: Enable, Reset... (not saying that error reporting is the only
reason why there are specific Enable or Reset methods, just trying to
build an example). We could have both AllowedMode and AllowedBands
read-only properties, and have specific SetAllowedMode() and
SetAllowedBands() methods which provide GError reporting.

Cheers,

-- 
Aleksander



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]