On Sat, Sep 6, 2008 at 7:26 AM, Matthew Toseland
<toad at amphibian.dyndns.org> wrote:
> Querying by a ByteArrayWrapper works for you? Really?

It works. But it never use index.

>
> On Thursday 04 September 2008 15:38, batosai at freenetproject.org wrote:
>> Author: batosai
>> Date: 2008-09-04 14:38:32 +0000 (Thu, 04 Sep 2008)
>> New Revision: 22409
>>
>> Modified:
>>    trunk/apps/WoT/src/plugins/WoT/Identity.java
>>    trunk/apps/WoT/src/plugins/WoT/OwnIdentity.java
>> Log:
>> Switched to ByteArrayWrapper as suggested by Nextgens.
>>
>> Modified: trunk/apps/WoT/src/plugins/WoT/Identity.java
>> ===================================================================
>> --- trunk/apps/WoT/src/plugins/WoT/Identity.java      2008-09-04 14:23:27 UTC
> (rev 22408)
>> +++ trunk/apps/WoT/src/plugins/WoT/Identity.java      2008-09-04 14:38:32 UTC
> (rev 22409)
>> @@ -17,6 +17,7 @@
>>  import com.db4o.query.Query;
>>
>>  import freenet.keys.FreenetURI;
>> +import freenet.support.ByteArrayWrapper;
>>
>>  /**
>>   * An identity as handled by the WoT (a USK)
>> @@ -27,7 +28,7 @@
>>  public class Identity {
>>
>>       @SuppressWarnings("unused")
>> -     private String id;
>> +     private ByteArrayWrapper id;
>>       private FreenetURI requestURI;
>>
>>       private Date lastChange;
>> @@ -45,10 +46,7 @@
>>               props = new HashMap<String, String>();
>>               contexts = new ArrayList<String>();
>>               contexts.add(context);
>> -
>> -             int start = getRequestURI().toString().indexOf(',');
>> -             int end = getRequestURI().toString().indexOf(',', start + 1);
>> -             id = getRequestURI().toString().substring(start, end);
>> +             id = new ByteArrayWrapper(getRequestURI().getRoutingKey());
>>       }
>>
>>       public Identity (String requestURI, String nickName, String
> publishTrustList, String context) throws InvalidParameterException,
> MalformedURLException {
>> @@ -58,7 +56,7 @@
>>
>>
>>       @SuppressWarnings("unchecked")
>> -     public static Identity getById (ObjectContainer db, String id) throws
> DuplicateIdentityException, UnknownIdentityException {
>> +     public static Identity getById (ObjectContainer db, ByteArrayWrapper 
>> id)
> throws DuplicateIdentityException, UnknownIdentityException {
>>
>>               Query query = db.query();
>>               query.constrain(Identity.class);
>> @@ -70,15 +68,12 @@
>>               return result.next();
>>       }
>>
>> -     public static Identity getByURI (ObjectContainer db, String uri) throws
> UnknownIdentityException, DuplicateIdentityException {
>> -             int start = uri.indexOf(',');
>> -             int end = uri.indexOf(',', start + 1);
>> -
>> -             return getById(db, uri.substring(start,end));
>> +     public static Identity getByURI (ObjectContainer db, String uri) throws
> UnknownIdentityException, DuplicateIdentityException, MalformedURLException {
>> +             return getByURI(db, new FreenetURI(uri));
>>       }
>>
>>       public static Identity getByURI (ObjectContainer db, FreenetURI uri)
> throws UnknownIdentityException, DuplicateIdentityException {
>> -             return getByURI(db, uri.toString());
>> +             return getById(db, new ByteArrayWrapper(uri.getRoutingKey()));
>>       }
>>
>>
>>
>> Modified: trunk/apps/WoT/src/plugins/WoT/OwnIdentity.java
>> ===================================================================
>> --- trunk/apps/WoT/src/plugins/WoT/OwnIdentity.java   2008-09-04 14:23:27 UTC
> (rev 22408)
>> +++ trunk/apps/WoT/src/plugins/WoT/OwnIdentity.java   2008-09-04 14:38:32 UTC
> (rev 22409)
>> @@ -36,6 +36,7 @@
>>  import com.db4o.query.Query;
>>
>>  import freenet.keys.FreenetURI;
>> +import freenet.support.ByteArrayWrapper;
>>
>>  /**
>>   * A local Identity (it belongs to the user)
>> @@ -60,7 +61,7 @@
>>
>>
>>       @SuppressWarnings("unchecked")
>> -     public static OwnIdentity getById (ObjectContainer db, String id) 
>> throws
> UnknownIdentityException, DuplicateIdentityException {
>> +     public static OwnIdentity getById (ObjectContainer db, ByteArrayWrapper
> id) throws UnknownIdentityException, DuplicateIdentityException {
>>               Query query = db.query();
>>               query.constrain(OwnIdentity.class);
>>               query.descend("id").constrain(id);
>> @@ -71,16 +72,12 @@
>>               return result.next();
>>       }
>>
>> -     public static OwnIdentity getByURI (ObjectContainer db, String uri) 
>> throws
> UnknownIdentityException, DuplicateIdentityException {
>> -             int start = uri.indexOf(',');
>> -             int end = uri.indexOf(',', start + 1);
>> -
>> -             return getById(db, uri.substring(start,end));
>> -
>> +     public static OwnIdentity getByURI (ObjectContainer db, String uri) 
>> throws
> UnknownIdentityException, DuplicateIdentityException, MalformedURLException {
>> +             return getByURI(db, new FreenetURI(uri));
>>       }
>>
>>       public static OwnIdentity getByURI (ObjectContainer db, FreenetURI uri)
> throws UnknownIdentityException, DuplicateIdentityException {
>> -             return getByURI(db, uri.toString());
>> +             return getById(db, new ByteArrayWrapper(uri.getRoutingKey()));
>>       }
>>
>>
>>
>> _______________________________________________
>> cvs mailing list
>> cvs at freenetproject.org
>> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
>>
>>
>
> _______________________________________________
> Devl mailing list
> Devl at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
>

Reply via email to