Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
addService example
return
$code
."\n return \$instance;\n";
}
private
function
addServices
(
array &
$services
= null
)
: string
{
$publicServices
=
$privateServices
= '';
$definitions
=
$this
->container->
getDefinitions
(
)
;
ksort
(
$definitions
)
;
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
$definition
->
isSynthetic
(
)
)
{
$services
[
$id
]
=
$this
->
addService
(
$id
,
$definition
)
;
}
elseif
(
$definition
->
hasTag
(
$this
->hotPathTag
)
|| !
$definition
->
hasTag
(
$this
->preloadTags
[
1
]
)
)
{
$services
[
$id
]
= null;
foreach
(
$this
->
getClasses
(
$definition
,
$id
)
as
$class
)
{
$this
->preload
[
$class
]
=
$class
;
}
}
}
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
(
[
$file
,
$code
]
=
$services
[
$id
]
)
|| null !==
$file
)
{
return
sprintf
(
" %s:\n alias: %s\n%s",
$alias
,
$id
,
$deprecated
)
;
}
private
function
addServices
(
)
: string
{
if
(
!
$this
->container->
getDefinitions
(
)
)
{
return
'';
}
$code
= "services:\n";
foreach
(
$this
->container->
getDefinitions
(
)
as
$id
=>
$definition
)
{
$code
.=
$this
->
addService
(
$id
,
$definition
)
;
}
$aliases
=
$this
->container->
getAliases
(
)
;
foreach
(
$aliases
as
$alias
=>
$id
)
{
while
(
isset
(
$aliases
[
(string)
$id
]
)
)
{
$id
=
$aliases
[
(string)
$id
]
;
}
$code
.=
$this
->
addServiceAlias
(
$alias
,
$id
)
;
}
return
$code
;
}
return
$code
."\n return \$instance;\n";
}
private
function
addServices
(
array &
$services
= null
)
: string
{
$publicServices
=
$privateServices
= '';
$definitions
=
$this
->container->
getDefinitions
(
)
;
ksort
(
$definitions
)
;
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
$definition
->
isSynthetic
(
)
)
{
$services
[
$id
]
=
$this
->
addService
(
$id
,
$definition
)
;
}
elseif
(
$definition
->
hasTag
(
$this
->hotPathTag
)
|| !
$definition
->
hasTag
(
$this
->preloadTags
[
1
]
)
)
{
$services
[
$id
]
= null;
foreach
(
$this
->
getClasses
(
$definition
,
$id
)
as
$class
)
{
$this
->preload
[
$class
]
=
$class
;
}
}
}
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
(
[
$file
,
$code
]
=
$services
[
$id
]
)
|| null !==
$file
)
{
return
$code
;
}
private
function
addServices
(
array &
$services
= null
)
: string
{
$publicServices
=
$privateServices
= '';
$definitions
=
$this
->container->
getDefinitions
(
)
;
ksort
(
$definitions
)
;
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
$definition
->
isSynthetic
(
)
)
{
$services
[
$id
]
=
$this
->
addService
(
$id
,
$definition
)
;
}
else
{
$services
[
$id
]
= null;
foreach
(
$this
->
getClasses
(
$definition
)
as
$class
)
{
$this
->preload
[
$class
]
=
$class
;
}
}
}
foreach
(
$definitions
as
$id
=>
$definition
)
{
if
(
!
(
[
$file
,
$code
]
=
$services
[
$id
]
)
|| null !==
$file
)
{
$this
->
addMethodCalls
(
$definition
->
getMethodCalls
(
)
,
$service
)
;
if
(
$callable
=
$definition
->
getFactory
(
)
)
{
if
(
\
is_array
(
$callable
)
&&
[
'Closure', 'fromCallable'
]
!==
$callable
&&
$definition
->
getClass
(
)
===
$callable
[
0
]
)
{
$service
->
setAttribute
(
'constructor',
$callable
[
1
]
)
;
}
else
{
$factory
=
$this
->document->
createElement
(
'factory'
)
;
if
(
\
is_array
(
$callable
)
&&
$callable
[
0
]
instanceof Definition
)
{
$this
->
addService
(
$callable
[
0
]
, null,
$factory
)
;
$factory
->
setAttribute
(
'method',
$callable
[
1
]
)
;
}
elseif
(
\
is_array
(
$callable
)
)
{
if
(
null !==
$callable
[
0
]
)
{
$factory
->
setAttribute
(
$callable
[
0
]
instanceof Reference ? 'service' : 'class',
$callable
[
0
]
)
;
}
$factory
->
setAttribute
(
'method',
$callable
[
1
]
)
;
}
else
{
$factory
->
setAttribute
(
'function',
$callable
)
;
}
$service
->
appendChild
(
$factory
)
;
}
}
$this
->
addMethodCalls
(
$definition
->
getMethodCalls
(
)
,
$service
)
;
if
(
$callable
=
$definition
->
getFactory
(
)
)
{
if
(
\
is_array
(
$callable
)
&&
[
'Closure', 'fromCallable'
]
!==
$callable
&&
$definition
->
getClass
(
)
===
$callable
[
0
]
)
{
$service
->
setAttribute
(
'constructor',
$callable
[
1
]
)
;
}
else
{
$factory
=
$this
->document->
createElement
(
'factory'
)
;
if
(
\
is_array
(
$callable
)
&&
$callable
[
0
]
instanceof Definition
)
{
$this
->
addService
(
$callable
[
0
]
, null,
$factory
)
;
$factory
->
setAttribute
(
'method',
$callable
[
1
]
)
;
}
elseif
(
\
is_array
(
$callable
)
)
{
if
(
null !==
$callable
[
0
]
)
{
$factory
->
setAttribute
(
$callable
[
0
]
instanceof Reference ? 'service' : 'class',
$callable
[
0
]
)
;
}
$factory
->
setAttribute
(
'method',
$callable
[
1
]
)
;
}
else
{
$factory
->
setAttribute
(
'function',
$callable
)
;
}
$service
->
appendChild
(
$factory
)
;
}
}
return
sprintf
(
" %s:\n alias: %s\n%s",
$alias
,
$id
,
$deprecated
)
;
}
private
function
addServices
(
)
: string
{
if
(
!
$this
->container->
getDefinitions
(
)
)
{
return
'';
}
$code
= "services:\n";
foreach
(
$this
->container->
getDefinitions
(
)
as
$id
=>
$definition
)
{
$code
.=
$this
->
addService
(
$id
,
$definition
)
;
}
$aliases
=
$this
->container->
getAliases
(
)
;
foreach
(
$aliases
as
$alias
=>
$id
)
{
while
(
isset
(
$aliases
[
(string)
$id
]
)
)
{
$id
=
$aliases
[
(string)
$id
]
;
}
$code
.=
$this
->
addServiceAlias
(
$alias
,
$id
)
;
}
return
$code
;
}