Code Duplication    Length = 7-8 lines in 3 locations

code/MSSQLDatabase.php 3 locations

@@ 461-467 (lines=7) @@
458
     */
459
    public function transactionStart($transactionMode = false, $sessionCharacteristics = false)
460
    {
461
        if ($this->transactionNesting > 0) {
462
            $this->transactionSavepoint('NESTEDTRANSACTION' . $this->transactionNesting);
463
        } elseif ($this->connector instanceof SQLServerConnector) {
464
            $this->connector->transactionStart();
465
        } else {
466
            $this->query('BEGIN TRANSACTION');
467
        }
468
        ++$this->transactionNesting;
469
    }
470
@@ 489-495 (lines=7) @@
486
            return false;
487
        }
488
        --$this->transactionNesting;
489
        if ($this->transactionNesting > 0) {
490
            $this->transactionRollback('NESTEDTRANSACTION' . $this->transactionNesting);
491
        } elseif ($this->connector instanceof SQLServerConnector) {
492
            $this->connector->transactionRollback();
493
        } else {
494
            $this->query('ROLLBACK TRANSACTION');
495
        }
496
        return true;
497
    }
498
@@ 506-513 (lines=8) @@
503
            return false;
504
        }
505
        --$this->transactionNesting;
506
        if ($this->transactionNesting <= 0) {
507
            $this->transactionNesting = 0;
508
            if ($this->connector instanceof SQLServerConnector) {
509
                $this->connector->transactionEnd();
510
            } else {
511
                $this->query('COMMIT TRANSACTION');
512
            }
513
        }
514
        return true;
515
    }
516