+ transferred = true;\r
+ sbuffer.append(sequence.getName() + " HAS " + absStart\r
+ + " PREFIXED RESIDUES COMPARED TO " + dbSource + "\n");\r
+ //\r
+ // + " - ANY SEQUENCE FEATURES"\r
+ // + " HAVE BEEN ADJUSTED ACCORDINGLY \n");\r
+ // absStart = 0;\r
+ // create valid mapping between matching region of local sequence and\r
+ // the mapped sequence\r
+ mp = new Mapping(null, new int[]\r
+ { sequence.getStart() + absStart,\r
+ sequence.getStart() + absStart + entrySeq.length() - 1 },\r
+ new int[]\r
+ { entry.getStart(),\r
+ entry.getStart() + entrySeq.length() - 1 }, 1, 1);\r
+ updateRefFrame = false; // mapping is based on current start/end so\r
+ // don't modify start and end\r
+ }\r
+ else\r
+ {\r
+ transferred = true;\r
+ // update start and end of local sequence to place it in entry's\r
+ // reference frame.\r
+ // apply identity map map from whole of local sequence to matching\r
+ // region of database\r
+ // sequence\r
+ mp = null; // Mapping.getIdentityMap();\r
+ // new Mapping(null,\r
+ // new int[] { absStart+sequence.getStart(),\r
+ // absStart+sequence.getStart()+entrySeq.length()-1},\r
+ // new int[] { entry.getStart(), entry.getEnd() }, 1, 1);\r
+ // relocate local features for updated start\r
+ if (updateRefFrame) {\r
+ if (sequence.getSequenceFeatures() != null)\r
+ {\r
+ SequenceFeature[] sf = sequence.getSequenceFeatures();\r
+ int start = sequence.getStart();\r
+ int end = sequence.getEnd();\r
+ int startShift = 1 - absStart - start; // how much the features are\r
+ // to be shifted by\r
+ for (int sfi = 0; sfi < sf.length; sfi++)\r