1.1 --- a/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreeindex/StringInfo.java Tue Nov 12 15:07:57 2002 +0000
1.2 +++ b/mdr/src/org/netbeans/mdr/persistence/btreeimpl/btreeindex/StringInfo.java Tue Nov 12 15:09:14 2002 +0000
1.3 @@ -74,16 +74,20 @@
1.4 StringBuffer sb = new StringBuffer(length);
1.5 do {
1.6 int b = buffer[offset++] & 0xff;
1.7 + length--;
1.8 if (b >= 0xe0) {
1.9 b = (b & 0x0f) << 12;
1.10 b |= (buffer[offset++] & 0x3f) << 6;
1.11 b |= buffer[offset++] & 0x3f;
1.12 + length--;
1.13 + length--;
1.14 } else if (b >= 0xc0) {
1.15 b = (b & 0x1f) << 6;
1.16 b |= buffer[offset++] & 0x3f;
1.17 + length--;
1.18 }
1.19 sb.append((char)b);
1.20 - } while (--length > 0);
1.21 + } while (length > 0);
1.22 return new String(sb);
1.23 }
1.24
2.1 --- a/mdr/src/org/netbeans/mdr/persistence/memoryimpl/MultivaluedIndexImpl.java Tue Nov 12 15:07:57 2002 +0000
2.2 +++ b/mdr/src/org/netbeans/mdr/persistence/memoryimpl/MultivaluedIndexImpl.java Tue Nov 12 15:09:14 2002 +0000
2.3 @@ -119,7 +119,11 @@
2.4 }
2.5
2.6 public synchronized java.util.Collection getObjects(Object key, SinglevaluedIndex s) throws StorageException {
2.7 - return new MOWrapper((List) getItems(key), s);
2.8 + if (keyType == Storage.EntryType.MOFID) {
2.9 + return new MOWrapper((List) getItems(key), s);
2.10 + } else {
2.11 + return getItems(key);
2.12 + }
2.13 }
2.14
2.15 /** Removes the first occurrence of the specified element in the list
2.16 @@ -185,7 +189,7 @@
2.17 Iterator iter = entries.keySet().iterator ();
2.18 while (iter.hasNext ()) {
2.19 String key = (String) iter.next ();
2.20 - if (key.equals (prefix)) {
2.21 + if (key.startsWith ((String) prefix)) {
2.22 result.add (new MapEntryImpl (key, getObjects (key, primaryIndex)));
2.23 }
2.24 }
3.1 --- a/mdr/src/org/netbeans/mdr/persistence/memoryimpl/SinglevaluedIndexImpl.java Tue Nov 12 15:07:57 2002 +0000
3.2 +++ b/mdr/src/org/netbeans/mdr/persistence/memoryimpl/SinglevaluedIndexImpl.java Tue Nov 12 15:09:14 2002 +0000
3.3 @@ -175,8 +175,12 @@
3.4 * @throws StorageException
3.5 */
3.6 public synchronized Object getObject (Object key, SinglevaluedIndex repos) throws StorageException {
3.7 - synchronized (repos) {
3.8 - return repos.get(get(key));
3.9 + if (keyType == Storage.EntryType.MOFID) {
3.10 + synchronized (repos) {
3.11 + return repos.get(get(key));
3.12 + }
3.13 + } else {
3.14 + return get(key);
3.15 }
3.16 }
3.17
3.18 @@ -201,8 +205,12 @@
3.19 if (val == null) {
3.20 return null;
3.21 } else {
3.22 - synchronized (repos) {
3.23 - return repos.get(val);
3.24 + if (keyType == Storage.EntryType.MOFID) {
3.25 + synchronized (repos) {
3.26 + return repos.get(val);
3.27 + }
3.28 + } else {
3.29 + return val;
3.30 }
3.31 }
3.32 }
3.33 @@ -267,8 +275,8 @@
3.34 Iterator iter = table.keySet().iterator ();
3.35 while (iter.hasNext ()) {
3.36 String key = (String) iter.next ();
3.37 - if (key.equals (prefix)) {
3.38 - result. add (new MapEntryImpl (key, getObject (key, primaryIndex)));
3.39 + if (key.startsWith ((String) prefix)) {
3.40 + result.add (new MapEntryImpl (key, getObject (key, primaryIndex)));
3.41 }
3.42 }
3.43 return result;
4.1 --- a/mdr/src/org/netbeans/mdr/storagemodel/transientimpl/TransientMultivaluedIndex.java Tue Nov 12 15:07:57 2002 +0000
4.2 +++ b/mdr/src/org/netbeans/mdr/storagemodel/transientimpl/TransientMultivaluedIndex.java Tue Nov 12 15:09:14 2002 +0000
4.3 @@ -448,7 +448,7 @@
4.4 Iterator iter = keySet().iterator ();
4.5 while (iter.hasNext ()) {
4.6 String key = (String) iter.next ();
4.7 - if (key.equals (prefix)) {
4.8 + if (key.startsWith ((String) prefix)) {
4.9 result.add (new MapEntryImpl (key, getObjects (key, primaryIndex)));
4.10 }
4.11 }
5.1 --- a/mdr/src/org/netbeans/mdr/storagemodel/transientimpl/TransientSinglevaluedIndex.java Tue Nov 12 15:07:57 2002 +0000
5.2 +++ b/mdr/src/org/netbeans/mdr/storagemodel/transientimpl/TransientSinglevaluedIndex.java Tue Nov 12 15:09:14 2002 +0000
5.3 @@ -357,7 +357,7 @@
5.4 Iterator iter = keySet().iterator ();
5.5 while (iter.hasNext ()) {
5.6 String key = (String) iter.next ();
5.7 - if (key.equals (prefix)) {
5.8 + if (key.startsWith ((String) prefix)) {
5.9 result.add (new MapEntryImpl (key, getObject (key, primaryIndex)));
5.10 }
5.11 }