/** * @param Request $request * @param Created $payload */ public function created(Request $request, Created $payload) { $serializer = Application::getSerializer(); $resource = new Resource($payload->getModel(), $serializer); $document = new Document($resource); return new JsonResponse($document->toArray(), 201, ['Location' => $resource->getLinks()['self']]); }
public function install(IOInterface $io, $packageName) { $model = ApplicationQuery::create()->findOneByName($packageName); if ($model === null) { $io->write('[Keeko] Install Application: ' . $packageName); $package = $this->service->getPackageManager()->getPackage($packageName); $keeko = $package->getKeeko(); if ($keeko->isApp()) { $pkg = $keeko->getApp(); $model = new Application(); $model->setClassName($pkg->getClass()); $this->updatePackage($model, $pkg); } } return $model; }
public function setCookie(Response $response, $name, $value, $expire = 0) { foreach ($this->model->getApplicationUris() as $uri) { $cookie = new Cookie($name, $value, $expire, $uri->getBasepath(), $uri->getHttphost(), $uri->getSecure(), false); $response->headers->setCookie($cookie); } }
/** * @param Request $request * @param Found $payload */ public function found(Request $request, Found $payload) { $params = new Parameters($request->query->all()); $serializer = Application::getSerializer(); $resource = new Resource($payload->getModel(), $serializer); $resource = $resource->with($params->getInclude(['application-uris'])); $resource = $resource->fields($params->getFields(['application' => Application::getSerializer()->getFields(), 'application-uri' => ApplicationUri::getSerializer()->getFields()])); $document = new Document($resource); return new JsonResponse($document->toArray(), 200); }
/** * @param Request $request * @param Found $payload */ public function found(Request $request, Found $payload) { $params = new Parameters($request->query->all()); $data = $payload->getModel(); $serializer = ApplicationUri::getSerializer(); $resource = new Collection($data, $serializer); $resource = $resource->with($params->getInclude(['application', 'localization'])); $resource = $resource->fields($params->getFields(['application-uri' => ApplicationUri::getSerializer()->getFields(), 'application' => Application::getSerializer()->getFields(), 'localization' => Localization::getSerializer()->getFields()])); $document = new Document($resource); // meta if ($params->getPage('size') != -1) { $document->setMeta(['total' => $data->getNbResults(), 'first' => '%apiurl%/' . $serializer->getType(null) . '?' . $params->toQueryString(['page' => ['number' => $data->getFirstPage()]]), 'next' => '%apiurl%/' . $serializer->getType(null) . '?' . $params->toQueryString(['page' => ['number' => $data->getNextPage()]]), 'previous' => '%apiurl%/' . $serializer->getType(null) . '?' . $params->toQueryString(['page' => ['number' => $data->getPreviousPage()]]), 'last' => '%apiurl%/' . $serializer->getType(null) . '?' . $params->toQueryString(['page' => ['number' => $data->getLastPage()]])]); } // return response return new JsonResponse($document->toArray()); }
/** * @param Request $request * @param Updated $payload */ public function updated(Request $request, Updated $payload) { $serializer = Application::getSerializer(); $relationship = $serializer->applicationUris($payload->getModel()); return new JsonResponse($relationship->toArray()); }
/** * Exclude object from result * * @param ChildApplication $application Object to remove from the list of results * * @return $this|ChildApplicationQuery The current query, for fluid interface */ public function prune($application = null) { if ($application) { $this->addUsingAlias(ApplicationTableMap::COL_ID, $application->getId(), Criteria::NOT_EQUAL); } return $this; }
/** * Sets a single ChildApplication object as related to this object by a one-to-one relationship. * * @param ChildApplication $v ChildApplication * @return $this|\keeko\core\model\Package The current object (for fluent API support) * @throws PropelException */ public function setApplication(ChildApplication $v = null) { $this->singleApplication = $v; // Make sure that that the passed-in ChildApplication isn't already associated with this object if ($v !== null && $v->getPackage(null, false) === null) { $v->setPackage($this); } return $this; }
/** * Clears the current object, sets all attributes to their default values and removes * outgoing references as well as back-references (from other objects to this one. Results probably in a database * change of those foreign objects when you call `save` there). */ public function clear() { if (null !== $this->aApplication) { $this->aApplication->removeApplicationUri($this); } if (null !== $this->aLocalization) { $this->aLocalization->removeApplicationUri($this); } $this->id = null; $this->httphost = null; $this->basepath = null; $this->secure = null; $this->application_id = null; $this->localization_id = null; $this->alreadyInSave = false; $this->clearAllReferences(); $this->resetModified(); $this->setNew(true); $this->setDeleted(false); }
/** */ public function getRelationships() { return ['application' => Application::getSerializer()->getType(null), 'localization' => Localization::getSerializer()->getType(null)]; }
/** * Filter the query by a related \keeko\core\model\Application object * * @param \keeko\core\model\Application|ObjectCollection $application The related object(s) to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @throws \Propel\Runtime\Exception\PropelException * * @return ChildApplicationUriQuery The current query, for fluid interface */ public function filterByApplication($application, $comparison = null) { if ($application instanceof \keeko\core\model\Application) { return $this->addUsingAlias(ApplicationUriTableMap::COL_APPLICATION_ID, $application->getId(), $comparison); } elseif ($application instanceof ObjectCollection) { if (null === $comparison) { $comparison = Criteria::IN; } return $this->addUsingAlias(ApplicationUriTableMap::COL_APPLICATION_ID, $application->toKeyValue('PrimaryKey', 'Id'), $comparison); } else { throw new PropelException('filterByApplication() only accepts arguments of type \\keeko\\core\\model\\Application or Collection'); } }
/** * Interal mechanism to remove ApplicationUris from Application * * @param Application $model * @param mixed $data */ protected function doRemoveApplicationUris(Application $model, $data) { $errors = []; foreach ($data as $entry) { if (!isset($entry['id'])) { $errors[] = 'Missing id for ApplicationUri'; } else { $related = ApplicationUriQuery::create()->findOneById($entry['id']); $model->removeApplicationUri($related); } } if (count($errors) > 0) { return new ErrorsException($errors); } }
/** * Filter the query by a related \keeko\core\model\Application object * * @param \keeko\core\model\Application|ObjectCollection $application the related object to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @return ChildPackageQuery The current query, for fluid interface */ public function filterByApplication($application, $comparison = null) { if ($application instanceof \keeko\core\model\Application) { return $this->addUsingAlias(PackageTableMap::COL_ID, $application->getId(), $comparison); } elseif ($application instanceof ObjectCollection) { return $this->useApplicationQuery()->filterByPrimaryKeys($application->getPrimaryKeys())->endUse(); } else { throw new PropelException('filterByApplication() only accepts arguments of type \\keeko\\core\\model\\Application or Collection'); } }