MCPcopy Create free account
hub / github.com/BaseXdb/basex / add

Method add

basex-core/src/main/java/org/basex/index/IdPreMap.java:330–355  ·  view source on GitHub ↗

Adds a record to the table and the ID index. @param i index in the table where the record should be inserted @param pre PRE value @param fid first ID value @param nid last ID value @param inc increment value @param oid original ID value

(final int i, final int pre, final int fid, final int nid,
      final int inc, final int oid)

Source from the content-addressed store, hash-verified

328 * @param oid original ID value
329 */
330 private void add(final int i, final int pre, final int fid, final int nid,
331 final int inc, final int oid) {
332 if(rows == pres.length) {
333 final int s = Array.newCapacity(rows);
334 pres = Arrays.copyOf(pres, s);
335 fids = Arrays.copyOf(fids, s);
336 nids = Arrays.copyOf(nids, s);
337 incs = Arrays.copyOf(incs, s);
338 oids = Arrays.copyOf(oids, s);
339 }
340 if(i < rows) {
341 final int destPos = i + 1;
342 final int length = rows - i;
343 Array.copy(pres, i, length, pres, destPos);
344 Array.copy(fids, i, length, fids, destPos);
345 Array.copy(nids, i, length, nids, destPos);
346 Array.copy(incs, i, length, incs, destPos);
347 Array.copy(oids, i, length, oids, destPos);
348 }
349 pres[i] = pre;
350 fids[i] = fid;
351 nids[i] = nid;
352 incs[i] = inc;
353 oids[i] = oid;
354 ++rows;
355 }
356
357 /**
358 * Removes a records from the table and the ID index.

Callers 2

insertMethod · 0.95
deleteMethod · 0.95

Calls 3

newCapacityMethod · 0.95
copyMethod · 0.95
copyOfMethod · 0.80

Tested by

no test coverage detected