作者:keek
项目:aut
protected function found(Request $request, Found $payload)
{
$serializer = new AuthSessionSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:keek
项目:aut
protected function success(Request $request, Success $payload)
{
$serializer = new AuthSessionSerializer();
$resource = new Resource($payload->get('session'), $serializer);
$document = new Document($resource);
return new JsonResponse($document->toArray(), 201);
}
作者:clop
项目:cor
/**
* @param Exception $e
* @return JsonApiResponse
*/
public function handle(Exception $e)
{
$response = $this->errorHandler->handle($e);
$document = new Document();
$document->setErrors($response->getErrors());
return new JsonApiResponse($document, $response->getStatus());
}
作者:RudolfFusse
项目:cor
public function handle(Exception $e)
{
if ($e instanceof JsonApiSerializableInterface) {
$status = $e->getStatusCode();
$errors = $e->getErrors();
} elseif ($e instanceof ValidationException) {
$status = 422;
$errors = $e->errors()->toArray();
$errors = array_map(function ($field, $messages) {
return ['detail' => implode("\n", $messages), 'source' => ['pointer' => '/data/attributes/' . $field]];
}, array_keys($errors), $errors);
} elseif ($e instanceof ModelNotFoundException) {
$status = 404;
$errors = [];
} else {
$status = 500;
$error = ['code' => $status, 'title' => 'Internal Server Error'];
if ($this->app->inDebugMode()) {
$error['detail'] = (string) $e;
}
$errors = [$error];
}
$document = new Document();
$document->setErrors($errors);
return new JsonApiResponse($document, $status);
}
作者:iu
项目:juni
/**
* @param Request $request
* @param Created $payload
*/
public function created(Request $request, Created $payload)
{
$serializer = PerformanceStatistic::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$document = new Document($resource);
return new JsonResponse($document->toArray(), 201, ['Location' => $resource->getLinks()['self']]);
}
作者:ahsanit
项目:json-ap
public function testToArrayIncludesTheResourcesRepresentation()
{
$post = (object) ['id' => 1, 'foo' => 'bar'];
$resource = new Resource($post, new PostSerializer2());
$document = new Document($resource);
$this->assertEquals(['data' => $resource->toArray()], $document->toArray());
}
作者:redstarx
项目:flarumon
public function testToArrayIncludesTheResourcesRepresentation()
{
$resource = new Resource('post', 1);
$document = new Document();
$document->setData($resource);
$this->assertEquals(['data' => $resource->toArray()], $document->toArray());
}
作者:flaru
项目:cor
/**
* {@inheritdoc}
*/
public function __construct(Document $document, $status = 200, array $headers = [], $encodingOptions = 15)
{
$headers['content-type'] = 'application/vnd.api+json';
// The call to jsonSerialize prevents rare issues with json_encode() failing with a
// syntax error even though Document implements the JsonSerializable interface.
// See https://github.com/flarum/core/issues/685
parent::__construct($document->jsonSerialize(), $status, $headers, $encodingOptions);
}
作者:kleijnwe
项目:swagger-bundle-exampl
/**
* @param string $status
* @param string $title
* @param string $description
* @param string $type
* @param string $priority
*
* @return Document
*/
public function search($status = null, $title = null, $description = null, $type = null, $priority = null)
{
$results = $this->service->search($status, $title, $description, $type, $priority);
$collection = (new Collection($results, $this->serializer))->with(['author', 'comments']);
$document = new Document($collection);
$document->addMeta('total', count($results));
return $document;
}
作者:keek
项目:cor
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = Language::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['sublanguages', 'parent', 'scope', 'type', 'script', 'family', 'localizations']));
$resource = $resource->fields($params->getFields(['language' => Language::getSerializer()->getFields(), 'sublanguage' => Language::getSerializer()->getFields(), 'parent' => Language::getSerializer()->getFields(), 'scope' => LanguageScope::getSerializer()->getFields(), 'type' => LanguageType::getSerializer()->getFields(), 'script' => LanguageScript::getSerializer()->getFields(), 'family' => LanguageFamily::getSerializer()->getFields(), 'localization' => Localization::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:iu
项目:juni
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = PerformanceStatistic::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['events', 'startgroups', 'routine']));
$resource = $resource->fields($params->getFields(['performance-statistic' => PerformanceStatistic::getSerializer()->getFields(), 'event' => Event::getSerializer()->getFields(), 'startgroup' => Startgroup::getSerializer()->getFields(), 'routine' => Routine::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:goss
项目:trixionar
/**
* @param Request $request
* @param Updated $payload
*/
public function updated(Request $request, Updated $payload)
{
$params = new Parameters($request->query->all());
$serializer = Position::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['sport', 'skill']));
$resource = $resource->fields($params->getFields(['position' => Position::getSerializer()->getFields(), 'sport' => Sport::getSerializer()->getFields(), 'skill' => Skill::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:WebspotCod
项目:SpotAp
/** @return void */
protected function generateMetaData(ResponseInterface $response, Document $document)
{
if (is_null($this->metaDataGenerator)) {
return;
}
$metaData = call_user_func($this->metaDataGenerator, $response);
foreach ($metaData as $key => $value) {
$document->addMeta($key, $value);
}
}
作者:goss
项目:trixionar
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = Object::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['sport', 'skills', 'skills.variations', 'skills.variationOf', 'skills.multiples', 'sport.objects']));
$resource = $resource->fields($params->getFields(['object' => Object::getSerializer()->getFields(), 'sport' => Sport::getSerializer()->getFields(), 'skill' => Skill::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:goss
项目:trixionar
/**
* @param Request $request
* @param Updated $payload
*/
public function updated(Request $request, Updated $payload)
{
$params = new Parameters($request->query->all());
$serializer = Sport::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['objects', 'positions', 'skills', 'groups', 'skills.groups', 'skills.objects', 'skills.start-position', 'skills.end-position', 'skills.variationOf', 'skills.parents', 'skills.lineages', 'skills.lineages.ancestor', 'skills.lineages.skill', 'skills.featured-picture']));
$resource = $resource->fields($params->getFields(['sport' => Sport::getSerializer()->getFields(), 'object' => Object::getSerializer()->getFields(), 'position' => Position::getSerializer()->getFields(), 'skill' => Skill::getSerializer()->getFields(), 'group' => Group::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:goss
项目:trixionar
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = FunctionPhase::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['root-skills', 'skill']));
$resource = $resource->fields($params->getFields(['function-phase' => FunctionPhase::getSerializer()->getFields(), 'root-skill' => Skill::getSerializer()->getFields(), 'skill' => Skill::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:iu
项目:juni
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = Competition::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['startgroups']));
$resource = $resource->fields($params->getFields(['competition' => Competition::getSerializer()->getFields(), 'startgroup' => Startgroup::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:keek
项目:cor
/**
* @param Request $request
* @param Updated $payload
*/
public function updated(Request $request, Updated $payload)
{
$params = new Parameters($request->query->all());
$serializer = Localization::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['localizations', 'parent', 'language', 'ext-lang', 'script', 'language-variants', 'application-uris']));
$resource = $resource->fields($params->getFields(['localization' => Localization::getSerializer()->getFields(), 'parent' => Localization::getSerializer()->getFields(), 'language' => Language::getSerializer()->getFields(), 'ext-lang' => Language::getSerializer()->getFields(), 'script' => LanguageScript::getSerializer()->getFields(), 'language-variant' => LanguageVariant::getSerializer()->getFields(), 'application-uri' => ApplicationUri::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:iu
项目:juni
/**
* @param Request $request
* @param Updated $payload
*/
public function updated(Request $request, Updated $payload)
{
$params = new Parameters($request->query->all());
$serializer = PerformanceScore::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['routine', 'judge']));
$resource = $resource->fields($params->getFields(['performance-score' => PerformanceScore::getSerializer()->getFields(), 'routine' => Routine::getSerializer()->getFields(), 'judge' => Judge::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}
作者:keek
项目:cor
/**
* @param Request $request
* @param Found $payload
*/
public function found(Request $request, Found $payload)
{
$params = new Parameters($request->query->all());
$serializer = RegionType::getSerializer();
$resource = new Resource($payload->getModel(), $serializer);
$resource = $resource->with($params->getInclude(['countries', 'subdivisions', 'area']));
$resource = $resource->fields($params->getFields(['region-type' => RegionType::getSerializer()->getFields(), 'country' => Country::getSerializer()->getFields(), 'subdivision' => Subdivision::getSerializer()->getFields(), 'area' => RegionArea::getSerializer()->getFields()]));
$document = new Document($resource);
return new JsonResponse($document->toArray(), 200);
}