Lines Matching refs:os

37 void SQLiteMsaDbi::initSqlSchema(U2OpStatus &os) {  in initSqlSchema()  argument
38 if (os.hasError()) { in initSqlSchema()
47 os) in initSqlSchema()
64 os) in initSqlSchema()
66 SQLiteWriteQuery("CREATE INDEX MsaRow_msa_rowId ON MsaRow(msa, rowId)", db, os).execute(); in initSqlSchema()
67 SQLiteWriteQuery("CREATE INDEX MsaRow_length ON MsaRow(length)", db, os).execute(); in initSqlSchema()
68 SQLiteWriteQuery("CREATE INDEX MsaRow_sequence ON MsaRow(sequence)", db, os).execute(); in initSqlSchema()
80 os) in initSqlSchema()
82 SQLiteWriteQuery("CREATE INDEX MsaRowGap_msa_rowId ON MsaRowGap(msa, rowId)", db, os).execute(); in initSqlSchema()
85 …aObject(const QString &folder, const QString &name, const U2AlphabetId &alphabet, U2OpStatus &os) { in createMsaObject() argument
86 return createMsaObject(folder, name, alphabet, 0, os); in createMsaObject()
89 …t QString &folder, const QString &name, const U2AlphabetId &alphabet, int length, U2OpStatus &os) { in createMsaObject() argument
90 SQLiteTransaction t(db, os); in createMsaObject()
97 dbi->getSQLiteObjectDbi()->createObject(msa, folder, U2DbiObjectRank_TopLevel, os); in createMsaObject()
98 CHECK_OP(os, U2DataId()); in createMsaObject()
101 …riteQuery q("INSERT INTO Msa(object, length, alphabet, numOfRows) VALUES(?1, ?2, ?3, ?4)", db, os); in createMsaObject()
102 CHECK_OP(os, U2DataId()); in createMsaObject()
113 void SQLiteMsaDbi::updateMsaName(const U2DataId &msaId, const QString &name, U2OpStatus &os) { in updateMsaName() argument
114 SQLiteTransaction t(db, os); in updateMsaName()
116 dbi->getSQLiteObjectDbi()->getObject(msaObj, msaId, os); in updateMsaName()
117 CHECK_OP(os, ); in updateMsaName()
119 SQLiteObjectDbiUtils::renameObject(dbi, msaObj, name, os); in updateMsaName()
122 …iteMsaDbi::updateMsaAlphabet(const U2DataId &msaId, const U2AlphabetId &alphabet, U2OpStatus &os) { in updateMsaAlphabet() argument
123 SQLiteTransaction t(db, os); in updateMsaAlphabet()
125 U2TrackModType trackMod = updateAction.prepare(os); in updateMsaAlphabet()
126 CHECK_OP(os, ); in updateMsaAlphabet()
131 U2Msa msaObj = getMsaObject(msaId, os); in updateMsaAlphabet()
132 CHECK_OP(os, ); in updateMsaAlphabet()
137 SQLiteWriteQuery q("UPDATE Msa SET alphabet = ?1 WHERE object = ?2", db, os); in updateMsaAlphabet()
138 CHECK_OP(os, ); in updateMsaAlphabet()
145 updateAction.addModification(msaId, U2ModType::msaUpdatedAlphabet, modDetails, os); in updateMsaAlphabet()
146 SAFE_POINT_OP(os, ); in updateMsaAlphabet()
148 updateAction.complete(os); in updateMsaAlphabet()
149 SAFE_POINT_OP(os, ); in updateMsaAlphabet()
152 …iteMsaDbi::createMsaRow(const U2DataId &msaId, qint64 posInMsa, U2MsaRow &msaRow, U2OpStatus &os) { in createMsaRow() argument
162 os); in createMsaRow()
163 CHECK_OP(os, ); in createMsaRow()
175 …::createMsaRowGap(const U2DataId &msaId, qint64 msaRowId, const U2MsaGap &msaGap, U2OpStatus &os) { in createMsaRowGap() argument
176 SQLiteTransaction t(db, os); in createMsaRowGap()
179 QSharedPointer<SQLiteQuery> q = t.getPreparedQuery(queryString, db, os); in createMsaRowGap()
180 CHECK_OP(os, ); in createMsaRowGap()
189 …teMsaDbi::addMsaRowAndGaps(const U2DataId &msaId, qint64 posInMsa, U2MsaRow &row, U2OpStatus &os) { in addMsaRowAndGaps() argument
190 createMsaRow(msaId, posInMsa, row, os); in addMsaRowAndGaps()
191 CHECK_OP(os, ); in addMsaRowAndGaps()
194 createMsaRowGap(msaId, row.rowId, gap, os); in addMsaRowAndGaps()
195 CHECK_OP(os, ); in addMsaRowAndGaps()
198 dbi->getSQLiteObjectDbi()->setParent(msaId, row.sequenceId, os); in addMsaRowAndGaps()
201 void SQLiteMsaDbi::addRow(const U2DataId &msaId, int insertRowIndex, U2MsaRow &row, U2OpStatus &os)… in addRow() argument
203 U2TrackModType trackMod = updateAction.prepare(os); in addRow()
204 CHECK_OP(os, ); in addRow()
206 row.rowId = getMaximumRowId(msaId, os) + 1; in addRow()
207 CHECK_OP(os, ); in addRow()
210 addRowCore(msaId, insertRowIndex, row, os); in addRow()
211 CHECK_OP(os, ); in addRow()
217 if (row.length > getMsaLength(msaId, os)) { in addRow()
218 updateMsaLength(updateAction, msaId, row.length, os); in addRow()
223 dbi->getObjectDbi()->setTrackModType(row.sequenceId, TrackOnUpdate, os); in addRow()
224 CHECK_OP(os, ); in addRow()
228 updateAction.addModification(msaId, U2ModType::msaAddedRow, modDetails, os); in addRow()
229 SAFE_POINT_OP(os, ); in addRow()
231 updateAction.complete(os); in addRow()
232 SAFE_POINT_OP(os, ); in addRow()
235 …MsaDbi::addRows(const U2DataId &msaId, QList<U2MsaRow> &rows, int insertRowIndex, U2OpStatus &os) { in addRows() argument
236 SQLiteTransaction t(db, os); in addRows()
239 U2TrackModType trackMod = updateAction.prepare(os); in addRows()
240 CHECK_OP(os, ); in addRows()
243 qint64 numOfRows = getNumOfRows(msaId, os); in addRows()
244 CHECK_OP(os, ); in addRows()
252 qint64 maxRowId = getMaximumRowId(msaId, os); in addRows()
262 addRowsCore(msaId, insertRowIndexes, rows, os); in addRows()
263 CHECK_OP(os, ); in addRows()
270 qint64 currentMsaLength = getMsaLength(msaId, os); in addRows()
272 updateMsaLength(updateAction, msaId, maxLength, os); in addRows()
273 CHECK_OP(os, ); in addRows()
279 dbi->getObjectDbi()->setTrackModType(row.sequenceId, TrackOnUpdate, os); in addRows()
280 CHECK_OP(os, ); in addRows()
285 updateAction.addModification(msaId, U2ModType::msaAddedRows, modDetails, os); in addRows()
286 SAFE_POINT_OP(os, ); in addRows()
288 updateAction.complete(os); in addRows()
289 SAFE_POINT_OP(os, ); in addRows()
292 …saDbi::updateRowName(const U2DataId &msaId, qint64 rowId, const QString &newName, U2OpStatus &os) { in updateRowName() argument
293 SQLiteTransaction t(db, os); in updateRowName()
296 updateAction.prepare(os); in updateRowName()
297 SAFE_POINT_OP(os, ); in updateRowName()
299 U2DataId sequenceId = getSequenceIdByRowId(msaId, rowId, os); in updateRowName()
300 SAFE_POINT_OP(os, ); in updateRowName()
302 U2Sequence seqObject = dbi->getSequenceDbi()->getSequenceObject(sequenceId, os); in updateRowName()
303 SAFE_POINT_OP(os, ); in updateRowName()
305 SQLiteObjectDbiUtils::renameObject(updateAction, dbi, seqObject, newName, os); in updateRowName()
306 SAFE_POINT_OP(os, ); in updateRowName()
308 updateAction.complete(os); in updateRowName()
309 SAFE_POINT_OP(os, ); in updateRowName()
312 …Id &msaId, qint64 rowId, const QByteArray &seqBytes, const QList<U2MsaGap> &gaps, U2OpStatus &os) { in updateRowContent() argument
313 SQLiteTransaction t(db, os); in updateRowContent()
316 U2TrackModType trackMod = updateAction.prepare(os); in updateRowContent()
317 SAFE_POINT_OP(os, ); in updateRowContent()
321 U2MsaRow row = getRow(msaId, rowId, os); in updateRowContent()
322 SAFE_POINT_OP(os, ); in updateRowContent()
331 os); in updateRowContent()
332 SAFE_POINT_OP(os, ); in updateRowContent()
340 updateRowInfo(updateAction, msaId, newRow, os); in updateRowContent()
341 SAFE_POINT_OP(os, ); in updateRowContent()
345 updateGapModel(updateAction, msaId, rowId, gaps, os); in updateRowContent()
346 SAFE_POINT_OP(os, ); in updateRowContent()
349 updateAction.complete(os); in updateRowContent()
350 SAFE_POINT_OP(os, ); in updateRowContent()
353 …LiteModificationAction &updateAction, const U2DataId &msaId, const U2MsaRow &row, U2OpStatus &os) { in updateRowInfo() argument
356 U2MsaRow oldRow = getRow(msaId, row.rowId, os); in updateRowInfo()
357 SAFE_POINT_OP(os, ); in updateRowInfo()
362 updateRowInfoCore(msaId, row, os); in updateRowInfo()
363 SAFE_POINT_OP(os, ); in updateRowInfo()
366 updateAction.addModification(msaId, U2ModType::msaUpdatedRowInfo, modDetails, os); in updateRowInfo()
367 SAFE_POINT_OP(os, ); in updateRowInfo()
370 QList<qint64> SQLiteMsaDbi::getOrderedRowIds(const U2DataId &msaId, U2OpStatus &os) { in getOrderedRowIds() argument
372 SQLiteReadQuery q("SELECT rowId FROM MsaRow WHERE msa = ?1 ORDER BY pos", db, os); in getOrderedRowIds()
382 U2AlphabetId SQLiteMsaDbi::getMsaAlphabet(const U2DataId &msaId, U2OpStatus &os) { in getMsaAlphabet() argument
384 SQLiteReadQuery q("SELECT alphabet FROM Msa WHERE object = ?1", db, os); in getMsaAlphabet()
389 } else if (!os.hasError()) { in getMsaAlphabet()
390 os.setError(U2DbiL10n::tr("Msa object not found")); in getMsaAlphabet()
396 …SQLiteMsaDbi::setNewRowsOrder(const U2DataId &msaId, const QList<qint64> &rowIds, U2OpStatus &os) { in setNewRowsOrder() argument
398 SQLiteTransaction t(db, os); in setNewRowsOrder()
400 U2TrackModType trackMod = updateAction.prepare(os); in setNewRowsOrder()
401 CHECK_OP(os, ); in setNewRowsOrder()
405 QList<qint64> oldOrder = getOrderedRowIds(msaId, os); in setNewRowsOrder()
406 CHECK_OP(os, ); in setNewRowsOrder()
411 qint64 numOfRows = getNumOfRows(msaId, os); in setNewRowsOrder()
412 CHECK_OP(os, ); in setNewRowsOrder()
416 setNewRowsOrderCore(msaId, rowIds, os); in setNewRowsOrder()
417 CHECK_OP(os, ); in setNewRowsOrder()
420 updateAction.addModification(msaId, U2ModType::msaSetNewRowsOrder, modDetails, os); in setNewRowsOrder()
421 SAFE_POINT_OP(os, ); in setNewRowsOrder()
423 updateAction.complete(os); in setNewRowsOrder()
424 SAFE_POINT_OP(os, ); in setNewRowsOrder()
427 void SQLiteMsaDbi::removeRecordFromMsaRow(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in removeRecordFromMsaRow() argument
428 SQLiteTransaction t(db, os); in removeRecordFromMsaRow()
430 QSharedPointer<SQLiteQuery> q = t.getPreparedQuery(queryString, db, os); in removeRecordFromMsaRow()
431 CHECK_OP(os, ); in removeRecordFromMsaRow()
438 void SQLiteMsaDbi::removeRecordsFromMsaRowGap(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in removeRecordsFromMsaRowGap() argument
439 SQLiteTransaction t(db, os); in removeRecordsFromMsaRowGap()
441 QSharedPointer<SQLiteQuery> q = t.getPreparedQuery(queryString, db, os); in removeRecordsFromMsaRowGap()
442 CHECK_OP(os, ); in removeRecordsFromMsaRowGap()
449 void SQLiteMsaDbi::removeRow(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in removeRow() argument
450 SQLiteTransaction t(db, os); in removeRow()
452 U2TrackModType trackMod = updateAction.prepare(os); in removeRow()
453 CHECK_OP(os, ); in removeRow()
457 U2MsaRow removedRow = getRow(msaId, rowId, os); in removeRow()
458 CHECK_OP(os, ); in removeRow()
459 qint64 posInMsa = getPosInMsa(msaId, rowId, os); in removeRow()
460 CHECK_OP(os, ); in removeRow()
465 removeRowCore(msaId, rowId, removeSequence, os); in removeRow()
466 CHECK_OP(os, ); in removeRow()
469 updateAction.addModification(msaId, U2ModType::msaRemovedRow, modDetails, os); in removeRow()
470 SAFE_POINT_OP(os, ); in removeRow()
472 updateAction.complete(os); in removeRow()
473 SAFE_POINT_OP(os, ); in removeRow()
476 void SQLiteMsaDbi::removeRows(const U2DataId &msaId, const QList<qint64> &rowIds, U2OpStatus &os) { in removeRows() argument
477 SQLiteTransaction t(db, os); in removeRows()
480 U2TrackModType trackMod = updateAction.prepare(os); in removeRows()
481 CHECK_OP(os, ); in removeRows()
484 int numOfRows = getNumOfRows(msaId, os); in removeRows()
489 rowIndexes << getPosInMsa(msaId, rowId, os); in removeRows()
490 CHECK_OP(os, ); in removeRows()
491 rows << getRow(msaId, rowId, os); in removeRows()
492 CHECK_OP(os, ); in removeRows()
498 removeRowsCore(msaId, rowIds, removeSequence, os); in removeRows()
501 updateMsaLength(updateAction, msaId, 0, os); in removeRows()
505 updateAction.addModification(msaId, U2ModType::msaRemovedRows, modDetails, os); in removeRows()
506 SAFE_POINT_OP(os, ); in removeRows()
508 updateAction.complete(os); in removeRows()
509 SAFE_POINT_OP(os, ); in removeRows()
512 …bi::removeMsaRowAndGaps(const U2DataId &msaId, qint64 rowId, bool removeSequence, U2OpStatus &os) { in removeMsaRowAndGaps() argument
513 U2DataId sequenceId = getSequenceIdByRowId(msaId, rowId, os); in removeMsaRowAndGaps()
514 CHECK_OP(os, ); in removeMsaRowAndGaps()
516 removeRecordsFromMsaRowGap(msaId, rowId, os); in removeMsaRowAndGaps()
517 removeRecordFromMsaRow(msaId, rowId, os); in removeMsaRowAndGaps()
519 dbi->getSQLiteObjectDbi()->removeParent(msaId, sequenceId, removeSequence, os); in removeMsaRowAndGaps()
522 void SQLiteMsaDbi::deleteRowsData(const U2DataId &msaId, U2OpStatus &os) { in deleteRowsData() argument
524 SQLiteWriteQuery deleteObjQeury(deleteObjStr, db, os); in deleteRowsData()
529 U2Msa SQLiteMsaDbi::getMsaObject(const U2DataId &msaId, U2OpStatus &os) { in getMsaObject() argument
531 dbi->getSQLiteObjectDbi()->getObject(res, msaId, os); in getMsaObject()
533 SAFE_POINT_OP(os, res); in getMsaObject()
535 SQLiteReadQuery q("SELECT length, alphabet FROM Msa WHERE object = ?1", db, os); in getMsaObject()
541 } else if (!os.hasError()) { in getMsaObject()
542 os.setError(U2DbiL10n::tr("Msa object not found!")); in getMsaObject()
547 int SQLiteMsaDbi::getNumOfRows(const U2DataId &msaId, U2OpStatus &os) { in getNumOfRows() argument
549 SQLiteReadQuery q("SELECT numOfRows FROM Msa WHERE object = ?1", db, os); in getNumOfRows()
550 CHECK_OP(os, res); in getNumOfRows()
556 } else if (!os.hasError()) { in getNumOfRows()
557 os.setError(U2DbiL10n::tr("Msa object not found!")); in getNumOfRows()
562 void SQLiteMsaDbi::recalculateRowsPositions(const U2DataId &msaId, U2OpStatus &os) { in recalculateRowsPositions() argument
563 QList<U2MsaRow> rows = getRows(msaId, os); in recalculateRowsPositions()
564 CHECK_OP(os, ); in recalculateRowsPositions()
566 SQLiteTransaction t(db, os); in recalculateRowsPositions()
567 SQLiteWriteQuery q("UPDATE MsaRow SET pos = ?1 WHERE msa = ?2 AND rowId = ?3", db, os); in recalculateRowsPositions()
568 CHECK_OP(os, ); in recalculateRowsPositions()
580 qint64 SQLiteMsaDbi::getMaximumRowId(const U2DataId &msaId, U2OpStatus &os) { in getMaximumRowId() argument
582 SQLiteReadQuery q("SELECT MAX(rowId) FROM MsaRow WHERE msa = ?1", db, os); in getMaximumRowId()
583 SAFE_POINT_OP(os, 0); in getMaximumRowId()
594 QList<U2MsaRow> SQLiteMsaDbi::getRows(const U2DataId &msaId, U2OpStatus &os) { in getRows() argument
596 … q("SELECT rowId, sequence, gstart, gend, length FROM MsaRow WHERE msa = ?1 ORDER BY pos", db, os); in getRows()
599 …("SELECT gapStart, gapEnd FROM MsaRowGap WHERE msa = ?1 AND rowId = ?2 ORDER BY gapStart", db, os); in getRows()
615 … SAFE_POINT_EXT(gap.isValid(), os.setError("An invalid gap is stored in the database"), res); in getRows()
619 SAFE_POINT_OP(os, res); in getRows()
625 U2MsaRow SQLiteMsaDbi::getRow(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in getRow() argument
627 …Query q("SELECT sequence, gstart, gend, length FROM MsaRow WHERE msa = ?1 AND rowId = ?2", db, os); in getRow()
628 SAFE_POINT_OP(os, res); in getRow()
639 } else if (!os.hasError()) { in getRow()
640 os.setError(U2DbiL10n::tr("Msa row not found!")); in getRow()
641 SAFE_POINT_OP(os, res); in getRow()
644 …("SELECT gapStart, gapEnd FROM MsaRowGap WHERE msa = ?1 AND rowId = ?2 ORDER BY gapStart", db, os); in getRow()
645 SAFE_POINT_OP(os, res); in getRow()
659 void SQLiteMsaDbi::updateNumOfRows(const U2DataId &msaId, qint64 numOfRows, U2OpStatus &os) { in updateNumOfRows() argument
660 SQLiteWriteQuery q("UPDATE Msa SET numOfRows = ?1 WHERE object = ?2", db, os); in updateNumOfRows()
661 SAFE_POINT_OP(os, ); in updateNumOfRows()
668 …GapModel(const U2DataId &msaId, qint64 msaRowId, const QList<U2MsaGap> &gapModel, U2OpStatus &os) { in updateGapModel() argument
669 SQLiteTransaction t(db, os); in updateGapModel()
672 updateAction.prepare(os); in updateGapModel()
673 SAFE_POINT_OP(os, ); in updateGapModel()
675 updateGapModel(updateAction, msaId, msaRowId, gapModel, os); in updateGapModel()
676 SAFE_POINT_OP(os, ); in updateGapModel()
678 updateAction.complete(os); in updateGapModel()
679 SAFE_POINT_OP(os, ); in updateGapModel()
682 …eAction, const U2DataId &msaId, qint64 msaRowId, const QList<U2MsaGap> &gapModel, U2OpStatus &os) { in updateGapModel() argument
685 U2MsaRow row = getRow(msaId, msaRowId, os); in updateGapModel()
686 SAFE_POINT_OP(os, ); in updateGapModel()
690 updateGapModelCore(msaId, msaRowId, gapModel, os); in updateGapModel()
691 SAFE_POINT_OP(os, ); in updateGapModel()
697 len += getRowSequenceLength(msaId, msaRowId, os); in updateGapModel()
698 SAFE_POINT_OP(os, ); in updateGapModel()
699 if (len > getMsaLength(msaId, os)) { in updateGapModel()
700 updateMsaLength(updateAction, msaId, len, os); in updateGapModel()
702 SAFE_POINT_OP(os, ); in updateGapModel()
705 updateAction.addModification(msaId, U2ModType::msaUpdatedGapModel, gapsDetails, os); in updateGapModel()
706 SAFE_POINT_OP(os, ); in updateGapModel()
709 void SQLiteMsaDbi::updateMsaLength(const U2DataId &msaId, qint64 length, U2OpStatus &os) { in updateMsaLength() argument
710 SQLiteTransaction t(db, os); in updateMsaLength()
713 updateAction.prepare(os); in updateMsaLength()
714 SAFE_POINT_OP(os, ); in updateMsaLength()
716 updateMsaLength(updateAction, msaId, length, os); in updateMsaLength()
718 updateAction.complete(os); in updateMsaLength()
719 SAFE_POINT_OP(os, ); in updateMsaLength()
722 …gth(SQLiteModificationAction &updateAction, const U2DataId &msaId, qint64 length, U2OpStatus &os) { in updateMsaLength() argument
725 qint64 oldMsaLen = getMsaLength(msaId, os); in updateMsaLength()
726 CHECK_OP(os, ); in updateMsaLength()
730 updateMsaLengthCore(msaId, length, os); in updateMsaLength()
731 SAFE_POINT_OP(os, ) in updateMsaLength()
733 updateAction.addModification(msaId, U2ModType::msaLengthChanged, modDetails, os); in updateMsaLength()
734 SAFE_POINT_OP(os, ); in updateMsaLength()
737 qint64 SQLiteMsaDbi::getMsaLength(const U2DataId &msaId, U2OpStatus &os) { in getMsaLength() argument
739 SQLiteReadQuery q("SELECT length FROM Msa WHERE object = ?1", db, os); in getMsaLength()
740 CHECK_OP(os, res); in getMsaLength()
746 } else if (!os.hasError()) { in getMsaLength()
747 os.setError(U2DbiL10n::tr("Msa object not found!")); in getMsaLength()
753 …aObject(const QString &folder, const QString &name, const U2AlphabetId &alphabet, U2OpStatus &os) { in createMcaObject() argument
754 return createMcaObject(folder, name, alphabet, 0, os); in createMcaObject()
757 …t QString &folder, const QString &name, const U2AlphabetId &alphabet, int length, U2OpStatus &os) { in createMcaObject() argument
758 SQLiteTransaction t(db, os); in createMcaObject()
766 dbi->getSQLiteObjectDbi()->createObject(mca, folder, U2DbiObjectRank_TopLevel, os); in createMcaObject()
767 CHECK_OP(os, U2DataId()); in createMcaObject()
770 …riteQuery q("INSERT INTO Msa(object, length, alphabet, numOfRows) VALUES(?1, ?2, ?3, ?4)", db, os); in createMcaObject()
771 CHECK_OP(os, U2DataId()); in createMcaObject()
792 qint64 SQLiteMsaDbi::getRowSequenceLength(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in getRowSequenceLength() argument
794 SQLiteReadQuery q("SELECT gstart, gend FROM MsaRow WHERE msa = ?1 AND rowId = ?2", db, os); in getRowSequenceLength()
795 CHECK_OP(os, res); in getRowSequenceLength()
804 } else if (!os.hasError()) { in getRowSequenceLength()
805 os.setError(U2DbiL10n::tr("Msa row not found!")); in getRowSequenceLength()
811 …iteMsaDbi::updateRowLength(const U2DataId &msaId, qint64 rowId, qint64 newLength, U2OpStatus &os) { in updateRowLength() argument
812 SQLiteWriteQuery q("UPDATE MsaRow SET length = ?1 WHERE msa = ?2 AND rowId = ?3", db, os); in updateRowLength()
813 CHECK_OP(os, ); in updateRowLength()
821 void SQLiteMsaDbi::updateMsaLengthCore(const U2DataId &msaId, qint64 length, U2OpStatus &os) { in updateMsaLengthCore() argument
822 SQLiteTransaction t(db, os); in updateMsaLengthCore()
823 SQLiteWriteQuery q("UPDATE Msa SET length = ?1 WHERE object = ?2", db, os); in updateMsaLengthCore()
824 CHECK_OP(os, ); in updateMsaLengthCore()
831 U2DataId SQLiteMsaDbi::getSequenceIdByRowId(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in getSequenceIdByRowId() argument
833 SQLiteReadQuery q("SELECT sequence FROM MsaRow WHERE msa = ?1 AND rowId = ?2", db, os); in getSequenceIdByRowId()
834 CHECK_OP(os, res); in getSequenceIdByRowId()
841 } else if (!os.hasError()) { in getSequenceIdByRowId()
842 os.setError(U2DbiL10n::tr("Msa row not found!")); in getSequenceIdByRowId()
875 qint64 SQLiteMsaDbi::getPosInMsa(const U2DataId &msaId, qint64 rowId, U2OpStatus &os) { in getPosInMsa() argument
876 SQLiteReadQuery q("SELECT pos FROM MsaRow WHERE msa = ?1 AND rowId = ?2", db, os); in getPosInMsa()
877 CHECK_OP(os, -1); in getPosInMsa()
885os.setError(QString("No row with id '%1' in msa '%2'").arg(QString::number(rowId)).arg(msaId.data(… in getPosInMsa()
889 …MsaDbi::undo(const U2DataId &msaId, qint64 modType, const QByteArray &modDetails, U2OpStatus &os) { in undo() argument
891 undoUpdateMsaAlphabet(msaId, modDetails, os); in undo()
893 undoAddRows(msaId, modDetails, os); in undo()
895 undoAddRow(msaId, modDetails, os); in undo()
897 undoRemoveRows(msaId, modDetails, os); in undo()
899 undoRemoveRow(msaId, modDetails, os); in undo()
901 undoUpdateRowInfo(msaId, modDetails, os); in undo()
903 undoUpdateGapModel(msaId, modDetails, os); in undo()
905 undoSetNewRowsOrder(msaId, modDetails, os); in undo()
907 undoMsaLengthChange(msaId, modDetails, os); in undo()
909 os.setError(QString("Unexpected modification type '%1'!").arg(QString::number(modType))); in undo()
914 …MsaDbi::redo(const U2DataId &msaId, qint64 modType, const QByteArray &modDetails, U2OpStatus &os) { in redo() argument
916 redoUpdateMsaAlphabet(msaId, modDetails, os); in redo()
918 redoAddRows(msaId, modDetails, os); in redo()
920 redoAddRow(msaId, modDetails, os); in redo()
922 redoRemoveRows(msaId, modDetails, os); in redo()
924 redoRemoveRow(msaId, modDetails, os); in redo()
926 redoUpdateRowInfo(msaId, modDetails, os); in redo()
928 redoUpdateGapModel(msaId, modDetails, os); in redo()
930 redoSetNewRowsOrder(msaId, modDetails, os); in redo()
932 redoMsaLengthChange(msaId, modDetails, os); in redo()
934 os.setError(QString("Unexpected modification type '%1'!").arg(QString::number(modType))); in redo()
942 …odelCore(const U2DataId &msaId, qint64 msaRowId, const QList<U2MsaGap> &gapModel, U2OpStatus &os) { in updateGapModelCore() argument
943 SQLiteTransaction t(db, os); in updateGapModelCore()
945 removeRecordsFromMsaRowGap(msaId, msaRowId, os); in updateGapModelCore()
946 CHECK_OP(os, ); in updateGapModelCore()
950 createMsaRowGap(msaId, msaRowId, gap, os); in updateGapModelCore()
951 CHECK_OP(os, ); in updateGapModelCore()
955 qint64 rowSequenceLength = getRowSequenceLength(msaId, msaRowId, os); in updateGapModelCore()
956 CHECK_OP(os, ); in updateGapModelCore()
959 updateRowLength(msaId, msaRowId, newRowLength, os); in updateGapModelCore()
960 CHECK_OP(os, ); in updateGapModelCore()
963 …wSubcore(const U2DataId &msaId, qint64 numOfRows, const QList<qint64> &rowsOrder, U2OpStatus &os) { in addRowSubcore() argument
965 setNewRowsOrderCore(msaId, rowsOrder, os); in addRowSubcore()
966 CHECK_OP(os, ); in addRowSubcore()
969 updateNumOfRows(msaId, numOfRows, os); in addRowSubcore()
972 …QLiteMsaDbi::addRowCore(const U2DataId &msaId, int insertRowIndex, U2MsaRow &row, U2OpStatus &os) { in addRowCore() argument
973 SQLiteTransaction t(db, os); in addRowCore()
976 qint64 numOfRows = getNumOfRows(msaId, os); in addRowCore()
977 CHECK_OP(os, ); in addRowCore()
983 orderedRowIds = getOrderedRowIds(msaId, os); in addRowCore()
984 CHECK_OP(os, ); in addRowCore()
990 addMsaRowAndGaps(msaId, insertRowIndex, row, os); in addRowCore()
991 CHECK_OP(os, ); in addRowCore()
998 addRowSubcore(msaId, numOfRows + 1, orderedRowIds, os); in addRowCore()
1001 …const U2DataId &msaId, const QList<int> &insertRowIndexes, QList<U2MsaRow> &rows, U2OpStatus &os) { in addRowsCore() argument
1002 SQLiteTransaction t(db, os); in addRowsCore()
1004 int numOfRows = getNumOfRows(msaId, os); in addRowsCore()
1005 CHECK_OP(os, ); in addRowsCore()
1007 QList<qint64> orderedRowIds = getOrderedRowIds(msaId, os); in addRowsCore()
1008 CHECK_OP(os, ); in addRowsCore()
1019 addMsaRowAndGaps(msaId, insertRowIndex, *rowIt, os); in addRowsCore()
1020 CHECK_OP(os, ); in addRowsCore()
1027 addRowSubcore(msaId, numOfRows, orderedRowIds, os); in addRowsCore()
1030 void SQLiteMsaDbi::removeRowSubcore(const U2DataId &msaId, qint64 numOfRows, U2OpStatus &os) { in removeRowSubcore() argument
1032 updateNumOfRows(msaId, numOfRows, os); in removeRowSubcore()
1033 CHECK_OP(os, ); in removeRowSubcore()
1036 recalculateRowsPositions(msaId, os); in removeRowSubcore()
1039 …teMsaDbi::removeRowCore(const U2DataId &msaId, qint64 rowId, bool removeSequence, U2OpStatus &os) { in removeRowCore() argument
1040 SQLiteTransaction t(db, os); in removeRowCore()
1042 qint64 numOfRows = getNumOfRows(msaId, os); in removeRowCore()
1043 CHECK_OP(os, ); in removeRowCore()
1047 removeMsaRowAndGaps(msaId, rowId, removeSequence, os); in removeRowCore()
1048 CHECK_OP(os, ); in removeRowCore()
1050 removeRowSubcore(msaId, numOfRows - 1, os); in removeRowCore()
1053 …RowsCore(const U2DataId &msaId, const QList<qint64> &rowIds, bool removeSequence, U2OpStatus &os) { in removeRowsCore() argument
1054 SQLiteTransaction t(db, os); in removeRowsCore()
1055 qint64 numOfRows = getNumOfRows(msaId, os); in removeRowsCore()
1056 CHECK_OP(os, ); in removeRowsCore()
1060 removeMsaRowAndGaps(msaId, rowIds[i], removeSequence, os); in removeRowsCore()
1061 CHECK_OP(os, ); in removeRowsCore()
1064 removeRowSubcore(msaId, numOfRows - rowIds.size(), os); in removeRowsCore()
1067 …iteMsaDbi::setNewRowsOrderCore(const U2DataId &msaId, const QList<qint64> rowIds, U2OpStatus &os) { in setNewRowsOrderCore() argument
1068 SQLiteTransaction t(db, os); in setNewRowsOrderCore()
1069 SQLiteWriteQuery q("UPDATE MsaRow SET pos = ?1 WHERE msa = ?2 AND rowId = ?3", db, os); in setNewRowsOrderCore()
1070 CHECK_OP(os, ); in setNewRowsOrderCore()
1082 void SQLiteMsaDbi::updateRowInfoCore(const U2DataId &msaId, const U2MsaRow &row, U2OpStatus &os) { in updateRowInfoCore() argument
1083 …q("UPDATE MsaRow SET sequence = ?1, gstart = ?2, gend = ?3 WHERE msa = ?4 AND rowId = ?5", db, os); in updateRowInfoCore()
1084 SAFE_POINT_OP(os, ); in updateRowInfoCore()
1097 …saDbi::undoUpdateMsaAlphabet(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoUpdateMsaAlphabet() argument
1102 os.setError("An error occurred during updating an alignment alphabet!"); in undoUpdateMsaAlphabet()
1107 SQLiteWriteQuery q("UPDATE Msa SET alphabet = ?1 WHERE object = ?2", db, os); in undoUpdateMsaAlphabet()
1108 CHECK_OP(os, ); in undoUpdateMsaAlphabet()
1115 …saDbi::redoUpdateMsaAlphabet(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoUpdateMsaAlphabet() argument
1120 os.setError("An error occurred during updating an alignment alphabet!"); in redoUpdateMsaAlphabet()
1125 SQLiteWriteQuery q("UPDATE Msa SET alphabet = ?1 WHERE object = ?2", db, os); in redoUpdateMsaAlphabet()
1126 CHECK_OP(os, ); in redoUpdateMsaAlphabet()
1133 void SQLiteMsaDbi::undoAddRows(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os)… in undoAddRows() argument
1138 os.setError("An error occurred during reverting adding of rows!"); in undoAddRows()
1145 removeRowsCore(msaId, rowIds, false, os); in undoAddRows()
1148 void SQLiteMsaDbi::redoAddRows(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os)… in redoAddRows() argument
1153 os.setError("An error occurred during reverting adding of rows!"); in redoAddRows()
1157 addRowsCore(msaId, rowIndexes, rows, os); in redoAddRows()
1160 void SQLiteMsaDbi::undoAddRow(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoAddRow() argument
1165 os.setError("An error occurred during reverting addition of a row!"); in undoAddRow()
1169 removeRowCore(msaId, row.rowId, false, os); in undoAddRow()
1172 void SQLiteMsaDbi::redoAddRow(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoAddRow() argument
1177 os.setError("An error occurred during addition of a row!"); in redoAddRow()
1181 addRowCore(msaId, rowIndex, row, os); in redoAddRow()
1184 …SQLiteMsaDbi::undoRemoveRows(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoRemoveRows() argument
1189 os.setError("An error occurred during reverting removing of rows!"); in undoRemoveRows()
1193 addRowsCore(msaId, rowIndexes, rows, os); in undoRemoveRows()
1196 …SQLiteMsaDbi::redoRemoveRows(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoRemoveRows() argument
1201 os.setError("An error occurred during reverting removing of rows!"); in redoRemoveRows()
1208 removeRowsCore(msaId, rowIds, false, os); in redoRemoveRows()
1211 … SQLiteMsaDbi::undoRemoveRow(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoRemoveRow() argument
1216 os.setError("An error occurred during reverting removing of a row!"); in undoRemoveRow()
1220 addRowCore(msaId, rowIndex, row, os); in undoRemoveRow()
1223 … SQLiteMsaDbi::redoRemoveRow(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoRemoveRow() argument
1228 os.setError("An error occurred during reverting removing of a row!"); in redoRemoveRow()
1232 removeRowCore(msaId, row.rowId, false, os); in redoRemoveRow()
1235 …teMsaDbi::undoUpdateGapModel(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoUpdateGapModel() argument
1241 os.setError("An error occurred during updating an alignment gaps!"); in undoUpdateGapModel()
1245 updateGapModelCore(msaId, rowId, oldGaps, os); in undoUpdateGapModel()
1248 …teMsaDbi::redoUpdateGapModel(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoUpdateGapModel() argument
1254 os.setError("An error occurred during updating an alignment gaps!"); in redoUpdateGapModel()
1258 updateGapModelCore(msaId, rowId, newGaps, os); in redoUpdateGapModel()
1261 …eMsaDbi::undoSetNewRowsOrder(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoSetNewRowsOrder() argument
1266 os.setError("An error occurred during updating an alignment row order!"); in undoSetNewRowsOrder()
1271 setNewRowsOrderCore(msaId, oldOrder, os); in undoSetNewRowsOrder()
1274 …eMsaDbi::redoSetNewRowsOrder(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoSetNewRowsOrder() argument
1279 os.setError("An error occurred during updating an alignment row order!"); in redoSetNewRowsOrder()
1283 setNewRowsOrderCore(msaId, newOrder, os); in redoSetNewRowsOrder()
1286 …iteMsaDbi::undoUpdateRowInfo(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoUpdateRowInfo() argument
1291 os.setError("An error occurred during updating a row info!"); in undoUpdateRowInfo()
1297 updateRowInfoCore(msaId, oldRow, os); in undoUpdateRowInfo()
1300 …iteMsaDbi::redoUpdateRowInfo(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoUpdateRowInfo() argument
1305 os.setError("An error occurred during updating a row info!"); in redoUpdateRowInfo()
1311 updateRowInfoCore(msaId, newRow, os); in redoUpdateRowInfo()
1314 …eMsaDbi::undoMsaLengthChange(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in undoMsaLengthChange() argument
1319 CHECK_EXT(ok, os.setError(U2DbiL10n::tr("An error occurred during updating an msa length")), ); in undoMsaLengthChange()
1321 updateMsaLengthCore(msaId, oldLen, os); in undoMsaLengthChange()
1324 …eMsaDbi::redoMsaLengthChange(const U2DataId &msaId, const QByteArray &modDetails, U2OpStatus &os) { in redoMsaLengthChange() argument
1329 CHECK_EXT(ok, os.setError(U2DbiL10n::tr("An error occurred during updating an msa length")), ); in redoMsaLengthChange()
1331 updateMsaLengthCore(msaId, newLen, os); in redoMsaLengthChange()