Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
R
restable
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
CI / CD
CI / CD
Pipelines
Schedules
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
terranet
restable
Commits
11d365ea
Commit
11d365ea
authored
Mar 05, 2015
by
endi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add Fractal decorator
parent
ef4f5312
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
5 deletions
+16
-5
FractalDecorator.php
src/FractalDecorator.php
+13
-4
RestableServiceProvider.php
src/RestableServiceProvider.php
+3
-1
No files found.
src/FractalDecorator.php
View file @
11d365ea
<?php
namespace
Terranet\Restable
;
use
Fractal
;
use
Illuminate\Contracts\Routing\ResponseFactory
;
use
Illuminate\Support\MessageBag
;
use
Illuminate\Contracts\Support\MessageProvider
AS
MessageProviderInterface
;
use
Illuminate\Support\Facades\Response
as
LaravelResponse
;
use
League\Fractal\Manager
;
use
League\Fractal\Resource\Collection
;
use
League\Fractal\Resource\Item
;
use
Terranet\Restable\Contracts\SelfRendered
;
...
...
@@ -16,10 +16,19 @@ class FractalDecorator implements SelfRendered
* @var SelfRendered
*/
private
$selfRendered
;
/**
* @var Manager
*/
private
$fractalManager
;
public
function
__construct
(
SelfRendered
$selfRendered
)
/**
* @param SelfRendered $selfRendered
* @param Manager $fractalManager
*/
public
function
__construct
(
SelfRendered
$selfRendered
,
Manager
$fractalManager
)
{
$this
->
selfRendered
=
$selfRendered
;
$this
->
fractalManager
=
$fractalManager
;
}
/**
...
...
@@ -85,7 +94,7 @@ class FractalDecorator implements SelfRendered
*/
protected
function
fractalItem
(
$object
,
$transformer
)
{
return
Fractal
::
createData
(
new
Item
(
$object
,
$transformer
));
return
$this
->
fractalManager
->
createData
(
new
Item
(
$object
,
$transformer
));
}
/**
...
...
@@ -95,7 +104,7 @@ class FractalDecorator implements SelfRendered
*/
protected
function
fractalCollection
(
$collection
,
$transformer
)
{
return
Fractal
::
createData
(
new
Collection
(
$collection
,
$transformer
));
return
$this
->
fractalManager
->
createData
(
new
Collection
(
$collection
,
$transformer
));
}
/**
...
...
src/RestableServiceProvider.php
View file @
11d365ea
...
...
@@ -2,6 +2,7 @@
use
Illuminate\Support\ServiceProvider
;
use
Illuminate\Routing\ResponseFactory
;
use
League\Fractal\Manager
AS
FractalManager
;
class
RestableServiceProvider
extends
ServiceProvider
{
...
...
@@ -45,7 +46,8 @@ class RestableServiceProvider extends ServiceProvider
$converter
=
new
Format
;
return
new
FractalDecorator
(
new
SelfRenderedAdapter
(
new
Restable
(
$app
[
'config'
],
$response
,
$converter
))
new
SelfRenderedAdapter
(
new
Restable
(
$app
[
'config'
],
$response
,
$converter
)),
new
FractalManager
);
});
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment