[Bug 28915] MC does not save "old-ssl" flag

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Aug 9 19:51:15 CEST 2010


https://bugs.freedesktop.org/show_bug.cgi?id=28915

--- Comment #5 from Simon McVittie <simon.mcvittie at collabora.co.uk> 2010-08-09 10:51:14 PDT ---
(In reply to comment #4)
> > Could this usefully be a method on the McdPluginAccountManager, or even a
> > non-virtual convenience method on the McpAccountManager GInterface? That would
> > break the circular dependency between McdAccountManager and McdAccount.
> 
> At the moment, the account manager is the thing that wrangles the storage
> plugins and makes sure they're called in the right order and so forth:
> Since the storage plugins don't know about each other, they can't (currently)
> handle things where a decision needs to be made about who gets the account
> setting, (or the account), it has to be the AM for now.

The McdPluginAccountManager (which is the implementation of McpAccountManager)
isn't a plugin; it's the thing in src/ that plugins see when they think they're
talking to the account manager. As such, it could reasonably know about the
plugins.

An example of breaking a similar cycle: we used to have:

    McdDispatcher
    ... owns several McdDispatcherContext instances
    ... which each have a pointer back to the McdDispatcher

but by splitting some of the McdDispatcher functionality away into smaller
classes, we now have:

    McdDispatcher
    ... owns several McdDispatchOperation instances
    .... which each have a pointer to the McdHandlerMap and McdClientRegistry

The AccountManager could reasonably be split into:

    D-Bus AccountManager (McdAccountManager
    ... owns some Account instances
    ... which each point to McdAccountStorageThing [1]

Historically, the closest equivalent to [1] is the big GKeyFile that everyone
shares :-)

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.



More information about the telepathy-bugs mailing list