Skip to content

Commit ad23808

Browse files
Removed bundle namespaces from di component section
1 parent ff548b2 commit ad23808

File tree

2 files changed

+48
-95
lines changed

2 files changed

+48
-95
lines changed

components/dependency_injection/factories.rst

Lines changed: 18 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ the object.
1212
Suppose you have a factory that configures and returns a new NewsletterManager
1313
object::
1414

15-
namespace Acme\HelloBundle\Newsletter;
16-
1715
class NewsletterFactory
1816
{
1917
public function get()
@@ -34,11 +32,10 @@ class:
3432

3533
.. code-block:: yaml
3634
37-
# src/Acme/HelloBundle/Resources/config/services.yml
3835
parameters:
3936
# ...
40-
newsletter_manager.class: Acme\HelloBundle\Newsletter\NewsletterManager
41-
newsletter_factory.class: Acme\HelloBundle\Newsletter\NewsletterFactory
37+
newsletter_manager.class: NewsletterManager
38+
newsletter_factory.class: NewsletterFactory
4239
services:
4340
newsletter_manager:
4441
class: %newsletter_manager.class%
@@ -47,11 +44,10 @@ class:
4744
4845
.. code-block:: xml
4946
50-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
5147
<parameters>
5248
<!-- ... -->
53-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Newsletter\NewsletterManager</parameter>
54-
<parameter key="newsletter_factory.class">Acme\HelloBundle\Newsletter\NewsletterFactory</parameter>
49+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
50+
<parameter key="newsletter_factory.class">NewsletterFactory</parameter>
5551
</parameters>
5652
5753
<services>
@@ -64,12 +60,11 @@ class:
6460
6561
.. code-block:: php
6662
67-
// src/Acme/HelloBundle/Resources/config/services.php
6863
use Symfony\Component\DependencyInjection\Definition;
6964
7065
// ...
71-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Newsletter\NewsletterManager');
72-
$container->setParameter('newsletter_factory.class', 'Acme\HelloBundle\Newsletter\NewsletterFactory');
66+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
67+
$container->setParameter('newsletter_factory.class', 'NewsletterFactory');
7368
7469
$container->setDefinition('newsletter_manager', new Definition(
7570
'%newsletter_manager.class%'
@@ -88,11 +83,10 @@ factory itself as a service:
8883

8984
.. code-block:: yaml
9085
91-
# src/Acme/HelloBundle/Resources/config/services.yml
9286
parameters:
9387
# ...
94-
newsletter_manager.class: Acme\HelloBundle\Newsletter\NewsletterManager
95-
newsletter_factory.class: Acme\HelloBundle\Newsletter\NewsletterFactory
88+
newsletter_manager.class: NewsletterManager
89+
newsletter_factory.class: NewsletterFactory
9690
services:
9791
newsletter_factory:
9892
class: %newsletter_factory.class%
@@ -103,11 +97,10 @@ factory itself as a service:
10397
10498
.. code-block:: xml
10599
106-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
107100
<parameters>
108101
<!-- ... -->
109-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Newsletter\NewsletterManager</parameter>
110-
<parameter key="newsletter_factory.class">Acme\HelloBundle\Newsletter\NewsletterFactory</parameter>
102+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
103+
<parameter key="newsletter_factory.class">NewsletterFactory</parameter>
111104
</parameters>
112105
113106
<services>
@@ -121,12 +114,11 @@ factory itself as a service:
121114
122115
.. code-block:: php
123116
124-
// src/Acme/HelloBundle/Resources/config/services.php
125117
use Symfony\Component\DependencyInjection\Definition;
126118
127119
// ...
128-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Newsletter\NewsletterManager');
129-
$container->setParameter('newsletter_factory.class', 'Acme\HelloBundle\Newsletter\NewsletterFactory');
120+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
121+
$container->setParameter('newsletter_factory.class', 'NewsletterFactory');
130122
131123
$container->setDefinition('newsletter_factory', new Definition(
132124
'%newsletter_factory.class%'
@@ -155,11 +147,10 @@ in the previous example takes the ``templating`` service as an argument:
155147

156148
.. code-block:: yaml
157149
158-
# src/Acme/HelloBundle/Resources/config/services.yml
159150
parameters:
160151
# ...
161-
newsletter_manager.class: Acme\HelloBundle\Newsletter\NewsletterManager
162-
newsletter_factory.class: Acme\HelloBundle\Newsletter\NewsletterFactory
152+
newsletter_manager.class: NewsletterManager
153+
newsletter_factory.class: NewsletterFactory
163154
services:
164155
newsletter_factory:
165156
class: %newsletter_factory.class%
@@ -172,11 +163,10 @@ in the previous example takes the ``templating`` service as an argument:
172163
173164
.. code-block:: xml
174165
175-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
176166
<parameters>
177167
<!-- ... -->
178-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Newsletter\NewsletterManager</parameter>
179-
<parameter key="newsletter_factory.class">Acme\HelloBundle\Newsletter\NewsletterFactory</parameter>
168+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
169+
<parameter key="newsletter_factory.class">NewsletterFactory</parameter>
180170
</parameters>
181171
182172
<services>
@@ -192,12 +182,11 @@ in the previous example takes the ``templating`` service as an argument:
192182
193183
.. code-block:: php
194184
195-
// src/Acme/HelloBundle/Resources/config/services.php
196185
use Symfony\Component\DependencyInjection\Definition;
197186
198187
// ...
199-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Newsletter\NewsletterManager');
200-
$container->setParameter('newsletter_factory.class', 'Acme\HelloBundle\Newsletter\NewsletterFactory');
188+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
189+
$container->setParameter('newsletter_factory.class', 'NewsletterFactory');
201190
202191
$container->setDefinition('newsletter_factory', new Definition(
203192
'%newsletter_factory.class%'

components/dependency_injection/parentservices.rst

Lines changed: 30 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,6 @@ As you add more functionality to your application, you may well start to have
55
related classes that share some of the same dependencies. For example you
66
may have a Newsletter Manager which uses setter injection to set its dependencies::
77

8-
namespace Acme\HelloBundle\Mail;
9-
10-
use Acme\HelloBundle\Mailer;
11-
use Acme\HelloBundle\EmailFormatter;
12-
138
class NewsletterManager
149
{
1510
protected $mailer;
@@ -29,11 +24,6 @@ may have a Newsletter Manager which uses setter injection to set its dependencie
2924

3025
and also a Greeting Card class which shares the same dependencies::
3126

32-
namespace Acme\HelloBundle\Mail;
33-
34-
use Acme\HelloBundle\Mailer;
35-
use Acme\HelloBundle\EmailFormatter;
36-
3727
class GreetingCardManager
3828
{
3929
protected $mailer;
@@ -57,11 +47,10 @@ The service config for these classes would look something like this:
5747

5848
.. code-block:: yaml
5949
60-
# src/Acme/HelloBundle/Resources/config/services.yml
6150
parameters:
6251
# ...
63-
newsletter_manager.class: Acme\HelloBundle\Mail\NewsletterManager
64-
greeting_card_manager.class: Acme\HelloBundle\Mail\GreetingCardManager
52+
newsletter_manager.class: NewsletterManager
53+
greeting_card_manager.class: GreetingCardManager
6554
services:
6655
my_mailer:
6756
# ...
@@ -81,11 +70,10 @@ The service config for these classes would look something like this:
8170
8271
.. code-block:: xml
8372
84-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
8573
<parameters>
8674
<!-- ... -->
87-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Mail\NewsletterManager</parameter>
88-
<parameter key="greeting_card_manager.class">Acme\HelloBundle\Mail\GreetingCardManager</parameter>
75+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
76+
<parameter key="greeting_card_manager.class">GreetingCardManager</parameter>
8977
</parameters>
9078
9179
<services>
@@ -115,13 +103,12 @@ The service config for these classes would look something like this:
115103
116104
.. code-block:: php
117105
118-
// src/Acme/HelloBundle/Resources/config/services.php
119106
use Symfony\Component\DependencyInjection\Definition;
120107
use Symfony\Component\DependencyInjection\Reference;
121108
122109
// ...
123-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Mail\NewsletterManager');
124-
$container->setParameter('greeting_card_manager.class', 'Acme\HelloBundle\Mail\GreetingCardManager');
110+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
111+
$container->setParameter('greeting_card_manager.class', 'GreetingCardManager');
125112
126113
$container->setDefinition('my_mailer', ... );
127114
$container->setDefinition('my_email_formatter', ... );
@@ -147,11 +134,6 @@ in two places. Likewise if you needed to make changes to the setter methods
147134
you would need to do this in both classes. The typical way to deal with the
148135
common methods of these related classes would be to extract them to a super class::
149136

150-
namespace Acme\HelloBundle\Mail;
151-
152-
use Acme\HelloBundle\Mailer;
153-
use Acme\HelloBundle\EmailFormatter;
154-
155137
abstract class MailManager
156138
{
157139
protected $mailer;
@@ -172,17 +154,13 @@ common methods of these related classes would be to extract them to a super clas
172154
The ``NewsletterManager`` and ``GreetingCardManager`` can then extend this
173155
super class::
174156

175-
namespace Acme\HelloBundle\Mail;
176-
177157
class NewsletterManager extends MailManager
178158
{
179159
// ...
180160
}
181161

182162
and::
183163

184-
namespace Acme\HelloBundle\Mail;
185-
186164
class GreetingCardManager extends MailManager
187165
{
188166
// ...
@@ -196,12 +174,11 @@ a parent for a service.
196174

197175
.. code-block:: yaml
198176
199-
# src/Acme/HelloBundle/Resources/config/services.yml
200177
parameters:
201178
# ...
202-
newsletter_manager.class: Acme\HelloBundle\Mail\NewsletterManager
203-
greeting_card_manager.class: Acme\HelloBundle\Mail\GreetingCardManager
204-
mail_manager.class: Acme\HelloBundle\Mail\MailManager
179+
newsletter_manager.class: NewsletterManager
180+
greeting_card_manager.class: GreetingCardManager
181+
mail_manager.class: MailManager
205182
services:
206183
my_mailer:
207184
# ...
@@ -224,12 +201,11 @@ a parent for a service.
224201
225202
.. code-block:: xml
226203
227-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
228204
<parameters>
229205
<!-- ... -->
230-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Mail\NewsletterManager</parameter>
231-
<parameter key="greeting_card_manager.class">Acme\HelloBundle\Mail\GreetingCardManager</parameter>
232-
<parameter key="mail_manager.class">Acme\HelloBundle\Mail\MailManager</parameter>
206+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
207+
<parameter key="greeting_card_manager.class">GreetingCardManager</parameter>
208+
<parameter key="mail_manager.class">MailManager</parameter>
233209
</parameters>
234210
235211
<services>
@@ -253,14 +229,13 @@ a parent for a service.
253229
254230
.. code-block:: php
255231
256-
// src/Acme/HelloBundle/Resources/config/services.php
257232
use Symfony\Component\DependencyInjection\Definition;
258233
use Symfony\Component\DependencyInjection\Reference;
259234
260235
// ...
261-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Mail\NewsletterManager');
262-
$container->setParameter('greeting_card_manager.class', 'Acme\HelloBundle\Mail\GreetingCardManager');
263-
$container->setParameter('mail_manager.class', 'Acme\HelloBundle\Mail\MailManager');
236+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
237+
$container->setParameter('greeting_card_manager.class', 'GreetingCardManager');
238+
$container->setParameter('mail_manager.class', 'MailManager');
264239
265240
$container->setDefinition('my_mailer', ... );
266241
$container->setDefinition('my_email_formatter', ... );
@@ -316,12 +291,11 @@ to the ``NewsletterManager`` class, the config would look like this:
316291

317292
.. code-block:: yaml
318293
319-
# src/Acme/HelloBundle/Resources/config/services.yml
320294
parameters:
321295
# ...
322-
newsletter_manager.class: Acme\HelloBundle\Mail\NewsletterManager
323-
greeting_card_manager.class: Acme\HelloBundle\Mail\GreetingCardManager
324-
mail_manager.class: Acme\HelloBundle\Mail\MailManager
296+
newsletter_manager.class: NewsletterManager
297+
greeting_card_manager.class: GreetingCardManager
298+
mail_manager.class: MailManager
325299
services:
326300
my_mailer:
327301
# ...
@@ -348,12 +322,11 @@ to the ``NewsletterManager`` class, the config would look like this:
348322
349323
.. code-block:: xml
350324
351-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
352325
<parameters>
353326
<!-- ... -->
354-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Mail\NewsletterManager</parameter>
355-
<parameter key="greeting_card_manager.class">Acme\HelloBundle\Mail\GreetingCardManager</parameter>
356-
<parameter key="mail_manager.class">Acme\HelloBundle\Mail\MailManager</parameter>
327+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
328+
<parameter key="greeting_card_manager.class">GreetingCardManager</parameter>
329+
<parameter key="mail_manager.class">MailManager</parameter>
357330
</parameters>
358331
359332
<services>
@@ -384,14 +357,13 @@ to the ``NewsletterManager`` class, the config would look like this:
384357
385358
.. code-block:: php
386359
387-
// src/Acme/HelloBundle/Resources/config/services.php
388360
use Symfony\Component\DependencyInjection\Definition;
389361
use Symfony\Component\DependencyInjection\Reference;
390362
391363
// ...
392-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Mail\NewsletterManager');
393-
$container->setParameter('greeting_card_manager.class', 'Acme\HelloBundle\Mail\GreetingCardManager');
394-
$container->setParameter('mail_manager.class', 'Acme\HelloBundle\Mail\MailManager');
364+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
365+
$container->setParameter('greeting_card_manager.class', 'GreetingCardManager');
366+
$container->setParameter('mail_manager.class', 'MailManager');
395367
396368
$container->setDefinition('my_mailer', ... );
397369
$container->setDefinition('my_alternative_mailer', ... );
@@ -435,11 +407,6 @@ method call involves adding something to a collection, then two objects will
435407
be added to that collection. The following shows such a case, if the parent
436408
class looks like this::
437409

438-
namespace Acme\HelloBundle\Mail;
439-
440-
use Acme\HelloBundle\Mailer;
441-
use Acme\HelloBundle\EmailFormatter;
442-
443410
abstract class MailManager
444411
{
445412
protected $filters;
@@ -457,11 +424,10 @@ If you had the following config:
457424

458425
.. code-block:: yaml
459426
460-
# src/Acme/HelloBundle/Resources/config/services.yml
461427
parameters:
462428
# ...
463-
newsletter_manager.class: Acme\HelloBundle\Mail\NewsletterManager
464-
mail_manager.class: Acme\HelloBundle\Mail\MailManager
429+
newsletter_manager.class: NewsletterManager
430+
mail_manager.class: MailManager
465431
services:
466432
my_filter:
467433
# ...
@@ -481,11 +447,10 @@ If you had the following config:
481447
482448
.. code-block:: xml
483449
484-
<!-- src/Acme/HelloBundle/Resources/config/services.xml -->
485450
<parameters>
486451
<!-- ... -->
487-
<parameter key="newsletter_manager.class">Acme\HelloBundle\Mail\NewsletterManager</parameter>
488-
<parameter key="mail_manager.class">Acme\HelloBundle\Mail\MailManager</parameter>
452+
<parameter key="newsletter_manager.class">NewsletterManager</parameter>
453+
<parameter key="mail_manager.class">MailManager</parameter>
489454
</parameters>
490455
491456
<services>
@@ -509,13 +474,12 @@ If you had the following config:
509474
510475
.. code-block:: php
511476
512-
// src/Acme/HelloBundle/Resources/config/services.php
513477
use Symfony\Component\DependencyInjection\Definition;
514478
use Symfony\Component\DependencyInjection\Reference;
515479
516480
// ...
517-
$container->setParameter('newsletter_manager.class', 'Acme\HelloBundle\Mail\NewsletterManager');
518-
$container->setParameter('mail_manager.class', 'Acme\HelloBundle\Mail\MailManager');
481+
$container->setParameter('newsletter_manager.class', 'NewsletterManager');
482+
$container->setParameter('mail_manager.class', 'MailManager');
519483
520484
$container->setDefinition('my_filter', ... );
521485
$container->setDefinition('another_filter', ... );

0 commit comments

Comments
 (0)