> > + public ObjectSet<OwnIdentity> getAllOwnIdentities() {
> > + // FIXME: Implement this, needed by FMS.
> > + throw new UnsupportedOperationException();
> > + }
>
> Oops, this is not really the way the plugin is supposed to be used.
> Explaination follows.
>
> The client is supposed to know which identity he uses. If we
> provide such feature, this is an anonymity breach. Example :
>
> I'm sharing my freenet node with someone that is on the same
> LAN (because of bandwith limitation). We can keep each other
> inserts/downloads secret by not using the public queue. If a
> client is able to ask for every own identities, I can easily
> know what are my friend's identities.
You are right.
But the function was not meant to expose all identities to the
public on the webinterface. I will provide some way of
authentication.
Instead, what I want is to be able to use instances of the
WoT-classes directly in FMS. FMS/WoT needs to be fast even
if there are 10000 identities. Therefore, we cannot use
FCP or SimpleFieldSet. It would require lots of memory
and a lot of copying stuff around.
> > + public ObjectSet<Identity> getAllIdentities() {
> > + // FIXME: Implement this, needed by FMS.
> > + throw new UnsupportedOperationException();
> > + }
> > +
> Client should not ask for every identities but only for those
> he is interrested in. IE : those that are in his context and
> that have a positive score. This is what GetIdentitiesByScore
> FCPplugin message is for :
That function was a quick-shot, I did not really think about it.
GetIdentitiesByScore is exaclty what I need. But as a direct
function call from FMS, not as FCP.
> Generally, a client should not try to store the entire WoT :
> it should ask regularily to the WoTplugin. It is less work
> for the client developper and a guarantee of using up-to-date
> informations.
I know this and I want to avoid ANY copying of data from WoT.
It will be something like that:
class FMSIdentity {
private Identity wotIdentity;
...
}