- //me.setWritesmerged(true);
-
- /*} else if (prefix) {
- data_to_insert = new Byte[(int) (to_be_merged_data_range.getStart() - start + size)];
- System.arraycopy(prefixdata, 0, data_to_insert, 0, (int) (to_be_merged_data_range.getStart() - start));
- System.arraycopy(by, 0, data_to_insert, (int) (to_be_merged_data_range.getStart() - start), size);
- to_be_merged_data_range.setStart(start);
- } else if (suffix) {
- data_to_insert = new Byte[(int) (to_be_merged_data_range.getEnd() - end + size)];
- System.arraycopy(by, 0, data_to_insert, 0, size);
- System.arraycopy(suffixdata, suffixstart, data_to_insert, size, (int) (end - to_be_merged_data_range.getEnd()));
- to_be_merged_data_range.setEnd(end);
- } else {
- data_to_insert = new Byte[size];
- System.arraycopy(data_to_insert, (int) (to_be_merged_data_range.getStart() - start), by, 0, size);
- }*/
- //target.put(to_be_merged_data_range, data_to_insert);
-
-/*
- if (flag) {
- int datasize = (int) (oldwriterange.getEnd() - oldwriterange.getStart());
- Byte[] original = (Byte[]) (wrp.getData());
- byte[] originaldata = new byte[datasize];
-
- //for (int i = 0; i < data.length; i++) {
- // originaldata[i] = original[i].byteValue();
- // }
- System.arraycopy(data, 0, originaldata, (int) (to_be_merged_data_range.getStart() - oldwriterange.getStart()), size);
- Byte[] to_be_inserted = new Byte[datasize];
-
- for (int i = 0; i < datasize; i++) {
- to_be_inserted[i] = Byte.valueOf(originaldata[i]);
- }
- target.put(oldwriterange, to_be_inserted);
- return;
-
- } else if (counter == 0) {
- target.put(to_be_merged_data_range, data);
- return;
-
- } else {
-
- int suffixstart = 0;
- long start = 0;
- long end = 0;
- Byte[] prefixdata = null;
- Byte[] suffixdata = null;
- boolean prefix = false;
- boolean suffix = false;
-
- for (int i = 0; i < counter; i++) {
- if (markedwriteranges[i].getStart() < to_be_merged_data_range.getStart()) {
- prefixdata = new Byte[(int) (to_be_merged_data_range.getStart() - markedwriteranges[i].getStart())];
- prefixdata = (Byte[]) (target.get(markedwriteranges[i]));
- start = markedwriteranges[i].getStart();
- //newdata = new Byte[size + newwriterange.getStart() - markedwriteranges[i].getStart()];
- //System.arraycopy(by, 0, newdata, newwriterange.getStart() - markedwriteranges[i].getStart(), size);
- //System.arraycopy(originaldata, 0, newdata, 0, newwriterange.getStart() - markedwriteranges[i].getStart());
-
- //newwriterange.setStart(markedwriteranges[i].getStart());
- prefix = true;
-
-
- } else if (markedwriteranges[i].getEnd() > to_be_merged_data_range.getEnd()) {
-
- suffixdata = new Byte[(int) (markedwriteranges[i].getStart() - to_be_merged_data_range.getStart())];
- suffixdata = (Byte[]) (target.get(markedwriteranges[i]));
- end = markedwriteranges[i].getEnd();
-
- //Byte [] originaldata = (Byte [])(tmp.getWrittendata().get(markedwriteranges[i]));
- //newdata = new Byte[size + newwriterange.getStart() - markedwriteranges[i].getStart()];
- //System.arraycopy(originaldata, 0, newdata, 0, newwriterange.getStart() - markedwriteranges[i].getStart());
-
- //newwriterange.setStart(markedwriteranges[i].getStart());
- ///newwriterange.setEnd(markedwriteranges[i].getEnd());
- suffix = true;
- suffixstart = (int) (intersectedrange[i].getEnd() - intersectedrange[i].getStart());
- //tm.remove(markedwriteranges[i]);
- }
- target.remove(markedwriteranges[i]);
-
- }
- Byte[] data_to_insert;
-
- if ((prefix) && (suffix)) {
- data_to_insert = new Byte[(int) (to_be_merged_data_range.getStart() - start + size - to_be_merged_data_range.getEnd() + end)];
- System.arraycopy(prefixdata, 0, data_to_insert, 0, (int) (to_be_merged_data_range.getStart() - start));
- System.arraycopy(by, 0, data_to_insert, (int) (to_be_merged_data_range.getStart() - start), size);
- System.arraycopy(suffixdata, suffixstart, data_to_insert, (int) (size + to_be_merged_data_range.getStart() - start), (int) (end - to_be_merged_data_range.getEnd()));
- to_be_merged_data_range.setStart(start);
- to_be_merged_data_range.setEnd(end);
- } else if (prefix) {
- data_to_insert = new Byte[(int) (to_be_merged_data_range.getStart() - start + size)];
- System.arraycopy(prefixdata, 0, data_to_insert, 0, (int) (to_be_merged_data_range.getStart() - start));
- System.arraycopy(by, 0, data_to_insert, (int) (to_be_merged_data_range.getStart() - start), size);
- to_be_merged_data_range.setStart(start);
- } else if (suffix) {
- data_to_insert = new Byte[(int) (to_be_merged_data_range.getEnd() - end + size)];
- System.arraycopy(by, 0, data_to_insert, 0, size);
- System.arraycopy(suffixdata, suffixstart, data_to_insert, size, (int) (end - to_be_merged_data_range.getEnd()));
- to_be_merged_data_range.setEnd(end);
- } else {
- data_to_insert = new Byte[size];
- System.arraycopy(data_to_insert, (int) (to_be_merged_data_range.getStart() - start), by, 0, size);
- }
- target.put(to_be_merged_data_range, data_to_insert);
- return;
- }*/
-