@@ -87,7 +87,7 @@ Entry get(long key) {
87
87
long index = getIndex (key );
88
88
89
89
while (true ) {
90
- long mapKey = getID (index );
90
+ long mapKey = getID (index , 0 );
91
91
92
92
if (mapKey == key ) {
93
93
return createEntry (index );
@@ -105,9 +105,9 @@ Entry put(long key, long value) {
105
105
long index = getIndex (key );
106
106
107
107
while (true ) {
108
- long mapKey = getID (index );
108
+ long mapKey = getID (index , 0 );
109
109
if (mapKey == 0L ) {
110
- putID (index , key );
110
+ putID (index , 0 , key );
111
111
return createEntry (index ,value );
112
112
} else if (mapKey == key ) {
113
113
return createEntry (index );
@@ -135,33 +135,33 @@ static Data getDumpBuffer(File f, RandomAccessFile file, int entrySize) throws I
135
135
}
136
136
}
137
137
138
- long getID (long index ) {
138
+ long getID (long base , int offset ) {
139
139
if (ID_SIZE == 4 ) {
140
- return ((long )dumpBuffer .getInt (index )) & 0xFFFFFFFFL ;
140
+ return ((long )dumpBuffer .getInt (base , offset )) & 0xFFFFFFFFL ;
141
141
}
142
- return dumpBuffer .getLong (index );
142
+ return dumpBuffer .getLong (base , offset );
143
143
}
144
144
145
- void putID (long index ,long key ) {
145
+ void putID (long base , int offset ,long key ) {
146
146
if (ID_SIZE == 4 ) {
147
- dumpBuffer .putInt (index ,(int )key );
147
+ dumpBuffer .putInt (base , offset ,(int )key );
148
148
} else {
149
- dumpBuffer .putLong (index , key );
149
+ dumpBuffer .putLong (base , offset , key );
150
150
}
151
151
}
152
152
153
- long getFoffset (long index ) {
153
+ long getFoffset (long base , int offset ) {
154
154
if (FOFFSET_SIZE == 4 ) {
155
- return dumpBuffer .getInt (index );
155
+ return dumpBuffer .getInt (base , offset );
156
156
}
157
- return dumpBuffer .getLong (index );
157
+ return dumpBuffer .getLong (base , offset );
158
158
}
159
159
160
- void putFoffset (long index ,long key ) {
160
+ void putFoffset (long base , int offset ,long key ) {
161
161
if (FOFFSET_SIZE == 4 ) {
162
- dumpBuffer .putInt (index , (int )key );
162
+ dumpBuffer .putInt (base , offset , (int )key );
163
163
} else {
164
- dumpBuffer .putLong (index , key );
164
+ dumpBuffer .putLong (base , offset , key );
165
165
}
166
166
}
167
167
@@ -231,17 +231,17 @@ static Data readFromStream(DataInputStream dis, CacheDirectory cacheDir, int ent
231
231
}
232
232
}
233
233
234
- byte getByte (long index );
234
+ byte getByte (long base , int offset );
235
235
236
- int getInt (long index );
236
+ int getInt (long base , int offset );
237
237
238
- long getLong (long index );
238
+ long getLong (long base , int offset );
239
239
240
- void putByte (long index , byte data );
240
+ void putByte (long base , int offset , byte data );
241
241
242
- void putInt (long index , int data );
242
+ void putInt (long base , int offset , int data );
243
243
244
- void putLong (long index , long data );
244
+ void putLong (long base , int offset , long data );
245
245
246
246
void force () throws IOException ;
247
247
@@ -293,13 +293,13 @@ private static class FileData extends AbstractData {
293
293
294
294
//~ Methods --------------------------------------------------------------------------------------------------------------
295
295
296
- public synchronized byte getByte (long index ) {
297
- int i = loadBufferIfNeeded (index );
296
+ public synchronized byte getByte (long base , int offset ) {
297
+ int i = loadBufferIfNeeded (base + offset );
298
298
return buf [i ];
299
299
}
300
300
301
- public synchronized int getInt (long index ) {
302
- int i = loadBufferIfNeeded (index );
301
+ public synchronized int getInt (long base , int offset ) {
302
+ int i = loadBufferIfNeeded (base + offset );
303
303
int ch1 = ((int ) buf [i ++]) & 0xFF ;
304
304
int ch2 = ((int ) buf [i ++]) & 0xFF ;
305
305
int ch3 = ((int ) buf [i ++]) & 0xFF ;
@@ -308,8 +308,8 @@ public synchronized int getInt(long index) {
308
308
return ((ch1 << 24 ) + (ch2 << 16 ) + (ch3 << 8 ) + (ch4 << 0 ));
309
309
}
310
310
311
- public synchronized long getLong (long index ) {
312
- int i = loadBufferIfNeeded (index );
311
+ public synchronized long getLong (long base , int offset ) {
312
+ int i = loadBufferIfNeeded (base + offset );
313
313
return (((long )buf [i ++] << 56 ) +
314
314
((long )(buf [i ++] & 255 ) << 48 ) +
315
315
((long )(buf [i ++] & 255 ) << 40 ) +
@@ -320,23 +320,23 @@ public synchronized long getLong(long index) {
320
320
((buf [i ++] & 255 ) << 0 ));
321
321
}
322
322
323
- public synchronized void putByte (long index , byte data ) {
324
- int i = loadBufferIfNeeded (index );
323
+ public synchronized void putByte (long base , int offset , byte data ) {
324
+ int i = loadBufferIfNeeded (base + offset );
325
325
buf [i ] = data ;
326
326
bufferModified = true ;
327
327
}
328
328
329
- public synchronized void putInt (long index , int data ) {
330
- int i = loadBufferIfNeeded (index );
329
+ public synchronized void putInt (long base , int offset , int data ) {
330
+ int i = loadBufferIfNeeded (base + offset );
331
331
buf [i ++] = (byte ) (data >>> 24 );
332
332
buf [i ++] = (byte ) (data >>> 16 );
333
333
buf [i ++] = (byte ) (data >>> 8 );
334
334
buf [i ++] = (byte ) (data >>> 0 );
335
335
bufferModified = true ;
336
336
}
337
337
338
- public synchronized void putLong (long index , long data ) {
339
- int i = loadBufferIfNeeded (index );
338
+ public synchronized void putLong (long base , int offset , long data ) {
339
+ int i = loadBufferIfNeeded (base + offset );
340
340
buf [i ++] = (byte ) (data >>> 56 );
341
341
buf [i ++] = (byte ) (data >>> 48 );
342
342
buf [i ++] = (byte ) (data >>> 40 );
@@ -408,28 +408,28 @@ private static class MemoryMappedData extends AbstractData {
408
408
409
409
//~ Methods --------------------------------------------------------------------------------------------------------------
410
410
411
- public byte getByte (long index ) {
412
- return buf .get ((int ) index );
411
+ public byte getByte (long base , int offset ) {
412
+ return buf .get ((int ) base + offset );
413
413
}
414
414
415
- public int getInt (long index ) {
416
- return buf .getInt ((int ) index );
415
+ public int getInt (long base , int offset ) {
416
+ return buf .getInt ((int ) base + offset );
417
417
}
418
418
419
- public long getLong (long index ) {
420
- return buf .getLong ((int ) index );
419
+ public long getLong (long base , int offset ) {
420
+ return buf .getLong ((int ) base + offset );
421
421
}
422
422
423
- public void putByte (long index , byte data ) {
424
- buf .put ((int ) index , data );
423
+ public void putByte (long base , int offset , byte data ) {
424
+ buf .put ((int ) base + offset , data );
425
425
}
426
426
427
- public void putInt (long index , int data ) {
428
- buf .putInt ((int ) index , data );
427
+ public void putInt (long base , int offset , int data ) {
428
+ buf .putInt ((int ) base + offset , data );
429
429
}
430
430
431
- public void putLong (long index , long data ) {
432
- buf .putLong ((int ) index , data );
431
+ public void putLong (long base , int offset , long data ) {
432
+ buf .putLong ((int ) base + offset , data );
433
433
}
434
434
435
435
@ Override
@@ -489,28 +489,28 @@ private static class LongMemoryMappedData extends AbstractData {
489
489
490
490
//~ Methods --------------------------------------------------------------------------------------------------------------
491
491
492
- public byte getByte (long index ) {
493
- return dumpBuffer [getBufferIndex (index )].get (getBufferOffset (index ) );
492
+ public byte getByte (long base , int offset ) {
493
+ return dumpBuffer [getBufferIndex (base )].get (getBufferOffset (base )+ offset );
494
494
}
495
495
496
- public int getInt (long index ) {
497
- return dumpBuffer [getBufferIndex (index )].getInt (getBufferOffset (index ) );
496
+ public int getInt (long base , int offset ) {
497
+ return dumpBuffer [getBufferIndex (base )].getInt (getBufferOffset (base )+ offset );
498
498
}
499
499
500
- public long getLong (long index ) {
501
- return dumpBuffer [getBufferIndex (index )].getLong (getBufferOffset (index ) );
500
+ public long getLong (long base , int offset ) {
501
+ return dumpBuffer [getBufferIndex (base )].getLong (getBufferOffset (base )+ offset );
502
502
}
503
503
504
- public void putByte (long index , byte data ) {
505
- dumpBuffer [getBufferIndex (index )].put (getBufferOffset (index ) ,data );
504
+ public void putByte (long base , int offset , byte data ) {
505
+ dumpBuffer [getBufferIndex (base )].put (getBufferOffset (base )+ offset ,data );
506
506
}
507
507
508
- public void putInt (long index , int data ) {
509
- dumpBuffer [getBufferIndex (index )].putInt (getBufferOffset (index ) ,data );
508
+ public void putInt (long base , int offset , int data ) {
509
+ dumpBuffer [getBufferIndex (base )].putInt (getBufferOffset (base )+ offset ,data );
510
510
}
511
511
512
- public void putLong (long index , long data ) {
513
- dumpBuffer [getBufferIndex (index )].putLong (getBufferOffset (index ) ,data );
512
+ public void putLong (long base , int offset , long data ) {
513
+ dumpBuffer [getBufferIndex (base )].putLong (getBufferOffset (base )+ offset ,data );
514
514
}
515
515
516
516
private int getBufferIndex (long index ) {
0 commit comments