Code Duplication    Length = 29-29 lines in 3 locations

src/DoctrineMongoServiceProvider.php 1 location

@@ 50-78 (lines=29) @@
47
     *
48
     * @return callable
49
     */
50
    private function getMongoDbsOptionsInitializerDefinition(Container $container): callable
51
    {
52
        return $container->protect(function () use ($container) {
53
            static $initialized = false;
54
55
            if ($initialized) {
56
                return;
57
            }
58
59
            $initialized = true;
60
61
            if (!isset($container['doctrine.mongo.dbs.options'])) {
62
                $container['doctrine.mongo.dbs.options'] = [
63
                    'default' => isset($container['doctrine.mongo.db.options']) ? $container['doctrine.mongo.db.options'] : [],
64
                ];
65
            }
66
67
            $tmp = $container['doctrine.mongo.dbs.options'];
68
            foreach ($tmp as $name => &$options) {
69
                $options = array_replace_recursive($container['doctrine.mongo.db.default_options'], $options);
70
71
                if (!isset($container['doctrine.mongo.dbs.default'])) {
72
                    $container['doctrine.mongo.dbs.default'] = $name;
73
                }
74
            }
75
76
            $container['doctrine.mongo.dbs.options'] = $tmp;
77
        });
78
    }
79
80
    /**
81
     * @param Container $container

src/DoctrineOrmServiceProvider.php 1 location

@@ 91-119 (lines=29) @@
88
     *
89
     * @return callable
90
     */
91
    private function getOrmEmsOptionsInitializerDefinition(Container $container): callable
92
    {
93
        return $container->protect(function () use ($container) {
94
            static $initialized = false;
95
96
            if ($initialized) {
97
                return;
98
            }
99
100
            $initialized = true;
101
102
            if (!isset($container['doctrine.orm.ems.options'])) {
103
                $container['doctrine.orm.ems.options'] = [
104
                    'default' => isset($container['doctrine.orm.em.options']) ? $container['doctrine.orm.em.options'] : [],
105
                ];
106
            }
107
108
            $tmp = $container['doctrine.orm.ems.options'];
109
            foreach ($tmp as $name => &$options) {
110
                $options = array_replace($container['doctrine.orm.em.default_options'], $options);
111
112
                if (!isset($container['doctrine.orm.ems.default'])) {
113
                    $container['doctrine.orm.ems.default'] = $name;
114
                }
115
            }
116
117
            $container['doctrine.orm.ems.options'] = $tmp;
118
        });
119
    }
120
121
    /**
122
     * @param Container $container

src/DoctrineDbalServiceProvider.php 1 location

@@ 61-89 (lines=29) @@
58
     *
59
     * @return callable
60
     */
61
    private function getDbsOptionsInitializerDefinition(Container $container): callable
62
    {
63
        return $container->protect(function () use ($container) {
64
            static $initialized = false;
65
66
            if ($initialized) {
67
                return;
68
            }
69
70
            $initialized = true;
71
72
            if (!isset($container['doctrine.dbal.dbs.options'])) {
73
                $container['doctrine.dbal.dbs.options'] = [
74
                    'default' => $container['doctrine.dbal.db.options'] ?? [],
75
                ];
76
            }
77
78
            $tmp = $container['doctrine.dbal.dbs.options'];
79
            foreach ($tmp as $name => &$options) {
80
                $options = array_replace_recursive($container['doctrine.dbal.db.default_options'], $options);
81
82
                if (!isset($container['doctrine.dbal.dbs.default'])) {
83
                    $container['doctrine.dbal.dbs.default'] = $name;
84
                }
85
            }
86
87
            $container['doctrine.dbal.dbs.options'] = $tmp;
88
        });
89
    }
90
91
    /**
92
     * @param Container $container