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

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