You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

166 lines
7.1 KiB

<?xml version="1.0" encoding="UTF-8" ?>
<!-- api/config/api_platform/resources.xml -->
<resources xmlns="https://api-platform.com/schema/metadata/resources-3.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://api-platform.com/schema/metadata/resources-3.0
https://api-platform.com/schema/metadata/resources-3.0.xsd">
<resource class="App\Entity\User">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\Get" controller="App\Controller\GetUserByName" uriTemplate="users/authName/{authName}" description="Receives a user by its authentication name">
<uriVariables><uriVariable parameterName="authName"></uriVariable></uriVariables>
</operation>
<operation class="ApiPlatform\Metadata\Patch">
<denormalizationContext><values><value name="groups"><values><value>public</value></values></value></values></denormalizationContext>
</operation>
</operations>
</resource>
<resource class="App\Entity\Country">
<operations>
<operation class="ApiPlatform\Metadata\GetCollection" />
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\City" uriTemplate="/country/{countryId}/capital">
<uriVariables>
<uriVariable parameterName="countryId" fromClass="App\Entity\Country" toProperty="capital"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\City" uriTemplate="/prefecture/{prefectureId}/capital">
<uriVariables>
<uriVariable parameterName="prefectureId" fromClass="App\Entity\Prefecture" toProperty="capital"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\City">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\Village" uriTemplate="/prefecture/{prefectureId}/villages">
<uriVariables>
<uriVariable parameterName="prefectureId" fromClass="App\Entity\Prefecture" toProperty="villages"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\GetCollection" />
</operations>
</resource>
<resource class="App\Entity\Village">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\Prefecture" uriTemplate="/country/{countryId}/prefectures">
<uriVariables>
<uriVariable parameterName="countryId" fromClass="App\Entity\Country" toProperty="prefectures"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\GetCollection" />
</operations>
</resource>
<resource class="App\Entity\Prefecture">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\Dojo">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\Get" uriTemplate="dojo" controller="App\Controller\GetUserDojo" />
<operation class="ApiPlatform\Metadata\Post" processor="App\State\DojoPostProcessor"/>
<operation class="ApiPlatform\Metadata\Patch" />
</operations>
</resource>
<resource class="App\Entity\Dojo" uriTemplate="/village/{villageId}/dojos">
<uriVariables>
<uriVariable parameterName="villageId" fromClass="App\Entity\Village" toProperty="dojos"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\Dungeon">
<operations>
<operation class="ApiPlatform\Metadata\Get" uriTemplate="dungeon/{id}" />
</operations>
</resource>
<resource class="App\Entity\Dungeon" uriTemplate="/city/{cityId}/dungeon">
<uriVariables>
<uriVariable parameterName="cityId" fromClass="App\Entity\City" toProperty="dungeon"></uriVariable>
</uriVariables>
<operations>
<operation class="ApiPlatform\Metadata\Get" />
</operations>
</resource>
<resource class="App\Entity\Character">
<normalizationContext><values><value name="groups"><values><value>public</value></values></value></values></normalizationContext>
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\GetCollection" controller="App\Controller\GetDojoCharacters" uriTemplate="dojos/{dojoId}/characters" description="Receives the characters from a dojo.">
<uriVariables><uriVariable parameterName="dojoId" /></uriVariables>
</operation>
<operation class="ApiPlatform\Metadata\GetCollection" controller="App\Controller\GetOwnDojoCharacters" uriTemplate="dojo/characters" description="Receives the characters from the users dojo.">
<normalizationContext><values><value name="groups"><values><value>public</value><value>detail</value></values></value></values></normalizationContext>
</operation>
</operations>
</resource>
<resource class="App\Entity\Character">
<operations>
<operation class="ApiPlatform\Metadata\Post" />
<operation class="ApiPlatform\Metadata\Patch" />
</operations>
</resource>
<resource class="App\Entity\Technique">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\GetCollection" />
<operation class="ApiPlatform\Metadata\Post" security="is_granted('ROLE_ADMIN')" />
</operations>
</resource>
<resource class="App\Entity\Tournament">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\GetCollection" />
</operations>
</resource>
<resource class="App\Entity\TournamentRegistration">
<operations>
<operation class="ApiPlatform\Metadata\Post" processor="App\State\TournamentRegistrationStateProcessor" />
</operations>
</resource>
<resource class="App\Entity\Fight">
<operations>
<operation class="ApiPlatform\Metadata\Get" />
<operation class="ApiPlatform\Metadata\GetCollection" controller="App\Controller\GetTournamentFights" uriTemplate="tournaments/{tournamentId}/fights" description="Receives the fights from a tournament.">
<uriVariables><uriVariable parameterName="tournamentId" fromClass="App\Entity\Tournament"></uriVariable></uriVariables>
</operation>
<operation class="ApiPlatform\Metadata\GetCollection" controller="App\Controller\GetTournamentFights" uriTemplate="tournaments/{tournamentId}/characters/{characterId}/fights" description="Receives the fights from a tournament for a given character.">
<uriVariables>
<uriVariable parameterName="tournamentId" fromClass="App\Entity\Tournament"></uriVariable>
<uriVariable parameterName="characterId" fromClass="App\Entity\Character"></uriVariable>
</uriVariables>
</operation>
</operations>
</resource>
</resources>