/**
  * Retrieves a collection of resources.
  *
  * @param Request $request
  *
  * @throws \Exception                                 If the format is invalid
  * @throws RuntimeException|RootNodeNotFoundException
  *
  * @return array|\Dunglas\ApiBundle\Model\PaginatorInterface|\Traversable
  */
 public function __invoke(Request $request)
 {
     if ($request->request->has('preferenceKey')) {
         $this->systemPreferenceService->deletePreference($request->request->get('preferenceKey'));
     } else {
         throw new \Exception('Invalid format');
     }
 }
예제 #2
0
 /**
  * Retrieves a collection of resources.
  *
  * @param Request $request
  *
  * @throws RuntimeException|RootNodeNotFoundException
  *
  * @return JsonResponse
  */
 public function __invoke(Request $request)
 {
     $preferences = $this->systemPreferenceService->getPreferences();
     /**
      * @var ResourceInterface $resourceType
      */
     list($resourceType) = $this->extractAttributes($request);
     /*
      * @var ResourceInterface $resourceType
      */
     $serializedData = $this->serializer->normalize($preferences, 'json', $resourceType->getNormalizationContext());
     return new JsonResponse($serializedData);
 }
예제 #3
0
 /**
  * Retrieves a collection of resources.
  *
  * @param Request $request
  *
  * @throws \Exception                                 If the format is invalid
  * @throws RuntimeException|RootNodeNotFoundException
  *
  * @return JsonResponse
  */
 public function __invoke(Request $request)
 {
     $data = json_decode($request->getContent());
     if (property_exists($data, 'preferenceKey') && property_exists($data, 'preferenceValue')) {
         $preference = $this->systemPreferenceService->setSystemPreference($data->preferenceKey, $data->preferenceValue);
     } else {
         throw new \Exception('Invalid format');
     }
     /**
      * @var ResourceInterface $resourceType
      */
     list($resourceType) = $this->extractAttributes($request);
     $serializedData = $this->serializer->normalize($preference, 'json', $resourceType->getNormalizationContext());
     return new JsonResponse($serializedData);
 }