Code Duplication    Length = 14-20 lines in 2 locations

lib/Doctrine/DBAL/Platforms/OraclePlatform.php 1 location

@@ 733-752 (lines=20) @@
730
    /**
731
     * {@inheritdoc}
732
     */
733
    public function getForeignKeyReferentialActionSQL($action)
734
    {
735
        $action = strtoupper($action);
736
737
        switch ($action) {
738
            case 'RESTRICT': // RESTRICT is not supported, therefore falling back to NO ACTION.
739
            case 'NO ACTION':
740
                // NO ACTION cannot be declared explicitly,
741
                // therefore returning empty string to indicate to OMIT the referential clause.
742
                return '';
743
744
            case 'CASCADE':
745
            case 'SET NULL':
746
                return $action;
747
748
            default:
749
                // SET DEFAULT is not supported, throw exception instead.
750
                throw new \InvalidArgumentException('Invalid foreign key action: ' . $action);
751
        }
752
    }
753
754
    /**
755
     * {@inheritDoc}

lib/Doctrine/DBAL/Platforms/AbstractPlatform.php 1 location

@@ 2494-2507 (lines=14) @@
2491
     *
2492
     * @throws \InvalidArgumentException if unknown referential action given
2493
     */
2494
    public function getForeignKeyReferentialActionSQL($action)
2495
    {
2496
        $upper = strtoupper($action);
2497
        switch ($upper) {
2498
            case 'CASCADE':
2499
            case 'SET NULL':
2500
            case 'NO ACTION':
2501
            case 'RESTRICT':
2502
            case 'SET DEFAULT':
2503
                return $upper;
2504
            default:
2505
                throw new \InvalidArgumentException('Invalid foreign key action: ' . $upper);
2506
        }
2507
    }
2508
2509
    /**
2510
     * Obtains DBMS specific SQL code portion needed to set the FOREIGN KEY constraint