{ "query_count": 48, "query_repetitions": 5, "results": [ { "backend": "ariadne", "hint": "owner", "output_tokens": 350, "query_ms": 0.3902500029653311, "rank": 2, "result_count": 2, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.529,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::POST::/owners::createOwner\",\"label\":\"HTTP POST /owners\",\"name\":\"createOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners::findAll\",\"label\":\"HTTP GET /owners\",\"name\":\"findAll\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::POST::/owners/*/pets/{petId}/visits::create\",\"label\":\"HTTP POST /owners/*/pets/{petId}/visits\",\"name\":\"create\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"}]},{\"confidence\":0.513,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/{ownerId}::findOwner\",\"label\":\"HTTP GET /owners/{ownerId}\",\"name\":\"findOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/{ownerId}::updateOwner\",\"label\":\"HTTP PUT /owners/{ownerId}\",\"name\":\"updateOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-api-gateway::http::GET::/api/gateway/owners/{ownerId}::getOwnerDetails\",\"label\":\"HTTP GET /api/gateway/owners/{ownerId}\",\"name\":\"getOwnerDetails\",\"service\":\"spring-petclinic-api-gateway\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "owner", "output_tokens": 5964, "query_ms": 8.961417013779283, "rank": 5, "result_count": 150, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:18:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:35:public Mono getOwner(final int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:37:.uri(\"http://customers-service/owners/{ownerId}\", ownerId)\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:39:.bodyToMono(OwnerDetails.class);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:22:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:54:@GetMapping(value = \"owners/{ownerId}\")\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:55:public Mono getOwnerDetails(final @PathVariable int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:56:return customersServiceClient.getOwner(ownerId)\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:57:.flatMap(owner ->\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:58:visitsServiceClient.getVisitsForPets(owner.getPetIds())\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:60:ReactiveCircuitBreaker cb = cbFactory.create(\"getOwnerDetails\");\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:63:.map(addVisitsToOwner(owner))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:68:private Function addVisitsToOwner(OwnerDetails owner) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:70:owner.pets()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:76:return owner;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:25:public record OwnerDetails(\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:42:public static final class OwnerDetailsBuilder {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:51:private OwnerDetailsBuilder() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:54:public static OwnerDetailsBuilder anOwnerDetails() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:55:return new OwnerDetailsBuilder();\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:58:public OwnerDetailsBuilder id(int id) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:63:public OwnerDetailsBuilder firstName(String firstName) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:68:public OwnerDetailsBuilder lastName(String lastName) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:73:public OwnerDetailsBuilder address(String address) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:78:public OwnerDetailsBuilder city(String city) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:83:public OwnerDetailsBuilder telephone(String telephone) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:88:public OwnerDetailsBuilder pets(List pets) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:93:public OwnerDetails build() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:94:return new OwnerDetails(id, firstName, lastName, address, city, telephone, pets);\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:11:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:45:OwnerDetails owner = OwnerDetails.OwnerDetailsBuilder.anOwnerDetails()\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:49:.when(customersServiceClient.getOwner(1))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:50:.thenReturn(Mono.just(owner));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:59:.uri(\"/api/gateway/owners/1\")\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:71:void getOwnerDetails_withServiceError() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:77:OwnerDetails owner = OwnerDetails.OwnerDetailsBuilder.anOwnerDetails()\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:81:.when(customersServiceClient.getOwner(1))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:82:.thenReturn(Mono.just(owner));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:89:.uri(\"/api/gateway/owners/1\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:28:* Simple JavaBean domain object representing an owner.\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:38:@Table(name = \"owners\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:39:public class Owner {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:66:@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = \"owner\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:84:pet.setOwner(this);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/OwnerRepository.java:21:* Repository class for Owner domain objects All method names are compliant with Spring Data naming\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/OwnerRepository.java:30:public interface OwnerRepository extends JpaRepository { }\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:53:@JoinColumn(name = \"owner_id\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:55:private Owner owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:64:.append(\"ownerFirstname\", this.getOwner().getFirstName())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:65:.append(\"ownerLastname\", this.getOwner().getLastName())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:85:public Owner getOwner() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:86:return this.owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:105:public void setOwner(Owner owner) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:106:this.owner = owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:117:&& Objects.equals(owner, pet.owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:122:return Objects.hash(id, name, birthDate, type, owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerRequest.java:6:public record OwnerRequest(@NotBlank String firstName,\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:24:import org.springframework.samples.petclinic.customers.web.mapper.OwnerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:25:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:26:import org.springframework.samples.petclinic.customers.model.OwnerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:39:@RequestMapping(\"/owners\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:41:@Timed(\"petclinic.owner\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:42:class OwnerResource {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:44:private static final Logger log = LoggerFactory.getLogger(OwnerResource.class);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:46:private final OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:47:private final OwnerEntityMapper ownerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:49:OwnerResource(OwnerRepository ownerRepository, OwnerEntityMapper ownerEntityMapper) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:50:this.ownerRepository = ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:51:this.ownerEntityMapper = ownerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:55:* Create Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:59:public Owner createOwner(@Valid @RequestBody OwnerRequest ownerRequest) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:60:Owner owner = ownerEntityMapper.map(new Owner(), ownerRequest);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:61:return ownerRepository.save(owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:65:* Read single Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:67:@GetMapping(value = \"/{ownerId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:68:public Optional findOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:69:return ownerRepository.findById(ownerId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:73:* Read List of Owners\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:76:public List findAll() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:77:return ownerRepository.findAll();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:81:* Update Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:83:@PutMapping(value = \"/{ownerId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:85:public void updateOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId, @Valid @RequestBody OwnerRequest ownerRequest) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:86:final Owner ownerModel = ownerRepository.findById(ownerId).orElseThrow(() -> new ResourceNotFoundException(\"Owner \" + ownerId + \" not found\"));\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:88:ownerEntityMapper.map(ownerModel, ownerRequest);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:89:log.info(\"Saving owner {}\", ownerModel);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:90:ownerRepository.save(ownerModel);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetDetails.java:34:String owner,\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetDetails.java:42:this(pet.getId(), pet.getName(), pet.getOwner().getFirstName() + \" \" + pet.getOwner().getLastName(), pet.getBirthDate(), pet.getType());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:42:private final OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:44:PetResource(PetRepository petRepository, OwnerRepository ownerRepository) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:46:this.ownerRepository = ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:54:@PostMapping(\"/owners/{ownerId}/pets\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:58:@PathVariable(\"ownerId\") @Min(1) int ownerId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:60:Owner owner = ownerRepository.findById(ownerId)\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:61:.orElseThrow(() -> new ResourceNotFoundException(\"Owner \" + ownerId + \" not found\"));\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:64:owner.addPet(pet);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:68:@PutMapping(\"/owners/*/pets/{petId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:88:@GetMapping(\"owners/*/pets/{petId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:3:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:4:import org.springframework.samples.petclinic.customers.web.OwnerRequest;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:8:public class OwnerEntityMapper implements Mapper {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:11:public Owner map(final Owner owner, final OwnerRequest request) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:12:owner.setAddress(request.address());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:13:owner.setCity(request.city());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:14:owner.setTelephone(request.telephone());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:15:owner.setFirstName(request.firstName());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:16:owner.setLastName(request.lastName());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:17:return owner;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:9:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:10:import org.springframework.samples.petclinic.customers.model.OwnerRepository;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:39:OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:49:mvc.perform(get(\"/owners/2/pets/2\").accept(MediaType.APPLICATION_JSON))\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:58:Owner owner = new Owner();\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:59:owner.setFirstName(\"George\");\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:60:owner.setLastName(\"Bush\");\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:71:owner.addPet(pet);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:12:import org.springframework.samples.petclinic.genai.dto.OwnerDetails;\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:23:* for information such as listing owners and vets, or adding pets to an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:42:public List getAllOwners() {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:45:.uri(getCustomerServiceUri() + \"/owners\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:70:public PetDetails addPetToOwner(int ownerId, PetRequest petRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:73:.uri(getCustomerServiceUri() + \"/owners/\" + ownerId + \"/pets\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:79:public OwnerDetails addOwnerToPetclinic(OwnerRequest ownerRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:82:.uri(getCustomerServiceUri() + \"/owners\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:83:.body(ownerRequest)\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:85:.body(OwnerDetails.class);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:38:veterinarians, owners, owners' pets and owners' visits.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:44:For owners, pets or visits - provide the correct data.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:9:import org.springframework.samples.petclinic.genai.dto.OwnerDetails;\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:21:* the LLM to get the list of owners and their pets, get information about the\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:22:* veterinarians, and add a pet to an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:38:@Tool(description = \"List the owners that the pet clinic has\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:39:public List listOwners() {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:40:LOG.info(\"listOwners()\");\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:41:return petclinicAiProvider.getAllOwners();\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:45:Add a new pet owner to the pet clinic. The Owner must include a first name and a last name\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:48:public OwnerDetails addOwnerToPetclinic(OwnerRequest ownerRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:49:LOG.info(\"addOwnerToPetclinic() ownerRequest={}\", ownerRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:50:return petclinicAiProvider.addOwnerToPetclinic(ownerRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:65:Add a pet with the specified petTypeId, to an owner identified by the ownerId.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:69:public PetDetails addPetToOwner(@ToolParam(description = \"Pet's owner identifier\") int ownerId, PetRequest petRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:70:LOG.info(\"addPetToOwner() ownerId={} petRequest={}\", ownerId, petRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:71:return petclinicAiProvider.addPetToOwner(ownerId, petRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:76:record OwnerRequest(@NotBlank String firstName,\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/OwnerDetails.java:21:* Simple Data Transfer Object representing an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/OwnerDetails.java:25:public record OwnerDetails(\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:56:@PostMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:67:@GetMapping(\"owners/*/pets/{petId}/visits\")" }, { "backend": "grep", "hint": "owner", "output_tokens": 5964, "query_ms": 9.01545793749392, "rank": 5, "result_count": 150, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:18:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:35:public Mono getOwner(final int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:37:.uri(\"http://customers-service/owners/{ownerId}\", ownerId)\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/CustomersServiceClient.java:39:.bodyToMono(OwnerDetails.class);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:22:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:54:@GetMapping(value = \"owners/{ownerId}\")\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:55:public Mono getOwnerDetails(final @PathVariable int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:56:return customersServiceClient.getOwner(ownerId)\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:57:.flatMap(owner ->\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:58:visitsServiceClient.getVisitsForPets(owner.getPetIds())\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:60:ReactiveCircuitBreaker cb = cbFactory.create(\"getOwnerDetails\");\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:63:.map(addVisitsToOwner(owner))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:68:private Function addVisitsToOwner(OwnerDetails owner) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:70:owner.pets()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:76:return owner;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:25:public record OwnerDetails(\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:42:public static final class OwnerDetailsBuilder {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:51:private OwnerDetailsBuilder() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:54:public static OwnerDetailsBuilder anOwnerDetails() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:55:return new OwnerDetailsBuilder();\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:58:public OwnerDetailsBuilder id(int id) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:63:public OwnerDetailsBuilder firstName(String firstName) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:68:public OwnerDetailsBuilder lastName(String lastName) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:73:public OwnerDetailsBuilder address(String address) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:78:public OwnerDetailsBuilder city(String city) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:83:public OwnerDetailsBuilder telephone(String telephone) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:88:public OwnerDetailsBuilder pets(List pets) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:93:public OwnerDetails build() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/OwnerDetails.java:94:return new OwnerDetails(id, firstName, lastName, address, city, telephone, pets);\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:11:import org.springframework.samples.petclinic.api.dto.OwnerDetails;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:45:OwnerDetails owner = OwnerDetails.OwnerDetailsBuilder.anOwnerDetails()\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:49:.when(customersServiceClient.getOwner(1))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:50:.thenReturn(Mono.just(owner));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:59:.uri(\"/api/gateway/owners/1\")\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:71:void getOwnerDetails_withServiceError() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:77:OwnerDetails owner = OwnerDetails.OwnerDetailsBuilder.anOwnerDetails()\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:81:.when(customersServiceClient.getOwner(1))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:82:.thenReturn(Mono.just(owner));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:89:.uri(\"/api/gateway/owners/1\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:28:* Simple JavaBean domain object representing an owner.\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:38:@Table(name = \"owners\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:39:public class Owner {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:66:@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = \"owner\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Owner.java:84:pet.setOwner(this);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/OwnerRepository.java:21:* Repository class for Owner domain objects All method names are compliant with Spring Data naming\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/OwnerRepository.java:30:public interface OwnerRepository extends JpaRepository { }\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:53:@JoinColumn(name = \"owner_id\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:55:private Owner owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:64:.append(\"ownerFirstname\", this.getOwner().getFirstName())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:65:.append(\"ownerLastname\", this.getOwner().getLastName())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:85:public Owner getOwner() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:86:return this.owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:105:public void setOwner(Owner owner) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:106:this.owner = owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:117:&& Objects.equals(owner, pet.owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/Pet.java:122:return Objects.hash(id, name, birthDate, type, owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerRequest.java:6:public record OwnerRequest(@NotBlank String firstName,\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:24:import org.springframework.samples.petclinic.customers.web.mapper.OwnerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:25:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:26:import org.springframework.samples.petclinic.customers.model.OwnerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:39:@RequestMapping(\"/owners\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:41:@Timed(\"petclinic.owner\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:42:class OwnerResource {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:44:private static final Logger log = LoggerFactory.getLogger(OwnerResource.class);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:46:private final OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:47:private final OwnerEntityMapper ownerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:49:OwnerResource(OwnerRepository ownerRepository, OwnerEntityMapper ownerEntityMapper) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:50:this.ownerRepository = ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:51:this.ownerEntityMapper = ownerEntityMapper;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:55:* Create Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:59:public Owner createOwner(@Valid @RequestBody OwnerRequest ownerRequest) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:60:Owner owner = ownerEntityMapper.map(new Owner(), ownerRequest);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:61:return ownerRepository.save(owner);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:65:* Read single Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:67:@GetMapping(value = \"/{ownerId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:68:public Optional findOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:69:return ownerRepository.findById(ownerId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:73:* Read List of Owners\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:76:public List findAll() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:77:return ownerRepository.findAll();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:81:* Update Owner\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:83:@PutMapping(value = \"/{ownerId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:85:public void updateOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId, @Valid @RequestBody OwnerRequest ownerRequest) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:86:final Owner ownerModel = ownerRepository.findById(ownerId).orElseThrow(() -> new ResourceNotFoundException(\"Owner \" + ownerId + \" not found\"));\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:88:ownerEntityMapper.map(ownerModel, ownerRequest);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:89:log.info(\"Saving owner {}\", ownerModel);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:90:ownerRepository.save(ownerModel);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetDetails.java:34:String owner,\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetDetails.java:42:this(pet.getId(), pet.getName(), pet.getOwner().getFirstName() + \" \" + pet.getOwner().getLastName(), pet.getBirthDate(), pet.getType());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:42:private final OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:44:PetResource(PetRepository petRepository, OwnerRepository ownerRepository) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:46:this.ownerRepository = ownerRepository;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:54:@PostMapping(\"/owners/{ownerId}/pets\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:58:@PathVariable(\"ownerId\") @Min(1) int ownerId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:60:Owner owner = ownerRepository.findById(ownerId)\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:61:.orElseThrow(() -> new ResourceNotFoundException(\"Owner \" + ownerId + \" not found\"));\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:64:owner.addPet(pet);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:68:@PutMapping(\"/owners/*/pets/{petId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:88:@GetMapping(\"owners/*/pets/{petId}\")\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:3:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:4:import org.springframework.samples.petclinic.customers.web.OwnerRequest;\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:8:public class OwnerEntityMapper implements Mapper {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:11:public Owner map(final Owner owner, final OwnerRequest request) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:12:owner.setAddress(request.address());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:13:owner.setCity(request.city());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:14:owner.setTelephone(request.telephone());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:15:owner.setFirstName(request.firstName());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:16:owner.setLastName(request.lastName());\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/mapper/OwnerEntityMapper.java:17:return owner;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:9:import org.springframework.samples.petclinic.customers.model.Owner;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:10:import org.springframework.samples.petclinic.customers.model.OwnerRepository;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:39:OwnerRepository ownerRepository;\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:49:mvc.perform(get(\"/owners/2/pets/2\").accept(MediaType.APPLICATION_JSON))\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:58:Owner owner = new Owner();\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:59:owner.setFirstName(\"George\");\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:60:owner.setLastName(\"Bush\");\nspring-petclinic-customers-service/src/test/java/org/springframework/samples/petclinic/customers/web/PetResourceTest.java:71:owner.addPet(pet);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:12:import org.springframework.samples.petclinic.genai.dto.OwnerDetails;\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:23:* for information such as listing owners and vets, or adding pets to an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:42:public List getAllOwners() {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:45:.uri(getCustomerServiceUri() + \"/owners\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:70:public PetDetails addPetToOwner(int ownerId, PetRequest petRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:73:.uri(getCustomerServiceUri() + \"/owners/\" + ownerId + \"/pets\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:79:public OwnerDetails addOwnerToPetclinic(OwnerRequest ownerRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:82:.uri(getCustomerServiceUri() + \"/owners\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:83:.body(ownerRequest)\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/AIDataProvider.java:85:.body(OwnerDetails.class);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:38:veterinarians, owners, owners' pets and owners' visits.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:44:For owners, pets or visits - provide the correct data.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:9:import org.springframework.samples.petclinic.genai.dto.OwnerDetails;\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:21:* the LLM to get the list of owners and their pets, get information about the\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:22:* veterinarians, and add a pet to an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:38:@Tool(description = \"List the owners that the pet clinic has\")\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:39:public List listOwners() {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:40:LOG.info(\"listOwners()\");\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:41:return petclinicAiProvider.getAllOwners();\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:45:Add a new pet owner to the pet clinic. The Owner must include a first name and a last name\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:48:public OwnerDetails addOwnerToPetclinic(OwnerRequest ownerRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:49:LOG.info(\"addOwnerToPetclinic() ownerRequest={}\", ownerRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:50:return petclinicAiProvider.addOwnerToPetclinic(ownerRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:65:Add a pet with the specified petTypeId, to an owner identified by the ownerId.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:69:public PetDetails addPetToOwner(@ToolParam(description = \"Pet's owner identifier\") int ownerId, PetRequest petRequest) {\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:70:LOG.info(\"addPetToOwner() ownerId={} petRequest={}\", ownerId, petRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:71:return petclinicAiProvider.addPetToOwner(ownerId, petRequest);\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicTools.java:76:record OwnerRequest(@NotBlank String firstName,\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/OwnerDetails.java:21:* Simple Data Transfer Object representing an owner.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/OwnerDetails.java:25:public record OwnerDetails(\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:56:@PostMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:67:@GetMapping(\"owners/*/pets/{petId}/visits\")" }, { "backend": "ariadne", "hint": "getOwnerDetails", "output_tokens": 187, "query_ms": 0.2532500075176358, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.642,\"nodes\":[{\"id\":\"spring-petclinic-api-gateway::http::GET::/api/gateway/owners/{ownerId}::getOwnerDetails\",\"label\":\"HTTP GET /api/gateway/owners/{ownerId}\",\"name\":\"getOwnerDetails\",\"service\":\"spring-petclinic-api-gateway\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/{ownerId}::findOwner\",\"label\":\"HTTP GET /owners/{ownerId}\",\"name\":\"findOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/{ownerId}::updateOwner\",\"label\":\"HTTP PUT /owners/{ownerId}\",\"name\":\"updateOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "getOwnerDetails", "output_tokens": 176, "query_ms": 9.789958014152944, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:55:public Mono getOwnerDetails(final @PathVariable int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:60:ReactiveCircuitBreaker cb = cbFactory.create(\"getOwnerDetails\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:71:void getOwnerDetails_withServiceError() {" }, { "backend": "grep", "hint": "getOwnerDetails", "output_tokens": 176, "query_ms": 8.8596660643816, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:55:public Mono getOwnerDetails(final @PathVariable int ownerId) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:60:ReactiveCircuitBreaker cb = cbFactory.create(\"getOwnerDetails\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:71:void getOwnerDetails_withServiceError() {" }, { "backend": "ariadne", "hint": "fallback", "output_tokens": 1, "query_ms": 0.11916703078895807, "rank": null, "result_count": 0, "sample": "spring-petclinic", "serialized_output": "[]" }, { "backend": "rg", "hint": "fallback", "output_tokens": 147, "query_ms": 9.91712510585785, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:9:public class FallbackController {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:11:@PostMapping(\"/fallback\")\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:12:public ResponseEntity fallback() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:68:* Test Resilience4j fallback method" }, { "backend": "grep", "hint": "fallback", "output_tokens": 147, "query_ms": 9.18825005646795, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:9:public class FallbackController {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:11:@PostMapping(\"/fallback\")\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/FallbackController.java:12:public ResponseEntity fallback() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:68:* Test Resilience4j fallback method" }, { "backend": "ariadne", "hint": "findPet", "output_tokens": 248, "query_ms": 0.25874993298202753, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.606,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/*/pets/{petId}::findPet\",\"label\":\"HTTP GET /owners/*/pets/{petId}\",\"name\":\"findPet\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/{ownerId}::findOwner\",\"label\":\"HTTP GET /owners/{ownerId}\",\"name\":\"findOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::GET::/owners/*/pets/{petId}/visits::read\",\"label\":\"HTTP GET /owners/*/pets/{petId}/visits\",\"name\":\"read\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::POST::/owners/*/pets/{petId}/visits::create\",\"label\":\"HTTP POST /owners/*/pets/{petId}/visits\",\"name\":\"create\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "findPet", "output_tokens": 323, "query_ms": 8.749332977458835, "rank": 3, "result_count": 8, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/PetRepository.java:42:List findPetTypes();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/PetRepository.java:45:Optional findPetTypeById(@Param(\"typeId\") int typeId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:51:return petRepository.findPetTypes();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:72:Pet pet = findPetById(petId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:81:petRepository.findPetTypeById(petRequest.typeId())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:89:public PetDetails findPet(@PathVariable(\"petId\") int petId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:90:Pet pet = findPetById(petId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:95:private Pet findPetById(int petId) {" }, { "backend": "grep", "hint": "findPet", "output_tokens": 323, "query_ms": 8.937041973695159, "rank": 3, "result_count": 8, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/PetRepository.java:42:List findPetTypes();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/model/PetRepository.java:45:Optional findPetTypeById(@Param(\"typeId\") int typeId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:51:return petRepository.findPetTypes();\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:72:Pet pet = findPetById(petId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:81:petRepository.findPetTypeById(petRequest.typeId())\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:89:public PetDetails findPet(@PathVariable(\"petId\") int petId) {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:90:Pet pet = findPetById(petId);\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:95:private Pet findPetById(int petId) {" }, { "backend": "ariadne", "hint": "findOwner", "output_tokens": 191, "query_ms": 0.25299994740635157, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.631,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/{ownerId}::findOwner\",\"label\":\"HTTP GET /owners/{ownerId}\",\"name\":\"findOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-api-gateway::http::GET::/api/gateway/owners/{ownerId}::getOwnerDetails\",\"label\":\"HTTP GET /api/gateway/owners/{ownerId}\",\"name\":\"getOwnerDetails\",\"service\":\"spring-petclinic-api-gateway\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/*/pets/{petId}::findPet\",\"label\":\"HTTP GET /owners/*/pets/{petId}\",\"name\":\"findPet\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "findOwner", "output_tokens": 51, "query_ms": 9.173416998237371, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:68:public Optional findOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId) {" }, { "backend": "grep", "hint": "findOwner", "output_tokens": 51, "query_ms": 9.099332964979112, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:68:public Optional findOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId) {" }, { "backend": "ariadne", "hint": "findAll", "output_tokens": 104, "query_ms": 0.2448749728500843, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.504,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::GET::/owners::findAll\",\"label\":\"HTTP GET /owners\",\"name\":\"findAll\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::POST::/owners::createOwner\",\"label\":\"HTTP POST /owners\",\"name\":\"createOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "findAll", "output_tokens": 145, "query_ms": 8.513166918419302, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:76:public List findAll() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:77:return ownerRepository.findAll();\nspring-petclinic-vets-service/src/main/java/org/springframework/samples/petclinic/vets/web/VetResource.java:47:return vetRepository.findAll();\nspring-petclinic-vets-service/src/test/java/org/springframework/samples/petclinic/vets/web/VetResourceTest.java:54:given(vetRepository.findAll()).willReturn(List.of(vet));" }, { "backend": "grep", "hint": "findAll", "output_tokens": 145, "query_ms": 8.935416000895202, "rank": 1, "result_count": 4, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:76:public List findAll() {\nspring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:77:return ownerRepository.findAll();\nspring-petclinic-vets-service/src/main/java/org/springframework/samples/petclinic/vets/web/VetResource.java:47:return vetRepository.findAll();\nspring-petclinic-vets-service/src/test/java/org/springframework/samples/petclinic/vets/web/VetResourceTest.java:54:given(vetRepository.findAll()).willReturn(List.of(vet));" }, { "backend": "ariadne", "hint": "getPetTypes", "output_tokens": 1, "query_ms": 0.11716701555997133, "rank": null, "result_count": 0, "sample": "spring-petclinic", "serialized_output": "[]" }, { "backend": "rg", "hint": "getPetTypes", "output_tokens": 40, "query_ms": 8.809832972474396, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:50:public List getPetTypes() {" }, { "backend": "grep", "hint": "getPetTypes", "output_tokens": 40, "query_ms": 8.902624947950244, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:50:public List getPetTypes() {" }, { "backend": "ariadne", "hint": "processCreationForm", "output_tokens": 132, "query_ms": 0.28525001835078, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.577,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::POST::/owners/{ownerId}/pets::processCreationForm\",\"label\":\"HTTP POST /owners/{ownerId}/pets\",\"name\":\"processCreationForm\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/*/pets/{petId}::processUpdateForm\",\"label\":\"HTTP PUT /owners/*/pets/{petId}\",\"name\":\"processUpdateForm\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "processCreationForm", "output_tokens": 35, "query_ms": 9.197875042445958, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:56:public Pet processCreationForm(" }, { "backend": "grep", "hint": "processCreationForm", "output_tokens": 35, "query_ms": 8.971375063993037, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:56:public Pet processCreationForm(" }, { "backend": "ariadne", "hint": "createOwner", "output_tokens": 165, "query_ms": 0.23674999829381704, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.656,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::POST::/owners::createOwner\",\"label\":\"HTTP POST /owners\",\"name\":\"createOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners::findAll\",\"label\":\"HTTP GET /owners\",\"name\":\"findAll\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::POST::/owners/*/pets/{petId}/visits::create\",\"label\":\"HTTP POST /owners/*/pets/{petId}/visits\",\"name\":\"create\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "createOwner", "output_tokens": 43, "query_ms": 8.465750026516616, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:59:public Owner createOwner(@Valid @RequestBody OwnerRequest ownerRequest) {" }, { "backend": "grep", "hint": "createOwner", "output_tokens": 43, "query_ms": 8.941708947531879, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:59:public Owner createOwner(@Valid @RequestBody OwnerRequest ownerRequest) {" }, { "backend": "ariadne", "hint": "processUpdateForm", "output_tokens": 132, "query_ms": 0.25949999690055847, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.591,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/*/pets/{petId}::processUpdateForm\",\"label\":\"HTTP PUT /owners/*/pets/{petId}\",\"name\":\"processUpdateForm\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::POST::/owners/{ownerId}/pets::processCreationForm\",\"label\":\"HTTP POST /owners/{ownerId}/pets\",\"name\":\"processCreationForm\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "processUpdateForm", "output_tokens": 42, "query_ms": 8.552375016734004, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:70:public void processUpdateForm(@RequestBody PetRequest petRequest) {" }, { "backend": "grep", "hint": "processUpdateForm", "output_tokens": 42, "query_ms": 9.111583000048995, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/PetResource.java:70:public void processUpdateForm(@RequestBody PetRequest petRequest) {" }, { "backend": "ariadne", "hint": "updateOwner", "output_tokens": 187, "query_ms": 0.24524994660168886, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.639,\"nodes\":[{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/{ownerId}::updateOwner\",\"label\":\"HTTP PUT /owners/{ownerId}\",\"name\":\"updateOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-api-gateway::http::GET::/api/gateway/owners/{ownerId}::getOwnerDetails\",\"label\":\"HTTP GET /api/gateway/owners/{ownerId}\",\"name\":\"getOwnerDetails\",\"service\":\"spring-petclinic-api-gateway\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/{ownerId}::findOwner\",\"label\":\"HTTP GET /owners/{ownerId}\",\"name\":\"findOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "updateOwner", "output_tokens": 57, "query_ms": 8.75958299729973, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:85:public void updateOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId, @Valid @RequestBody OwnerRequest ownerRequest) {" }, { "backend": "grep", "hint": "updateOwner", "output_tokens": 57, "query_ms": 8.93162505235523, "rank": 1, "result_count": 1, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-customers-service/src/main/java/org/springframework/samples/petclinic/customers/web/OwnerResource.java:85:public void updateOwner(@PathVariable(\"ownerId\") @Min(1) int ownerId, @Valid @RequestBody OwnerRequest ownerRequest) {" }, { "backend": "ariadne", "hint": "visits", "output_tokens": 482, "query_ms": 0.4061659565195441, "rank": 1, "result_count": 2, "sample": "spring-petclinic", "serialized_output": "[{\"confidence\":0.443,\"nodes\":[{\"id\":\"spring-petclinic-visits-service::http::GET::/pets/visits::read\",\"label\":\"HTTP GET /pets/visits\",\"name\":\"read\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::GET::/owners/*/pets/{petId}/visits::read\",\"label\":\"HTTP GET /owners/*/pets/{petId}/visits\",\"name\":\"read\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/*/pets/{petId}::findPet\",\"label\":\"HTTP GET /owners/*/pets/{petId}\",\"name\":\"findPet\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::PUT::/owners/*/pets/{petId}::processUpdateForm\",\"label\":\"HTTP PUT /owners/*/pets/{petId}\",\"name\":\"processUpdateForm\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]},{\"confidence\":0.411,\"nodes\":[{\"id\":\"spring-petclinic-visits-service::http::GET::/owners/*/pets/{petId}/visits::read\",\"label\":\"HTTP GET /owners/*/pets/{petId}/visits\",\"name\":\"read\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-visits-service::http::POST::/owners/*/pets/{petId}/visits::create\",\"label\":\"HTTP POST /owners/*/pets/{petId}/visits\",\"name\":\"create\",\"service\":\"spring-petclinic-visits-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::GET::/owners/*/pets/{petId}::findPet\",\"label\":\"HTTP GET /owners/*/pets/{petId}\",\"name\":\"findPet\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"},{\"id\":\"spring-petclinic-customers-service::http::POST::/owners::createOwner\",\"label\":\"HTTP POST /owners\",\"name\":\"createOwner\",\"service\":\"spring-petclinic-customers-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "visits", "output_tokens": 3294, "query_ms": 9.623292018659413, "rank": 66, "result_count": 79, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:18:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:31:public class VisitsServiceClient {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:34:private String hostname = \"http://visits-service/\";\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:38:public VisitsServiceClient(WebClient.Builder webClientBuilder) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:42:public Mono getVisitsForPets(final List petIds) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:45:.uri(hostname + \"pets/visits?petId={petId}\", joinIds(petIds))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:47:.bodyToMono(Visits.class);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:21:import org.springframework.samples.petclinic.api.application.VisitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:23:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:42:private final VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:47:VisitsServiceClient visitsServiceClient,\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:50:this.visitsServiceClient = visitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:58:visitsServiceClient.getVisitsForPets(owner.getPetIds())\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:61:return cb.run(it, throwable -> emptyVisitsForPets());\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:63:.map(addVisitsToOwner(owner))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:68:private Function addVisitsToOwner(OwnerDetails owner) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:69:return visits -> {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:71:.forEach(pet -> pet.visits()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:72:.addAll(visits.items().stream()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:80:private Mono emptyVisitsForPets() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:81:return Mono.just(new Visits(List.of()));\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:30:List visits) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:33:if (visits == null) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:34:visits = new ArrayList<>();\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:43:private List visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:72:public PetDetailsBuilder visits(List visits) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:73:this.visits = visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:78:return new PetDetails(id, name, birthDate, type, visits);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/Visits.java:25:public record Visits (\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/Visits.java:28:public Visits() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:8:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:18:class VisitsServiceClientIntegrationTest {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:22:private VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:29:visitsServiceClient = new VisitsServiceClient(WebClient.builder());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:30:visitsServiceClient.setHostname(server.url(\"/\").toString());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:39:void getVisitsForPets_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:42:Mono visits = visitsServiceClient.getVisitsForPets(Collections.singletonList(1));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:44:assertVisitDescriptionEquals(visits.block(), PET_ID,\"test visit\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:48:private void assertVisitDescriptionEquals(Visits visits, int petId, String description) {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:49:assertEquals(1, visits.items().size());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:50:assertNotNull(visits.items().get(0));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:51:assertEquals(petId, visits.items().get(0).petId());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:52:assertEquals(description, visits.items().get(0).description());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:10:import org.springframework.samples.petclinic.api.application.VisitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:14:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:32:private VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:43:.visits(new ArrayList<>())\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:53:Visits visits = new Visits(List.of(visit));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:55:.when(visitsServiceClient.getVisitsForPets(Collections.singletonList(cat.id())))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:56:.thenReturn(Mono.just(visits));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:64:.jsonPath(\"$.pets[0].visits[0].description\").isEqualTo(\"First visit\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:75:.visits(new ArrayList<>())\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:85:.when(visitsServiceClient.getVisitsForPets(Collections.singletonList(cat.id())))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:94:.jsonPath(\"$.pets[0].visits\").isEmpty();\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:38:veterinarians, owners, owners' pets and owners' visits.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:44:For owners, pets or visits - provide the correct data.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/PetDetails.java:30:List visits\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:16:package org.springframework.samples.petclinic.visits;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:27:public class VisitsServiceApplication {\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:30:SpringApplication.run(VisitsServiceApplication.class, args);\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/config/MetricConfig.java:1:package org.springframework.samples.petclinic.visits.config;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/Visit.java:16:package org.springframework.samples.petclinic.visits.model;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/Visit.java:32:@Table(name = \"visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/VisitRepository.java:16:package org.springframework.samples.petclinic.visits.model;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:16:package org.springframework.samples.petclinic.visits.web;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:26:import org.springframework.samples.petclinic.visits.model.Visit;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:27:import org.springframework.samples.petclinic.visits.model.VisitRepository;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:56:@PostMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:67:@GetMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:72:@GetMapping(\"pets/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:73:public Visits read(@RequestParam(\"petId\") List petIds) {\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:75:return new Visits(byPetIdIn);\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:78:record Visits(\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:1:package org.springframework.samples.petclinic.visits.web;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:6:import org.springframework.samples.petclinic.visits.model.Visit;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:7:import org.springframework.samples.petclinic.visits.model.VisitRepository;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:30:void shouldFetchVisits() throws Exception {\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:49:mvc.perform(get(\"/pets/visits?petId=111,222\"))" }, { "backend": "grep", "hint": "visits", "output_tokens": 3294, "query_ms": 9.009625064209104, "rank": 66, "result_count": 79, "sample": "spring-petclinic", "serialized_output": "spring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:18:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:31:public class VisitsServiceClient {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:34:private String hostname = \"http://visits-service/\";\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:38:public VisitsServiceClient(WebClient.Builder webClientBuilder) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:42:public Mono getVisitsForPets(final List petIds) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:45:.uri(hostname + \"pets/visits?petId={petId}\", joinIds(petIds))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/application/VisitsServiceClient.java:47:.bodyToMono(Visits.class);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:21:import org.springframework.samples.petclinic.api.application.VisitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:23:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:42:private final VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:47:VisitsServiceClient visitsServiceClient,\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:50:this.visitsServiceClient = visitsServiceClient;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:58:visitsServiceClient.getVisitsForPets(owner.getPetIds())\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:61:return cb.run(it, throwable -> emptyVisitsForPets());\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:63:.map(addVisitsToOwner(owner))\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:68:private Function addVisitsToOwner(OwnerDetails owner) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:69:return visits -> {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:71:.forEach(pet -> pet.visits()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:72:.addAll(visits.items().stream()\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:80:private Mono emptyVisitsForPets() {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayController.java:81:return Mono.just(new Visits(List.of()));\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:30:List visits) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:33:if (visits == null) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:34:visits = new ArrayList<>();\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:43:private List visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:72:public PetDetailsBuilder visits(List visits) {\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:73:this.visits = visits;\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/PetDetails.java:78:return new PetDetails(id, name, birthDate, type, visits);\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/Visits.java:25:public record Visits (\nspring-petclinic-api-gateway/src/main/java/org/springframework/samples/petclinic/api/dto/Visits.java:28:public Visits() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:8:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:18:class VisitsServiceClientIntegrationTest {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:22:private VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:29:visitsServiceClient = new VisitsServiceClient(WebClient.builder());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:30:visitsServiceClient.setHostname(server.url(\"/\").toString());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:39:void getVisitsForPets_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:42:Mono visits = visitsServiceClient.getVisitsForPets(Collections.singletonList(1));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:44:assertVisitDescriptionEquals(visits.block(), PET_ID,\"test visit\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:48:private void assertVisitDescriptionEquals(Visits visits, int petId, String description) {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:49:assertEquals(1, visits.items().size());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:50:assertNotNull(visits.items().get(0));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:51:assertEquals(petId, visits.items().get(0).petId());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/application/VisitsServiceClientIntegrationTest.java:52:assertEquals(description, visits.items().get(0).description());\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:10:import org.springframework.samples.petclinic.api.application.VisitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:14:import org.springframework.samples.petclinic.api.dto.Visits;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:32:private VisitsServiceClient visitsServiceClient;\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:39:void getOwnerDetails_withAvailableVisitsService() {\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:43:.visits(new ArrayList<>())\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:53:Visits visits = new Visits(List.of(visit));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:55:.when(visitsServiceClient.getVisitsForPets(Collections.singletonList(cat.id())))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:56:.thenReturn(Mono.just(visits));\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:64:.jsonPath(\"$.pets[0].visits[0].description\").isEqualTo(\"First visit\");\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:75:.visits(new ArrayList<>())\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:85:.when(visitsServiceClient.getVisitsForPets(Collections.singletonList(cat.id())))\nspring-petclinic-api-gateway/src/test/java/org/springframework/samples/petclinic/api/boundary/web/ApiGatewayControllerTest.java:94:.jsonPath(\"$.pets[0].visits\").isEmpty();\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:38:veterinarians, owners, owners' pets and owners' visits.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/PetclinicChatClient.java:44:For owners, pets or visits - provide the correct data.\nspring-petclinic-genai-service/src/main/java/org/springframework/samples/petclinic/genai/dto/PetDetails.java:30:List visits\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:16:package org.springframework.samples.petclinic.visits;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:27:public class VisitsServiceApplication {\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/VisitsServiceApplication.java:30:SpringApplication.run(VisitsServiceApplication.class, args);\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/config/MetricConfig.java:1:package org.springframework.samples.petclinic.visits.config;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/Visit.java:16:package org.springframework.samples.petclinic.visits.model;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/Visit.java:32:@Table(name = \"visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/model/VisitRepository.java:16:package org.springframework.samples.petclinic.visits.model;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:16:package org.springframework.samples.petclinic.visits.web;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:26:import org.springframework.samples.petclinic.visits.model.Visit;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:27:import org.springframework.samples.petclinic.visits.model.VisitRepository;\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:56:@PostMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:67:@GetMapping(\"owners/*/pets/{petId}/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:72:@GetMapping(\"pets/visits\")\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:73:public Visits read(@RequestParam(\"petId\") List petIds) {\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:75:return new Visits(byPetIdIn);\nspring-petclinic-visits-service/src/main/java/org/springframework/samples/petclinic/visits/web/VisitResource.java:78:record Visits(\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:1:package org.springframework.samples.petclinic.visits.web;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:6:import org.springframework.samples.petclinic.visits.model.Visit;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:7:import org.springframework.samples.petclinic.visits.model.VisitRepository;\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:30:void shouldFetchVisits() throws Exception {\nspring-petclinic-visits-service/src/test/java/org/springframework/samples/petclinic/visits/web/VisitResourceTest.java:49:mvc.perform(get(\"/pets/visits?petId=111,222\"))" }, { "backend": "ariadne", "hint": "createFeedback", "output_tokens": 341, "query_ms": 1.0107920970767736, "rank": 1, "result_count": 2, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.574,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::createFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::createAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"createAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::addUser\",\"label\":\"GraphQL Mutation\",\"name\":\"addUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]},{\"confidence\":0.538,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::createFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::addGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"addGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "createFeedback", "output_tokens": 928, "query_ms": 16.882750089280307, "rank": 23, "result_count": 37, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:4:export const createFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:8:query: CreateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:14:if (res.errors && !res?.data?.createFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:18:return res.data.createFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:1:export const CreateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:3:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:59:mutation CreateFeedback($input: FeedbackInput!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:60:createFeedback(input: $input) {\npackages/feedback-service/src/e2e/feedback.spec.ts:77:mutation CreateFeedbackConfig($payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:78:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:102:it('CreateFeedbackConfig should create an Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:107:operationName: 'CreateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:115:expect(res.body.data).toHaveProperty('createFeedbackConfig');\npackages/feedback-service/src/e2e/feedback.spec.ts:116:expect(res.body.data.createFeedbackConfig).toHaveProperty('appId', mock.feedbackConfigMock.appId);\npackages/feedback-service/src/e2e/feedback.spec.ts:140:it('createFeedback should create a feedback', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:145:operationName: 'CreateFeedback',\npackages/feedback-service/src/e2e/feedback.spec.ts:153:expect(res.body.data).toHaveProperty('createFeedback');\npackages/feedback-service/src/feedback-config/resolver.ts:50:createFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:52:{ payload }: MutationCreateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:52:createFeedbackConfig(payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:127:async createFeedback(root: any, args: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:126:createFeedback(input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/types.d.ts:70:type MutationCreateFeedbackConfigArgs = {\npackages/opc-base/src/gql/opc-app-layout.ts:43:mutation CreateFeedback($input: FeedbackInput!) {\npackages/opc-base/src/gql/opc-app-layout.ts:44:createFeedback(input: $input) {\npackages/opc-base/src/gql/types.ts:34:export type CreateFeedback = {\npackages/opc-base/src/gql/types.ts:35:createFeedback: FeedbackReturn;\npackages/opc-base/src/gql/types.ts:38:export type CreateFeedbackVariable = {\npackages/opc-base/src/opc-base/types.ts:1:import { CreateFeedbackVariable, FeedbackReturn } from \"../gql/types\";\npackages/opc-base/src/opc-base/types.ts:23:sendFeedback: (feedback: CreateFeedbackVariable[\"input\"]) => FeedbackReturn;\npackages/opc-base/src/opc-provider/opc-provider.ts:26:CreateFeedback,\npackages/opc-base/src/opc-provider/opc-provider.ts:27:CreateFeedbackVariable,\npackages/opc-base/src/opc-provider/opc-provider.ts:421:feedbackInput: Omit\npackages/opc-base/src/opc-provider/opc-provider.ts:425:.mutation(CREATE_FEEDBACK, {\npackages/opc-base/src/opc-provider/opc-provider.ts:429:if (res?.data?.createFeedback) {\npackages/opc-base/src/opc-provider/opc-provider.ts:433:link: res?.data?.createFeedback?.ticketUrl," }, { "backend": "grep", "hint": "createFeedback", "output_tokens": 928, "query_ms": 38.04141690488905, "rank": 23, "result_count": 37, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:4:export const createFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:8:query: CreateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:14:if (res.errors && !res?.data?.createFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:18:return res.data.createFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:1:export const CreateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:3:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:59:mutation CreateFeedback($input: FeedbackInput!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:60:createFeedback(input: $input) {\npackages/feedback-service/src/e2e/feedback.spec.ts:77:mutation CreateFeedbackConfig($payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:78:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:102:it('CreateFeedbackConfig should create an Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:107:operationName: 'CreateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:115:expect(res.body.data).toHaveProperty('createFeedbackConfig');\npackages/feedback-service/src/e2e/feedback.spec.ts:116:expect(res.body.data.createFeedbackConfig).toHaveProperty('appId', mock.feedbackConfigMock.appId);\npackages/feedback-service/src/e2e/feedback.spec.ts:140:it('createFeedback should create a feedback', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:145:operationName: 'CreateFeedback',\npackages/feedback-service/src/e2e/feedback.spec.ts:153:expect(res.body.data).toHaveProperty('createFeedback');\npackages/feedback-service/src/feedback-config/resolver.ts:50:createFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:52:{ payload }: MutationCreateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:52:createFeedbackConfig(payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:127:async createFeedback(root: any, args: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:126:createFeedback(input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/types.d.ts:70:type MutationCreateFeedbackConfigArgs = {\npackages/opc-base/src/gql/opc-app-layout.ts:43:mutation CreateFeedback($input: FeedbackInput!) {\npackages/opc-base/src/gql/opc-app-layout.ts:44:createFeedback(input: $input) {\npackages/opc-base/src/gql/types.ts:34:export type CreateFeedback = {\npackages/opc-base/src/gql/types.ts:35:createFeedback: FeedbackReturn;\npackages/opc-base/src/gql/types.ts:38:export type CreateFeedbackVariable = {\npackages/opc-base/src/opc-base/types.ts:1:import { CreateFeedbackVariable, FeedbackReturn } from \"../gql/types\";\npackages/opc-base/src/opc-base/types.ts:23:sendFeedback: (feedback: CreateFeedbackVariable[\"input\"]) => FeedbackReturn;\npackages/opc-base/src/opc-provider/opc-provider.ts:26:CreateFeedback,\npackages/opc-base/src/opc-provider/opc-provider.ts:27:CreateFeedbackVariable,\npackages/opc-base/src/opc-provider/opc-provider.ts:421:feedbackInput: Omit\npackages/opc-base/src/opc-provider/opc-provider.ts:425:.mutation(CREATE_FEEDBACK, {\npackages/opc-base/src/opc-provider/opc-provider.ts:429:if (res?.data?.createFeedback) {\npackages/opc-base/src/opc-provider/opc-provider.ts:433:link: res?.data?.createFeedback?.ticketUrl," }, { "backend": "ariadne", "hint": "deleteFeedback", "output_tokens": 261, "query_ms": 0.8312499849125743, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.718,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::deleteFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteUser\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::deleteFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "deleteFeedback", "output_tokens": 393, "query_ms": 16.6953339939937, "rank": 15, "result_count": 16, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:65:mutation DeleteFeedback($id: ID!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:66:deleteFeedback(id: $id) {\npackages/feedback-service/src/e2e/feedback.spec.ts:89:mutation DeleteFeedbackConfig($id:ID!){\npackages/feedback-service/src/e2e/feedback.spec.ts:90:deleteFeedbackConfig(id:$id) {\npackages/feedback-service/src/e2e/feedback.spec.ts:176:it('deleteFeedback should delete a feedback', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:181:operationName: 'DeleteFeedback',\npackages/feedback-service/src/e2e/feedback.spec.ts:187:expect(res.body.data).toHaveProperty('deleteFeedback');\npackages/feedback-service/src/e2e/feedback.spec.ts:214:it('DeleteFeedbackConfig should delete a feedback config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:219:operationName: 'DeleteFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:227:expect(res.body.data).toHaveProperty('deleteFeedbackConfig');\npackages/feedback-service/src/feedback-config/resolver.ts:69:deleteFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:71:{ id }: MutationDeleteFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:54:deleteFeedbackConfig(id: ID!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:212:async deleteFeedback(root: any, { id }: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:134:deleteFeedback(id: ID!): FeedbackType\npackages/feedback-service/src/types.d.ts:79:type MutationDeleteFeedbackConfigArgs = {" }, { "backend": "grep", "hint": "deleteFeedback", "output_tokens": 393, "query_ms": 36.92629199940711, "rank": 15, "result_count": 16, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:65:mutation DeleteFeedback($id: ID!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:66:deleteFeedback(id: $id) {\npackages/feedback-service/src/e2e/feedback.spec.ts:89:mutation DeleteFeedbackConfig($id:ID!){\npackages/feedback-service/src/e2e/feedback.spec.ts:90:deleteFeedbackConfig(id:$id) {\npackages/feedback-service/src/e2e/feedback.spec.ts:176:it('deleteFeedback should delete a feedback', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:181:operationName: 'DeleteFeedback',\npackages/feedback-service/src/e2e/feedback.spec.ts:187:expect(res.body.data).toHaveProperty('deleteFeedback');\npackages/feedback-service/src/e2e/feedback.spec.ts:214:it('DeleteFeedbackConfig should delete a feedback config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:219:operationName: 'DeleteFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:227:expect(res.body.data).toHaveProperty('deleteFeedbackConfig');\npackages/feedback-service/src/feedback-config/resolver.ts:69:deleteFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:71:{ id }: MutationDeleteFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:54:deleteFeedbackConfig(id: ID!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:212:async deleteFeedback(root: any, { id }: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:134:deleteFeedback(id: ID!): FeedbackType\npackages/feedback-service/src/types.d.ts:79:type MutationDeleteFeedbackConfigArgs = {" }, { "backend": "ariadne", "hint": "updateFeedback", "output_tokens": 154, "query_ms": 0.7187080336734653, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.561,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::updateFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateUser\",\"label\":\"GraphQL Mutation\",\"name\":\"updateUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "updateFeedback", "output_tokens": 542, "query_ms": 15.652416972443461, "rank": 18, "result_count": 20, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:26:export const updateFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:31:query: UpdateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:38:if (res.errors && !res?.data?.updateFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:42:return res.data.updateFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/update-feedback-config.ts:1:export const UpdateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/update-feedback-config.ts:3:updateFeedbackConfig(id: $id, payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:83:mutation UpdateFeedbackConfig($id:ID, $payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:84:updateFeedbackConfig(id:$id,payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:194:it('UpdateFeedbackConfig should update a Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:199:operationName: 'UpdateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:208:expect(res.body.data).toHaveProperty('updateFeedbackConfig');\npackages/feedback-service/src/feedback-config/resolver.ts:61:updateFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:63:{ id, payload }: MutationUpdateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:53:updateFeedbackConfig(id:ID, payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:206:updateFeedback(root: any, { id, input }: any, ctx: any) {\npackages/feedback-service/src/feedbacks/resolver.ts:222:async updateFeedbackIndex(root: any, args: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:130:updateFeedback(id:ID!, input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:138:updateFeedbackIndex: FeedbackIndexResponseCode\npackages/feedback-service/src/types.d.ts:74:type MutationUpdateFeedbackConfigArgs = {" }, { "backend": "grep", "hint": "updateFeedback", "output_tokens": 542, "query_ms": 36.454458022490144, "rank": 18, "result_count": 20, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:26:export const updateFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:31:query: UpdateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:38:if (res.errors && !res?.data?.updateFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:42:return res.data.updateFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/update-feedback-config.ts:1:export const UpdateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/update-feedback-config.ts:3:updateFeedbackConfig(id: $id, payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:83:mutation UpdateFeedbackConfig($id:ID, $payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:84:updateFeedbackConfig(id:$id,payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:194:it('UpdateFeedbackConfig should update a Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:199:operationName: 'UpdateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:208:expect(res.body.data).toHaveProperty('updateFeedbackConfig');\npackages/feedback-service/src/feedback-config/resolver.ts:61:updateFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:63:{ id, payload }: MutationUpdateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:53:updateFeedbackConfig(id:ID, payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/feedbacks/resolver.ts:206:updateFeedback(root: any, { id, input }: any, ctx: any) {\npackages/feedback-service/src/feedbacks/resolver.ts:222:async updateFeedbackIndex(root: any, args: any, ctx: any) {\npackages/feedback-service/src/feedbacks/typedef.graphql:130:updateFeedback(id:ID!, input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:138:updateFeedbackIndex: FeedbackIndexResponseCode\npackages/feedback-service/src/types.d.ts:74:type MutationUpdateFeedbackConfigArgs = {" }, { "backend": "ariadne", "hint": "getFeedbackById", "output_tokens": 361, "query_ms": 1.5221670037135482, "rank": 1, "result_count": 3, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.695,\"nodes\":[{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getGroupsBy\",\"label\":\"GraphQL Query\",\"name\":\"getGroupsBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getUsersBy\",\"label\":\"GraphQL Query\",\"name\":\"getUsersBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.585,\"nodes\":[{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getUsersBy\",\"label\":\"GraphQL Query\",\"name\":\"getUsersBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.573,\"nodes\":[{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getGroupsBy\",\"label\":\"GraphQL Query\",\"name\":\"getGroupsBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getAPIKeysBy\",\"label\":\"GraphQL Query\",\"name\":\"getAPIKeysBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]}]" }, { "backend": "rg", "hint": "getFeedbackById", "output_tokens": 178, "query_ms": 16.02949993684888, "rank": 4, "result_count": 8, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:53:query GetFeedbackById($id: ID!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:54:getFeedbackById(id: $id) {\npackages/feedback-service/src/feedbacks/resolver.ts:86:async getFeedbackById(\npackages/feedback-service/src/feedbacks/typedef.graphql:113:getFeedbackById(\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedback.ts:2:query GetFeedbackById($id: ID!) {\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedback.ts:3:getFeedbackById(id: $id) {\npackages/feedback-spa/src/pages/HomePage/types.ts:20:export type GetFeedbackById = {\npackages/feedback-spa/src/pages/HomePage/types.ts:21:getFeedbackById: Feedback;" }, { "backend": "grep", "hint": "getFeedbackById", "output_tokens": 178, "query_ms": 37.299083080142736, "rank": 4, "result_count": 8, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:53:query GetFeedbackById($id: ID!) {\npackages/feedback-service/src/e2e/feedback.spec.ts:54:getFeedbackById(id: $id) {\npackages/feedback-service/src/feedbacks/resolver.ts:86:async getFeedbackById(\npackages/feedback-service/src/feedbacks/typedef.graphql:113:getFeedbackById(\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedback.ts:2:query GetFeedbackById($id: ID!) {\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedback.ts:3:getFeedbackById(id: $id) {\npackages/feedback-spa/src/pages/HomePage/types.ts:20:export type GetFeedbackById = {\npackages/feedback-spa/src/pages/HomePage/types.ts:21:getFeedbackById: Feedback;" }, { "backend": "ariadne", "hint": "searchFeedbacks", "output_tokens": 121, "query_ms": 0.6425830069929361, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.647,\"nodes\":[{\"id\":\"feedback-service::gql::Query::searchFeedbacks\",\"label\":\"GraphQL Query\",\"name\":\"searchFeedbacks\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::searchRoverUsers\",\"label\":\"GraphQL Query\",\"name\":\"searchRoverUsers\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::type::MembershipType\",\"label\":\"GraphQL Type\",\"name\":\"MembershipType\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "searchFeedbacks", "output_tokens": 44, "query_ms": 15.702333999797702, "rank": 2, "result_count": 2, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/feedbacks/resolver.ts:93:async searchFeedbacks(\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType" }, { "backend": "grep", "hint": "searchFeedbacks", "output_tokens": 44, "query_ms": 37.46520809363574, "rank": 2, "result_count": 2, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/feedbacks/resolver.ts:93:async searchFeedbacks(\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType" }, { "backend": "ariadne", "hint": "listFeedbacks", "output_tokens": 1, "query_ms": 0.34866691567003727, "rank": null, "result_count": 0, "sample": "one-platform", "serialized_output": "[]" }, { "backend": "rg", "hint": "listFeedbacks", "output_tokens": 294, "query_ms": 16.051874961704016, "rank": 7, "result_count": 10, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedback.ts:26:if (res?.errors && !res?.data?.listFeedbacks) {\npackages/developer-console-spa/src/common/services/feedback.ts:30:return res.data.listFeedbacks;\npackages/developer-console-spa/src/common/utils/gql-queries/get-project-feedbacks.ts:9:listFeedbacks(\npackages/feedback-service/src/e2e/feedback.spec.ts:47:query ListFeedbacks {\npackages/feedback-service/src/e2e/feedback.spec.ts:48:listFeedbacks {\npackages/feedback-service/src/feedbacks/resolver.ts:17:async listFeedbacks(\npackages/feedback-service/src/feedbacks/typedef.graphql:94:listFeedbacks(\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedbackList.ts:2:query ListFeedbacks($status: FeedbackStatus, $category: [FeedbackCategory], $appId: [String], $search: String, $createdBy: String, $limit: Int, $offset: Int) {\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedbackList.ts:3:listFeedbacks(status: $status, category: $category, appId: $appId,search: $search, createdBy: $createdBy, limit: $limit, offset: $offset) {\npackages/feedback-spa/src/pages/HomePage/types.ts:17:listFeedbacks: Pagination;" }, { "backend": "grep", "hint": "listFeedbacks", "output_tokens": 294, "query_ms": 36.81129193864763, "rank": 7, "result_count": 10, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedback.ts:26:if (res?.errors && !res?.data?.listFeedbacks) {\npackages/developer-console-spa/src/common/services/feedback.ts:30:return res.data.listFeedbacks;\npackages/developer-console-spa/src/common/utils/gql-queries/get-project-feedbacks.ts:9:listFeedbacks(\npackages/feedback-service/src/e2e/feedback.spec.ts:47:query ListFeedbacks {\npackages/feedback-service/src/e2e/feedback.spec.ts:48:listFeedbacks {\npackages/feedback-service/src/feedbacks/resolver.ts:17:async listFeedbacks(\npackages/feedback-service/src/feedbacks/typedef.graphql:94:listFeedbacks(\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedbackList.ts:2:query ListFeedbacks($status: FeedbackStatus, $category: [FeedbackCategory], $appId: [String], $search: String, $createdBy: String, $limit: Int, $offset: Int) {\npackages/feedback-spa/src/pages/HomePage/gql/GetFeedbackList.ts:3:listFeedbacks(status: $status, category: $category, appId: $appId,search: $search, createdBy: $createdBy, limit: $limit, offset: $offset) {\npackages/feedback-spa/src/pages/HomePage/types.ts:17:listFeedbacks: Pagination;" }, { "backend": "ariadne", "hint": "createFeedbackConfig", "output_tokens": 152, "query_ms": 0.6912919925525784, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.589,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::createFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::addGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"addGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "createFeedbackConfig", "output_tokens": 444, "query_ms": 15.721082920208573, "rank": 16, "result_count": 17, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:4:export const createFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:8:query: CreateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:14:if (res.errors && !res?.data?.createFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:18:return res.data.createFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:1:export const CreateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:3:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:77:mutation CreateFeedbackConfig($payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:78:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:102:it('CreateFeedbackConfig should create an Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:107:operationName: 'CreateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:115:expect(res.body.data).toHaveProperty('createFeedbackConfig');\npackages/feedback-service/src/e2e/feedback.spec.ts:116:expect(res.body.data.createFeedbackConfig).toHaveProperty('appId', mock.feedbackConfigMock.appId);\npackages/feedback-service/src/feedback-config/resolver.ts:50:createFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:52:{ payload }: MutationCreateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:52:createFeedbackConfig(payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/types.d.ts:70:type MutationCreateFeedbackConfigArgs = {" }, { "backend": "grep", "hint": "createFeedbackConfig", "output_tokens": 444, "query_ms": 36.5657500224188, "rank": 16, "result_count": 17, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/common/services/feedbackConfig.ts:1:import { CreateFeedbackConfig, UpdateFeedbackConfig } from 'common/utils/gql-queries';\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:4:export const createFeedbackConfigService = async (\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:8:query: CreateFeedbackConfig,\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:14:if (res.errors && !res?.data?.createFeedbackConfig) {\npackages/developer-console-spa/src/common/services/feedbackConfig.ts:18:return res.data.createFeedbackConfig;\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:1:export const CreateFeedbackConfig = /* GraphQL */ `\npackages/developer-console-spa/src/common/utils/gql-queries/create-feedback-config.ts:3:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:77:mutation CreateFeedbackConfig($payload: FeedbackConfigInput!){\npackages/feedback-service/src/e2e/feedback.spec.ts:78:createFeedbackConfig(payload: $payload) {\npackages/feedback-service/src/e2e/feedback.spec.ts:102:it('CreateFeedbackConfig should create an Feedback Config', (done) => {\npackages/feedback-service/src/e2e/feedback.spec.ts:107:operationName: 'CreateFeedbackConfig',\npackages/feedback-service/src/e2e/feedback.spec.ts:115:expect(res.body.data).toHaveProperty('createFeedbackConfig');\npackages/feedback-service/src/e2e/feedback.spec.ts:116:expect(res.body.data.createFeedbackConfig).toHaveProperty('appId', mock.feedbackConfigMock.appId);\npackages/feedback-service/src/feedback-config/resolver.ts:50:createFeedbackConfig(\npackages/feedback-service/src/feedback-config/resolver.ts:52:{ payload }: MutationCreateFeedbackConfigArgs,\npackages/feedback-service/src/feedback-config/typedef.graphql:52:createFeedbackConfig(payload: FeedbackConfigInput!): FeedbackConfigType\npackages/feedback-service/src/types.d.ts:70:type MutationCreateFeedbackConfigArgs = {" }, { "backend": "ariadne", "hint": "getFeedbackConfigByProjectKey", "output_tokens": 338, "query_ms": 1.732999924570322, "rank": 2, "result_count": 3, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.672,\"nodes\":[{\"id\":\"feedback-service::gql::Query::getFeedbackConfigByProjectId\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigByProjectId\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getGroupsBy\",\"label\":\"GraphQL Query\",\"name\":\"getGroupsBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::Query::getUsersBy\",\"label\":\"GraphQL Query\",\"name\":\"getUsersBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.588,\"nodes\":[{\"id\":\"feedback-service::gql::Query::getFeedbackConfigByProjectKey\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigByProjectKey\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigByProjectId\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigByProjectId\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.418,\"nodes\":[{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::FullAPIKey\",\"label\":\"GraphQL Type\",\"name\":\"FullAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "getFeedbackConfigByProjectKey", "output_tokens": 51, "query_ms": 16.254874994046986, "rank": 2, "result_count": 2, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/feedback-config/resolver.ts:41:getFeedbackConfigByProjectKey(\npackages/feedback-service/src/feedback-config/typedef.graphql:48:getFeedbackConfigByProjectKey(projectKey: String!): [FeedbackConfigType]" }, { "backend": "grep", "hint": "getFeedbackConfigByProjectKey", "output_tokens": 51, "query_ms": 37.10725007113069, "rank": 2, "result_count": 2, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/feedback-config/resolver.ts:41:getFeedbackConfigByProjectKey(\npackages/feedback-service/src/feedback-config/typedef.graphql:48:getFeedbackConfigByProjectKey(projectKey: String!): [FeedbackConfigType]" }, { "backend": "ariadne", "hint": "FeedbackType", "output_tokens": 355, "query_ms": 1.5083339530974627, "rank": 1, "result_count": 3, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.575,\"nodes\":[{\"id\":\"user-group-service::gql::type::UserType\",\"label\":\"GraphQL Type\",\"name\":\"UserType\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"feedback-service::gql::type::FeedbackType\",\"label\":\"GraphQL Type\",\"name\":\"FeedbackType\",\"service\":\"feedback-service\",\"type\":\"graphql_type\"},{\"id\":\"feedback-service::gql::type::FeedbackConfigType\",\"label\":\"GraphQL Type\",\"name\":\"FeedbackConfigType\",\"service\":\"feedback-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::RoverUserType\",\"label\":\"GraphQL Type\",\"name\":\"RoverUserType\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::Query::getUsersBy\",\"label\":\"GraphQL Query\",\"name\":\"getUsersBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.524,\"nodes\":[{\"id\":\"user-group-service::gql::type::MembershipType\",\"label\":\"GraphQL Type\",\"name\":\"MembershipType\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"feedback-service::gql::Query::searchFeedbacks\",\"label\":\"GraphQL Query\",\"name\":\"searchFeedbacks\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"}]},{\"confidence\":0.468,\"nodes\":[{\"id\":\"feedback-service::gql::type::FeedbackAssigneeType\",\"label\":\"GraphQL Type\",\"name\":\"FeedbackAssigneeType\",\"service\":\"feedback-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::Query::getUsersBy\",\"label\":\"GraphQL Query\",\"name\":\"getUsersBy\",\"service\":\"user-group-service\",\"type\":\"graphql_query\"}]}]" }, { "backend": "rg", "hint": "FeedbackType", "output_tokens": 750, "query_ms": 16.93050004541874, "rank": 16, "result_count": 34, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/@types/Feedback/types.d.ts:31:declare type FeedbackType = {\npackages/developer-console-spa/src/common/services/feedback.ts:14:): Promise<{ count: number; data: Partial[] }> => {\npackages/feedback-service/src/e2e/feedback.spec.ts:10:fragment feedbackType on FeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:26:fragment paginatedFeedbackType on PaginatedFeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:29:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:49:...paginatedFeedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:55:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:61:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:67:...feedbackType\npackages/feedback-service/src/feedbacks/resolver.ts:84:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:123:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:167:.then(async (response: FeedbackType) => {\npackages/feedback-service/src/feedbacks/resolver.ts:226:.then(async (feedbacks: FeedbackType[]) => {\npackages/feedback-service/src/feedbacks/resolver.ts:227:feedbacks.forEach(async (data: FeedbackType) => {\npackages/feedback-service/src/feedbacks/schema.ts:23:export interface FeedbackModel extends FeedbackType, Document { }\npackages/feedback-service/src/feedbacks/typedef.graphql:49:type FeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:86:type PaginatedFeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:88:data: [FeedbackType]\npackages/feedback-service/src/feedbacks/typedef.graphql:109:): PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:115:): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:126:createFeedback(input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:130:updateFeedback(id:ID!, input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:134:deleteFeedback(id: ID!): FeedbackType\npackages/feedback-service/src/helpers.ts:31:export function processIntegrationInput(userFeedback: FeedbackType, app: any, userData: any) {\npackages/feedback-service/src/helpers.ts:321:feedback: FeedbackType,\npackages/feedback-service/src/helpers.ts:383:async (record: FeedbackType, keyIndex: number) => {\npackages/feedback-service/src/jobs/index.ts:7:userFeedback: FeedbackType,\npackages/feedback-service/src/types.d.ts:28:type FeedbackType = {\npackages/feedback-service/src/types.d.ts:47:type PaginatedFeedbackType = {\npackages/feedback-service/src/types.d.ts:49:data: Array;\npackages/feedback-spa/src/pages/HomePage/types.ts:5:FeedbackTypeAPI,\npackages/feedback-spa/src/pages/HomePage/types.ts:10:export type Feedback = Omit;\npackages/feedback-spa/src/types.ts:27:export type FeedbackTypeAPI = {" }, { "backend": "grep", "hint": "FeedbackType", "output_tokens": 750, "query_ms": 37.07462502643466, "rank": 16, "result_count": 34, "sample": "one-platform", "serialized_output": "packages/developer-console-spa/src/@types/Feedback/types.d.ts:31:declare type FeedbackType = {\npackages/developer-console-spa/src/common/services/feedback.ts:14:): Promise<{ count: number; data: Partial[] }> => {\npackages/feedback-service/src/e2e/feedback.spec.ts:10:fragment feedbackType on FeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:26:fragment paginatedFeedbackType on PaginatedFeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:29:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:49:...paginatedFeedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:55:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:61:...feedbackType\npackages/feedback-service/src/e2e/feedback.spec.ts:67:...feedbackType\npackages/feedback-service/src/feedbacks/resolver.ts:84:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:123:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:167:.then(async (response: FeedbackType) => {\npackages/feedback-service/src/feedbacks/resolver.ts:226:.then(async (feedbacks: FeedbackType[]) => {\npackages/feedback-service/src/feedbacks/resolver.ts:227:feedbacks.forEach(async (data: FeedbackType) => {\npackages/feedback-service/src/feedbacks/schema.ts:23:export interface FeedbackModel extends FeedbackType, Document { }\npackages/feedback-service/src/feedbacks/typedef.graphql:49:type FeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:86:type PaginatedFeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:88:data: [FeedbackType]\npackages/feedback-service/src/feedbacks/typedef.graphql:109:): PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:115:): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:126:createFeedback(input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:130:updateFeedback(id:ID!, input: FeedbackInput!): FeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:134:deleteFeedback(id: ID!): FeedbackType\npackages/feedback-service/src/helpers.ts:31:export function processIntegrationInput(userFeedback: FeedbackType, app: any, userData: any) {\npackages/feedback-service/src/helpers.ts:321:feedback: FeedbackType,\npackages/feedback-service/src/helpers.ts:383:async (record: FeedbackType, keyIndex: number) => {\npackages/feedback-service/src/jobs/index.ts:7:userFeedback: FeedbackType,\npackages/feedback-service/src/types.d.ts:28:type FeedbackType = {\npackages/feedback-service/src/types.d.ts:47:type PaginatedFeedbackType = {\npackages/feedback-service/src/types.d.ts:49:data: Array;\npackages/feedback-spa/src/pages/HomePage/types.ts:5:FeedbackTypeAPI,\npackages/feedback-spa/src/pages/HomePage/types.ts:10:export type Feedback = Omit;\npackages/feedback-spa/src/types.ts:27:export type FeedbackTypeAPI = {" }, { "backend": "ariadne", "hint": "PaginatedFeedbackType", "output_tokens": 1, "query_ms": 0.3516669385135174, "rank": null, "result_count": 0, "sample": "one-platform", "serialized_output": "[]" }, { "backend": "rg", "hint": "PaginatedFeedbackType", "output_tokens": 174, "query_ms": 16.886041034013033, "rank": 5, "result_count": 8, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:26:fragment paginatedFeedbackType on PaginatedFeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:49:...paginatedFeedbackType\npackages/feedback-service/src/feedbacks/resolver.ts:84:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:123:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/typedef.graphql:86:type PaginatedFeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:109:): PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType\npackages/feedback-service/src/types.d.ts:47:type PaginatedFeedbackType = {" }, { "backend": "grep", "hint": "PaginatedFeedbackType", "output_tokens": 174, "query_ms": 37.84379200078547, "rank": 5, "result_count": 8, "sample": "one-platform", "serialized_output": "packages/feedback-service/src/e2e/feedback.spec.ts:26:fragment paginatedFeedbackType on PaginatedFeedbackType {\npackages/feedback-service/src/e2e/feedback.spec.ts:49:...paginatedFeedbackType\npackages/feedback-service/src/feedbacks/resolver.ts:84:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/resolver.ts:123:} as PaginatedFeedbackType;\npackages/feedback-service/src/feedbacks/typedef.graphql:86:type PaginatedFeedbackType {\npackages/feedback-service/src/feedbacks/typedef.graphql:109:): PaginatedFeedbackType\npackages/feedback-service/src/feedbacks/typedef.graphql:119:searchFeedbacks(searchQuery:String):PaginatedFeedbackType\npackages/feedback-service/src/types.d.ts:47:type PaginatedFeedbackType = {" }, { "backend": "ariadne", "hint": "addGroup", "output_tokens": 304, "query_ms": 0.9962089825421572, "rank": 2, "result_count": 2, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.559,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::addUser\",\"label\":\"GraphQL Mutation\",\"name\":\"addUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateUser\",\"label\":\"GraphQL Mutation\",\"name\":\"updateUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.544,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::addGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"addGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "addGroup", "output_tokens": 250, "query_ms": 15.439167036674917, "rank": 9, "result_count": 10, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:58:mutation AddingGroup($payload: AddGroupInput!) {\npackages/user-group-service/src/e2e/user.spec.ts:59:addGroup(payload: $payload) {\npackages/user-group-service/src/e2e/user.spec.ts:346:expect(res.body.data).toHaveProperty('addGroup');\npackages/user-group-service/src/e2e/user.spec.ts:347:expect(res.body.data.addGroup).toHaveProperty('_id');\npackages/user-group-service/src/e2e/user.spec.ts:348:tempGroupId = res.body.data.addGroup._id;\npackages/user-group-service/src/e2e/user.spec.ts:349:expect(res.body.data.addGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:350:expect(res.body.data.addGroup).toHaveProperty('name', mockGroup.name);\npackages/user-group-service/src/groups/resolver.ts:41:addGroup(root: any, { payload }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:20:addGroup(payload: AddGroupInput!): Group\npackages/user-group-service/src/groups/typedef.graphql:42:input AddGroupInput {" }, { "backend": "grep", "hint": "addGroup", "output_tokens": 250, "query_ms": 36.23874997720122, "rank": 9, "result_count": 10, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:58:mutation AddingGroup($payload: AddGroupInput!) {\npackages/user-group-service/src/e2e/user.spec.ts:59:addGroup(payload: $payload) {\npackages/user-group-service/src/e2e/user.spec.ts:346:expect(res.body.data).toHaveProperty('addGroup');\npackages/user-group-service/src/e2e/user.spec.ts:347:expect(res.body.data.addGroup).toHaveProperty('_id');\npackages/user-group-service/src/e2e/user.spec.ts:348:tempGroupId = res.body.data.addGroup._id;\npackages/user-group-service/src/e2e/user.spec.ts:349:expect(res.body.data.addGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:350:expect(res.body.data.addGroup).toHaveProperty('name', mockGroup.name);\npackages/user-group-service/src/groups/resolver.ts:41:addGroup(root: any, { payload }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:20:addGroup(payload: AddGroupInput!): Group\npackages/user-group-service/src/groups/typedef.graphql:42:input AddGroupInput {" }, { "backend": "ariadne", "hint": "deleteGroup", "output_tokens": 261, "query_ms": 0.8422080427408218, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.718,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::deleteFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteUser\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::deleteFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "deleteGroup", "output_tokens": 180, "query_ms": 16.011458006687462, "rank": 7, "result_count": 7, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:71:deleteGroup(id: $id) {\npackages/user-group-service/src/e2e/user.spec.ts:511:expect(res.body.data).toHaveProperty('deleteGroup');\npackages/user-group-service/src/e2e/user.spec.ts:512:expect(res.body.data.deleteGroup).toHaveProperty('_id', tempGroupId);\npackages/user-group-service/src/e2e/user.spec.ts:513:expect(res.body.data.deleteGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:514:expect(res.body.data.deleteGroup).toHaveProperty(\npackages/user-group-service/src/groups/resolver.ts:60:deleteGroup(root: any, { id }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:28:deleteGroup(id: ID!): Group" }, { "backend": "grep", "hint": "deleteGroup", "output_tokens": 180, "query_ms": 36.586917005479336, "rank": 7, "result_count": 7, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:71:deleteGroup(id: $id) {\npackages/user-group-service/src/e2e/user.spec.ts:511:expect(res.body.data).toHaveProperty('deleteGroup');\npackages/user-group-service/src/e2e/user.spec.ts:512:expect(res.body.data.deleteGroup).toHaveProperty('_id', tempGroupId);\npackages/user-group-service/src/e2e/user.spec.ts:513:expect(res.body.data.deleteGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:514:expect(res.body.data.deleteGroup).toHaveProperty(\npackages/user-group-service/src/groups/resolver.ts:60:deleteGroup(root: any, { id }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:28:deleteGroup(id: ID!): Group" }, { "backend": "ariadne", "hint": "updateGroup", "output_tokens": 154, "query_ms": 0.7320840377360582, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.561,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::updateFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateUser\",\"label\":\"GraphQL Mutation\",\"name\":\"updateUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "updateGroup", "output_tokens": 239, "query_ms": 15.898582991212606, "rank": 8, "result_count": 9, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:64:mutation UpdatingGroup($id: ID!, $payload: UpdateGroupInput!) {\npackages/user-group-service/src/e2e/user.spec.ts:65:updateGroup(id: $id, payload: $payload) {\npackages/user-group-service/src/e2e/user.spec.ts:379:expect(res.body.data).toHaveProperty('updateGroup');\npackages/user-group-service/src/e2e/user.spec.ts:380:expect(res.body.data.updateGroup).toHaveProperty('_id', tempGroupId);\npackages/user-group-service/src/e2e/user.spec.ts:381:expect(res.body.data.updateGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:382:expect(res.body.data.updateGroup).toHaveProperty(\npackages/user-group-service/src/groups/resolver.ts:50:updateGroup(root: any, { id, payload }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:24:updateGroup(id: ID!, payload: UpdateGroupInput!): Group\npackages/user-group-service/src/groups/typedef.graphql:53:input UpdateGroupInput {" }, { "backend": "grep", "hint": "updateGroup", "output_tokens": 239, "query_ms": 36.38362500350922, "rank": 8, "result_count": 9, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:64:mutation UpdatingGroup($id: ID!, $payload: UpdateGroupInput!) {\npackages/user-group-service/src/e2e/user.spec.ts:65:updateGroup(id: $id, payload: $payload) {\npackages/user-group-service/src/e2e/user.spec.ts:379:expect(res.body.data).toHaveProperty('updateGroup');\npackages/user-group-service/src/e2e/user.spec.ts:380:expect(res.body.data.updateGroup).toHaveProperty('_id', tempGroupId);\npackages/user-group-service/src/e2e/user.spec.ts:381:expect(res.body.data.updateGroup).toHaveProperty('cn', mockGroup.cn);\npackages/user-group-service/src/e2e/user.spec.ts:382:expect(res.body.data.updateGroup).toHaveProperty(\npackages/user-group-service/src/groups/resolver.ts:50:updateGroup(root: any, { id, payload }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/groups/typedef.graphql:24:updateGroup(id: ID!, payload: UpdateGroupInput!): Group\npackages/user-group-service/src/groups/typedef.graphql:53:input UpdateGroupInput {" }, { "backend": "ariadne", "hint": "addUser", "output_tokens": 304, "query_ms": 0.9934999980032444, "rank": 1, "result_count": 2, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.559,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::addUser\",\"label\":\"GraphQL Mutation\",\"name\":\"addUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateUser\",\"label\":\"GraphQL Mutation\",\"name\":\"updateUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.544,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::addGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"addGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::createFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"createFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::updateFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"updateFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::updateGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"updateGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]}]" }, { "backend": "rg", "hint": "addUser", "output_tokens": 349, "query_ms": 15.943082980811596, "rank": 12, "result_count": 13, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:89:addUser(input: $input) {\npackages/user-group-service/src/e2e/user.spec.ts:119:addUserFromRover(uid: $uid) {\npackages/user-group-service/src/e2e/user.spec.ts:150:expect(res.body.data).toHaveProperty('addUserFromRover');\npackages/user-group-service/src/e2e/user.spec.ts:151:expect(res.body.data.addUserFromRover).toHaveProperty(\npackages/user-group-service/src/e2e/user.spec.ts:155:expect(res.body.data.addUserFromRover).toHaveProperty('uid', user.uid);\npackages/user-group-service/src/e2e/user.spec.ts:231:expect(res.body.data).toHaveProperty('addUser');\npackages/user-group-service/src/e2e/user.spec.ts:232:expect(res.body.data.addUser).toHaveProperty('_id', mockUser._id);\npackages/user-group-service/src/e2e/user.spec.ts:233:expect(res.body.data.addUser).toHaveProperty('uid', mockUser.uid);\npackages/user-group-service/src/e2e/user.spec.ts:234:expect(res.body.data.addUser).toHaveProperty('name', mockUser.name);\npackages/user-group-service/src/users/resolver.ts:97:addUser(root: any, { input }: any, ctx: any) {\npackages/user-group-service/src/users/resolver.ts:106:addUserFromRover(root: any, { uid }: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:105:addUser(input: UserInput): UserType\npackages/user-group-service/src/users/typedef.graphql:117:addUserFromRover(uid: String!): UserType" }, { "backend": "grep", "hint": "addUser", "output_tokens": 349, "query_ms": 36.18487506173551, "rank": 12, "result_count": 13, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/e2e/user.spec.ts:89:addUser(input: $input) {\npackages/user-group-service/src/e2e/user.spec.ts:119:addUserFromRover(uid: $uid) {\npackages/user-group-service/src/e2e/user.spec.ts:150:expect(res.body.data).toHaveProperty('addUserFromRover');\npackages/user-group-service/src/e2e/user.spec.ts:151:expect(res.body.data.addUserFromRover).toHaveProperty(\npackages/user-group-service/src/e2e/user.spec.ts:155:expect(res.body.data.addUserFromRover).toHaveProperty('uid', user.uid);\npackages/user-group-service/src/e2e/user.spec.ts:231:expect(res.body.data).toHaveProperty('addUser');\npackages/user-group-service/src/e2e/user.spec.ts:232:expect(res.body.data.addUser).toHaveProperty('_id', mockUser._id);\npackages/user-group-service/src/e2e/user.spec.ts:233:expect(res.body.data.addUser).toHaveProperty('uid', mockUser.uid);\npackages/user-group-service/src/e2e/user.spec.ts:234:expect(res.body.data.addUser).toHaveProperty('name', mockUser.name);\npackages/user-group-service/src/users/resolver.ts:97:addUser(root: any, { input }: any, ctx: any) {\npackages/user-group-service/src/users/resolver.ts:106:addUserFromRover(root: any, { uid }: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:105:addUser(input: UserInput): UserType\npackages/user-group-service/src/users/typedef.graphql:117:addUserFromRover(uid: String!): UserType" }, { "backend": "ariadne", "hint": "deleteUser", "output_tokens": 261, "query_ms": 0.8450000314041972, "rank": 1, "result_count": 1, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.718,\"nodes\":[{\"id\":\"feedback-service::gql::Mutation::deleteFeedback\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedback\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteGroup\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteGroup\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::deleteUser\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteUser\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Mutation::deleteFeedbackConfig\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteFeedbackConfig\",\"service\":\"feedback-service\",\"type\":\"graphql_mutation\"},{\"id\":\"feedback-service::gql::Query::getFeedbackById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"feedback-service::gql::Query::getFeedbackConfigById\",\"label\":\"GraphQL Query\",\"name\":\"getFeedbackConfigById\",\"service\":\"feedback-service\",\"type\":\"graphql_query\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "deleteUser", "output_tokens": 350, "query_ms": 16.373666003346443, "rank": 13, "result_count": 13, "sample": "one-platform", "serialized_output": "packages/analytics-service/src/graph/matomo/resolver.ts:238:deleteUserAnalytics: async (\npackages/analytics-service/src/graph/matomo/typedef.graphql:169:deleteUserAnalytics(appID: ID!): UserAnalytics\npackages/user-group-service/src/e2e/user.spec.ts:113:deleteUser(_id: $_id) {\npackages/user-group-service/src/e2e/user.spec.ts:171:expect(res.body.data).toHaveProperty('deleteUser');\npackages/user-group-service/src/e2e/user.spec.ts:172:expect(res.body.data.deleteUser).toHaveProperty('_id', user._id);\npackages/user-group-service/src/e2e/user.spec.ts:173:expect(res.body.data.deleteUser).toHaveProperty('uid', user.uid);\npackages/user-group-service/src/e2e/user.spec.ts:174:expect(res.body.data.deleteUser).toHaveProperty('name', user.name);\npackages/user-group-service/src/e2e/user.spec.ts:485:expect(res.body.data).toHaveProperty('deleteUser');\npackages/user-group-service/src/e2e/user.spec.ts:486:expect(res.body.data.deleteUser).toHaveProperty('_id', mockUser._id);\npackages/user-group-service/src/e2e/user.spec.ts:487:expect(res.body.data.deleteUser).toHaveProperty('uid', mockUser.uid);\npackages/user-group-service/src/e2e/user.spec.ts:488:expect(res.body.data.deleteUser).toHaveProperty('name', mockUser.name);\npackages/user-group-service/src/users/resolver.ts:124:deleteUser(root: any, { _id }: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:113:deleteUser(_id: String!): UserType" }, { "backend": "grep", "hint": "deleteUser", "output_tokens": 350, "query_ms": 36.403417005203664, "rank": 13, "result_count": 13, "sample": "one-platform", "serialized_output": "packages/analytics-service/src/graph/matomo/resolver.ts:238:deleteUserAnalytics: async (\npackages/analytics-service/src/graph/matomo/typedef.graphql:169:deleteUserAnalytics(appID: ID!): UserAnalytics\npackages/user-group-service/src/e2e/user.spec.ts:113:deleteUser(_id: $_id) {\npackages/user-group-service/src/e2e/user.spec.ts:171:expect(res.body.data).toHaveProperty('deleteUser');\npackages/user-group-service/src/e2e/user.spec.ts:172:expect(res.body.data.deleteUser).toHaveProperty('_id', user._id);\npackages/user-group-service/src/e2e/user.spec.ts:173:expect(res.body.data.deleteUser).toHaveProperty('uid', user.uid);\npackages/user-group-service/src/e2e/user.spec.ts:174:expect(res.body.data.deleteUser).toHaveProperty('name', user.name);\npackages/user-group-service/src/e2e/user.spec.ts:485:expect(res.body.data).toHaveProperty('deleteUser');\npackages/user-group-service/src/e2e/user.spec.ts:486:expect(res.body.data.deleteUser).toHaveProperty('_id', mockUser._id);\npackages/user-group-service/src/e2e/user.spec.ts:487:expect(res.body.data.deleteUser).toHaveProperty('uid', mockUser.uid);\npackages/user-group-service/src/e2e/user.spec.ts:488:expect(res.body.data.deleteUser).toHaveProperty('name', mockUser.name);\npackages/user-group-service/src/users/resolver.ts:124:deleteUser(root: any, { _id }: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:113:deleteUser(_id: String!): UserType" }, { "backend": "ariadne", "hint": "listUsers", "output_tokens": 1, "query_ms": 0.3657909110188484, "rank": null, "result_count": 0, "sample": "one-platform", "serialized_output": "[]" }, { "backend": "rg", "hint": "listUsers", "output_tokens": 483, "query_ms": 16.0143329994753, "rank": 19, "result_count": 19, "sample": "one-platform", "serialized_output": "packages/api-gateway-service/e2e/api-gateway.spec.ts:18:query ListUsers {\npackages/api-gateway-service/e2e/api-gateway.spec.ts:19:listUsers {\npackages/api-gateway-service/e2e/api-gateway.spec.ts:43:operationName: 'ListUsers',\npackages/api-gateway-service/e2e/api-gateway.spec.ts:48:expect( res.body.data ).toHaveProperty( 'listUsers' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:49:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( '_id' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:50:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'uid' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:51:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'name' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:52:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'title' );\npackages/feedback-service/src/helpers.ts:234:return `query ListUsers {\npackages/user-group-service/src/e2e/user.spec.ts:76:query ListUsers {\npackages/user-group-service/src/e2e/user.spec.ts:77:listUsers {\npackages/user-group-service/src/e2e/user.spec.ts:285:operationName: 'ListUsers',\npackages/user-group-service/src/e2e/user.spec.ts:293:expect(res.body.data).toHaveProperty('listUsers');\npackages/user-group-service/src/e2e/user.spec.ts:294:expect(res.body.data.listUsers).not.toHaveLength(0);\npackages/user-group-service/src/e2e/user.spec.ts:295:expect(res.body.data.listUsers[0]).toHaveProperty('_id');\npackages/user-group-service/src/e2e/user.spec.ts:296:expect(res.body.data.listUsers[0]).toHaveProperty('uid');\npackages/user-group-service/src/e2e/user.spec.ts:297:expect(res.body.data.listUsers[0]).toHaveProperty('name');\npackages/user-group-service/src/users/resolver.ts:48:listUsers(root: any, args: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:132:listUsers: [UserType]" }, { "backend": "grep", "hint": "listUsers", "output_tokens": 483, "query_ms": 36.88291704747826, "rank": 19, "result_count": 19, "sample": "one-platform", "serialized_output": "packages/api-gateway-service/e2e/api-gateway.spec.ts:18:query ListUsers {\npackages/api-gateway-service/e2e/api-gateway.spec.ts:19:listUsers {\npackages/api-gateway-service/e2e/api-gateway.spec.ts:43:operationName: 'ListUsers',\npackages/api-gateway-service/e2e/api-gateway.spec.ts:48:expect( res.body.data ).toHaveProperty( 'listUsers' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:49:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( '_id' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:50:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'uid' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:51:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'name' );\npackages/api-gateway-service/e2e/api-gateway.spec.ts:52:expect( res.body.data.listUsers[ 0 ] ).toHaveProperty( 'title' );\npackages/feedback-service/src/helpers.ts:234:return `query ListUsers {\npackages/user-group-service/src/e2e/user.spec.ts:76:query ListUsers {\npackages/user-group-service/src/e2e/user.spec.ts:77:listUsers {\npackages/user-group-service/src/e2e/user.spec.ts:285:operationName: 'ListUsers',\npackages/user-group-service/src/e2e/user.spec.ts:293:expect(res.body.data).toHaveProperty('listUsers');\npackages/user-group-service/src/e2e/user.spec.ts:294:expect(res.body.data.listUsers).not.toHaveLength(0);\npackages/user-group-service/src/e2e/user.spec.ts:295:expect(res.body.data.listUsers[0]).toHaveProperty('_id');\npackages/user-group-service/src/e2e/user.spec.ts:296:expect(res.body.data.listUsers[0]).toHaveProperty('uid');\npackages/user-group-service/src/e2e/user.spec.ts:297:expect(res.body.data.listUsers[0]).toHaveProperty('name');\npackages/user-group-service/src/users/resolver.ts:48:listUsers(root: any, args: any, ctx: any) {\npackages/user-group-service/src/users/typedef.graphql:132:listUsers: [UserType]" }, { "backend": "ariadne", "hint": "createAPIKey", "output_tokens": 330, "query_ms": 1.3889160472899675, "rank": 1, "result_count": 3, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.83,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::createAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"createAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::FullAPIKey\",\"label\":\"GraphQL Type\",\"name\":\"FullAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::Mutation::deleteAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.588,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::deleteAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::revokeAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"revokeAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.544,\"nodes\":[{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::FullAPIKey\",\"label\":\"GraphQL Type\",\"name\":\"FullAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "createAPIKey", "output_tokens": 79, "query_ms": 16.938084037974477, "rank": 2, "result_count": 3, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/api-keys/resolver.ts:31:createAPIKey(parent: any, { apiKey }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/api-keys/typedef.graphql:7:createAPIKey(apiKey: CreateAPIKeyInput!): FullAPIKey\npackages/user-group-service/src/api-keys/typedef.graphql:56:input CreateAPIKeyInput {" }, { "backend": "grep", "hint": "createAPIKey", "output_tokens": 79, "query_ms": 36.74324997700751, "rank": 2, "result_count": 3, "sample": "one-platform", "serialized_output": "packages/user-group-service/src/api-keys/resolver.ts:31:createAPIKey(parent: any, { apiKey }: GraphQLArgs, ctx: any) {\npackages/user-group-service/src/api-keys/typedef.graphql:7:createAPIKey(apiKey: CreateAPIKeyInput!): FullAPIKey\npackages/user-group-service/src/api-keys/typedef.graphql:56:input CreateAPIKeyInput {" }, { "backend": "ariadne", "hint": "validateAPIKey", "output_tokens": 330, "query_ms": 1.4653339749202132, "rank": null, "result_count": 3, "sample": "one-platform", "serialized_output": "[{\"confidence\":0.664,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::createAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"createAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::FullAPIKey\",\"label\":\"GraphQL Type\",\"name\":\"FullAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::Mutation::deleteAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.588,\"nodes\":[{\"id\":\"user-group-service::gql::Mutation::deleteAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"deleteAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"},{\"id\":\"user-group-service::gql::Mutation::revokeAPIKey\",\"label\":\"GraphQL Mutation\",\"name\":\"revokeAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_mutation\"}]},{\"confidence\":0.544,\"nodes\":[{\"id\":\"user-group-service::gql::type::APIKey\",\"label\":\"GraphQL Type\",\"name\":\"APIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"},{\"id\":\"user-group-service::gql::type::FullAPIKey\",\"label\":\"GraphQL Type\",\"name\":\"FullAPIKey\",\"service\":\"user-group-service\",\"type\":\"graphql_type\"}]}]" }, { "backend": "rg", "hint": "validateAPIKey", "output_tokens": 100, "query_ms": 16.8276660842821, "rank": 4, "result_count": 4, "sample": "one-platform", "serialized_output": "packages/api-gateway-service/src/verify-token.ts:68:query ValidateAPIKey($accessToken: String!) {\npackages/api-gateway-service/src/verify-token.ts:69:apiKey: validateAPIKey(accessToken: $accessToken) {\npackages/user-group-service/src/api-keys/resolver.ts:15:async validateAPIKey(parent: any, { accessToken }: GraphQLArgs) {\npackages/user-group-service/src/api-keys/typedef.graphql:4:validateAPIKey(accessToken: String!): APIKey" }, { "backend": "grep", "hint": "validateAPIKey", "output_tokens": 100, "query_ms": 36.282583023421466, "rank": 4, "result_count": 4, "sample": "one-platform", "serialized_output": "packages/api-gateway-service/src/verify-token.ts:68:query ValidateAPIKey($accessToken: String!) {\npackages/api-gateway-service/src/verify-token.ts:69:apiKey: validateAPIKey(accessToken: $accessToken) {\npackages/user-group-service/src/api-keys/resolver.ts:15:async validateAPIKey(parent: any, { accessToken }: GraphQLArgs) {\npackages/user-group-service/src/api-keys/typedef.graphql:4:validateAPIKey(accessToken: String!): APIKey" }, { "backend": "ariadne", "hint": "getAllInvoices", "output_tokens": 88, "query_ms": 0.1567500876262784, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.741,\"nodes\":[{\"id\":\"invoice-service::http::GET::/invoices::getAllInvoices\",\"label\":\"HTTP GET /invoices\",\"name\":\"getAllInvoices\",\"service\":\"invoice-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "getAllInvoices", "output_tokens": 33, "query_ms": 9.132125065661967, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "hello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:12:fun getAllInvoices() =" }, { "backend": "grep", "hint": "getAllInvoices", "output_tokens": 33, "query_ms": 9.1603749897331, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "hello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:12:fun getAllInvoices() =" }, { "backend": "ariadne", "hint": "invoices", "output_tokens": 154, "query_ms": 0.12966699432581663, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.736,\"nodes\":[{\"id\":\"invoice-service::kafka::produce::invoices\",\"label\":\"Kafka Topic\",\"name\":\"invoices\",\"service\":\"invoice-service\",\"type\":\"kafka_topic\"},{\"id\":\"invoice-service::http::GET::/invoices::getAllInvoices\",\"label\":\"HTTP GET /invoices\",\"name\":\"getAllInvoices\",\"service\":\"invoice-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::kafka::produce::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"order-service\",\"type\":\"kafka_topic\"}]}]" }, { "backend": "rg", "hint": "invoices", "output_tokens": 901, "query_ms": 9.450959041714668, "rank": 2, "result_count": 26, "sample": "kafka-microservices", "serialized_output": "hello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/App.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:3:import microkafka.invoices.model.toDTO\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:8:@RequestMapping(\"/invoices\")\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:12:fun getAllInvoices() =\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceRepository.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceRepository.kt:3:import microkafka.invoices.model.Invoice\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:3:import microkafka.invoices.model.Invoice\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:4:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:10:class InvoiceService(val invoiceRepository: InvoiceRepository,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:27:kafkaTemplate.send(\"invoices\", \"create\", invoice)\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:3:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:8:class OrderListener(val invoiceService: InvoiceService) {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:17:invoiceService.createInvoice(order);\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:6:@Table(name = \"invoices\")\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:5:data class InvoicesDto(\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:5:fun Invoice.toDTO() = InvoicesDto(\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:12:fun InvoicesDto.fromDTO(): Invoice {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Order.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:15:spring.json.type.mapping: order:microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:17:url: jdbc:h2:mem:ms-invoices-db" }, { "backend": "grep", "hint": "invoices", "output_tokens": 901, "query_ms": 9.140375070273876, "rank": 2, "result_count": 26, "sample": "kafka-microservices", "serialized_output": "hello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/App.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:3:import microkafka.invoices.model.toDTO\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:8:@RequestMapping(\"/invoices\")\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceController.kt:12:fun getAllInvoices() =\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceRepository.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceRepository.kt:3:import microkafka.invoices.model.Invoice\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:3:import microkafka.invoices.model.Invoice\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:4:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:10:class InvoiceService(val invoiceRepository: InvoiceRepository,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:27:kafkaTemplate.send(\"invoices\", \"create\", invoice)\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:1:package microkafka.invoices\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:3:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:8:class OrderListener(val invoiceService: InvoiceService) {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:17:invoiceService.createInvoice(order);\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:6:@Table(name = \"invoices\")\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:5:data class InvoicesDto(\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:5:fun Invoice.toDTO() = InvoicesDto(\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:12:fun InvoicesDto.fromDTO(): Invoice {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Order.kt:1:package microkafka.invoices.model\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:15:spring.json.type.mapping: order:microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:17:url: jdbc:h2:mem:ms-invoices-db" }, { "backend": "ariadne", "hint": "orders", "output_tokens": 224, "query_ms": 0.156833091750741, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.732,\"nodes\":[{\"id\":\"invoice-service::kafka::consume::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"invoice-service\",\"type\":\"kafka_topic\"},{\"id\":\"order-service::kafka::produce::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"order-service\",\"type\":\"kafka_topic\"},{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::http::POST::/orders::newOrder\",\"label\":\"HTTP POST /orders\",\"name\":\"newOrder\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"invoice-service::http::GET::/invoices::getAllInvoices\",\"label\":\"HTTP GET /invoices\",\"name\":\"getAllInvoices\",\"service\":\"invoice-service\",\"type\":\"http_endpoint\"},{\"id\":\"invoice-service::kafka::produce::invoices\",\"label\":\"Kafka Topic\",\"name\":\"invoices\",\"service\":\"invoice-service\",\"type\":\"kafka_topic\"}]}]" }, { "backend": "rg", "hint": "orders", "output_tokens": 2769, "query_ms": 8.502708049491048, "rank": 49, "result_count": 73, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:3:import microkafka.escqrs.orders.command.model.*\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:20:kafkaTemplate.send(\"cqrs-orders\", \"OrderCreated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:31:kafkaTemplate.send(\"cqrs-orders\", \"AmountUpdated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:3:import microkafka.escqrs.orders.command.model.OrderAmountUpdateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:4:import microkafka.escqrs.orders.command.model.OrderCreateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/resources/application.yml:9:spring.json.type.mapping: order:microkafka.escqrs.orders.command.model.OrderCreatedEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:3:import microkafka.escqrs.orders.query.model.toDTO\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:8:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:4:import microkafka.escqrs.orders.query.model.OrderEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:5:import microkafka.escqrs.orders.query.model.fromEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:12:// subscribes to the kafka topic \"orders\"\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:14:@KafkaListener(topics= [\"cqrs-orders\"])\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:16:println(\" order received from orders topic : $event\");\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:8:@Table(name = \"orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:13:spring.json.type.mapping: order:microkafka.escqrs.orders.query.model.OrderCreatedEvent\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders-streams\", event.id!!, event)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:10:@RequestMapping(\"/orders\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:24:val orderSer: JsonSerializer = JsonSerializer()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:27:return Serdes.serdeFrom(orderSer, orderDes)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:33:builder.stream(\"es-orders-streams\", Consumed.with(Serdes.String(), serde)) // subscribe to stream with serde\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:40:Materialized.`as`(\"es-orders-store\")) // persists current order state to store.\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:// create store instance to access the current state of the orders\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:17:.store(\"es-orders-store\", QueryableStoreTypes.keyValueStore())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:9:fun List.toOrders() = this.map { it.toOrder() }\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders\", event)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:7:@RequestMapping(\"/orders\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:11:@KafkaListener(topics= [\"es-orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:10:// subscribes to the kafka topic \"orders\"\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:12:@KafkaListener(topics= [\"orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:14:println(\" order received from orders topic : $order\");\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:19:// received orders can also be saved in the local service DB for further processing\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:11:print(\"start orders microservice...\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:3:import microkafka.orders.model.OrderDto\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:4:import microkafka.orders.model.toDTO\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:12:val orderService: OrderService){\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:20:ok().body(orderService.createOrder(order.userId!!, order.productId!!, order.amount!!))\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:9:class OrderService(val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:27:kafkaTemplate.send(\"orders\", \"create\", order)\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:6:@Table(name = \"orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/resources/application.yml:8:spring.json.type.mapping: order:microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/resources/application.yml:10:url: jdbc:h2:mem:ms-orders-db" }, { "backend": "grep", "hint": "orders", "output_tokens": 2769, "query_ms": 9.068000013940036, "rank": 49, "result_count": 73, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:3:import microkafka.escqrs.orders.command.model.*\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:20:kafkaTemplate.send(\"cqrs-orders\", \"OrderCreated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:31:kafkaTemplate.send(\"cqrs-orders\", \"AmountUpdated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:3:import microkafka.escqrs.orders.command.model.OrderAmountUpdateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:4:import microkafka.escqrs.orders.command.model.OrderCreateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/resources/application.yml:9:spring.json.type.mapping: order:microkafka.escqrs.orders.command.model.OrderCreatedEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:3:import microkafka.escqrs.orders.query.model.toDTO\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:8:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:4:import microkafka.escqrs.orders.query.model.OrderEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:5:import microkafka.escqrs.orders.query.model.fromEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:12:// subscribes to the kafka topic \"orders\"\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:14:@KafkaListener(topics= [\"cqrs-orders\"])\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:16:println(\" order received from orders topic : $event\");\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:8:@Table(name = \"orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:13:spring.json.type.mapping: order:microkafka.escqrs.orders.query.model.OrderCreatedEvent\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders-streams\", event.id!!, event)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:10:@RequestMapping(\"/orders\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:24:val orderSer: JsonSerializer = JsonSerializer()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:27:return Serdes.serdeFrom(orderSer, orderDes)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:33:builder.stream(\"es-orders-streams\", Consumed.with(Serdes.String(), serde)) // subscribe to stream with serde\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:40:Materialized.`as`(\"es-orders-store\")) // persists current order state to store.\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:// create store instance to access the current state of the orders\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:17:.store(\"es-orders-store\", QueryableStoreTypes.keyValueStore())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:9:fun List.toOrders() = this.map { it.toOrder() }\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders\", event)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:7:@RequestMapping(\"/orders\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:11:@KafkaListener(topics= [\"es-orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:10:// subscribes to the kafka topic \"orders\"\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:12:@KafkaListener(topics= [\"orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:14:println(\" order received from orders topic : $order\");\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:19:// received orders can also be saved in the local service DB for further processing\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:11:print(\"start orders microservice...\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:3:import microkafka.orders.model.OrderDto\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:4:import microkafka.orders.model.toDTO\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:12:val orderService: OrderService){\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:20:ok().body(orderService.createOrder(order.userId!!, order.productId!!, order.amount!!))\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:9:class OrderService(val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:27:kafkaTemplate.send(\"orders\", \"create\", order)\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:6:@Table(name = \"orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/resources/application.yml:8:spring.json.type.mapping: order:microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/resources/application.yml:10:url: jdbc:h2:mem:ms-orders-db" }, { "backend": "ariadne", "hint": "getAllOrders", "output_tokens": 88, "query_ms": 0.14699995517730713, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.758,\"nodes\":[{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"invoice-service::http::GET::/invoices::getAllInvoices\",\"label\":\"HTTP GET /invoices\",\"name\":\"getAllInvoices\",\"service\":\"invoice-service\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "getAllOrders", "output_tokens": 133, "query_ms": 9.22145799268037, "rank": 4, "result_count": 4, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =" }, { "backend": "grep", "hint": "getAllOrders", "output_tokens": 133, "query_ms": 9.04799997806549, "rank": 4, "result_count": 4, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =" }, { "backend": "ariadne", "hint": "newOrder", "output_tokens": 152, "query_ms": 0.17320795450359583, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.559,\"nodes\":[{\"id\":\"order-service::http::POST::/orders::newOrder\",\"label\":\"HTTP POST /orders\",\"name\":\"newOrder\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"invoice-service::kafka::consume::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"invoice-service\",\"type\":\"kafka_topic\"},{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::kafka::produce::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"order-service\",\"type\":\"kafka_topic\"}]}]" }, { "backend": "rg", "hint": "newOrder", "output_tokens": 79, "query_ms": 8.37329204659909, "rank": 2, "result_count": 2, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:14:fun newOrder(@RequestBody command: OrderCreateCommand) =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:19:fun newOrder(@RequestBody order: OrderDto) =" }, { "backend": "grep", "hint": "newOrder", "output_tokens": 79, "query_ms": 8.95500008482486, "rank": 2, "result_count": 2, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:14:fun newOrder(@RequestBody command: OrderCreateCommand) =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:19:fun newOrder(@RequestBody order: OrderDto) =" }, { "backend": "ariadne", "hint": "order", "output_tokens": 152, "query_ms": 0.13641698751598597, "rank": 1, "result_count": 1, "sample": "kafka-microservices", "serialized_output": "[{\"confidence\":0.559,\"nodes\":[{\"id\":\"order-service::http::POST::/orders::newOrder\",\"label\":\"HTTP POST /orders\",\"name\":\"newOrder\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"invoice-service::kafka::consume::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"invoice-service\",\"type\":\"kafka_topic\"},{\"id\":\"order-service::http::GET::/orders::getAllOrders\",\"label\":\"HTTP GET /orders\",\"name\":\"getAllOrders\",\"service\":\"order-service\",\"type\":\"http_endpoint\"},{\"id\":\"order-service::kafka::produce::orders\",\"label\":\"Kafka Topic\",\"name\":\"orders\",\"service\":\"order-service\",\"type\":\"kafka_topic\"}]}]" }, { "backend": "rg", "hint": "order", "output_tokens": 7355, "query_ms": 8.805915946140885, "rank": 147, "result_count": 199, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:13:print(\"start order command microservice...\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:3:import microkafka.escqrs.orders.command.model.*\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:9:class OrderCommandHandler(val kafkaTemplate: KafkaTemplate) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:11:fun handleCreate(command: OrderCreateCommand) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:12:val event = OrderCreatedEvent(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:20:kafkaTemplate.send(\"cqrs-orders\", \"OrderCreated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:23:fun handleUpdate(command: OrderAmountUpdateCommand) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:24:val event = OrderUpdatedEvent(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:27:orderId = command.orderId\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:31:kafkaTemplate.send(\"cqrs-orders\", \"AmountUpdated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:3:import microkafka.escqrs.orders.command.model.OrderAmountUpdateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:4:import microkafka.escqrs.orders.command.model.OrderCreateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:10:class OrderController(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:11:val orderCommandHandler: OrderCommandHandler\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:14:fun newOrder(@RequestBody command: OrderCreateCommand) =\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:15:ok().body(orderCommandHandler.handleCreate(command))\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:18:fun updateOrder(@RequestBody command: OrderAmountUpdateCommand) =\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:19:ok().body(orderCommandHandler.handleUpdate(command))\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:3:data class OrderCreateCommand(val userId: String, val productId: String, val amount: Int)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:4:data class OrderAmountUpdateCommand(val orderId: String, val amount: Int)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:3:abstract class OrderEvent (\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:6:open var orderId: String? = null,\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:12:data class OrderCreatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:13:data class OrderUpdatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-command-service/src/main/resources/application.yml:9:spring.json.type.mapping: order:microkafka.escqrs.orders.command.model.OrderCreatedEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:12:print(\"start order query microservice...\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:3:import microkafka.escqrs.orders.query.model.toDTO\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:8:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:9:class OrderController(val orderRepository: OrderRepository) {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:13:ok().body(orderRepository.findAll().toDTO())\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:4:import microkafka.escqrs.orders.query.model.OrderEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:5:import microkafka.escqrs.orders.query.model.fromEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:10:class OrderListener(val orderRepository: OrderRepository) {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:12:// subscribes to the kafka topic \"orders\"\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:14:@KafkaListener(topics= [\"cqrs-orders\"])\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:15:fun consume(event: OrderEvent) : Unit {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:16:println(\" order received from orders topic : $event\");\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:18:val order = event.fromEvent();\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:20:// persist the received order\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:21:orderRepository.save(order)\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:6:interface OrderRepository : JpaRepository {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:3:fun List.toDTO() = this.map { it?.toDTO() }\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:5:fun OrderEntity.toDTO() = OrderDto(\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:14:fun OrderDto.fromDTO(): OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:17:return OrderEntity().apply {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:27:fun OrderEvent.fromEvent(): OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:30:return OrderEntity().apply {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:3:data class OrderDto(\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:8:@Table(name = \"orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:9:class OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:3:abstract class OrderEvent (\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:11:data class OrderCreatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:12:data class OrderUpdatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:8:group-id: microkafka-order-query-service\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:13:spring.json.type.mapping: order:microkafka.escqrs.orders.query.model.OrderCreatedEvent\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/App.kt:13:print(\"start order command producer...\")\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:13:class Producer(val kafka: KafkaTemplate) {\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:19:val event = OrderEvent(rint(1, 4).toString(), \"1\");\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders-streams\", event.id!!, event)\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/resources/application.yml:7:spring.json.type.mapping: order:kafka.es.command.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/App.kt:12:println(\"### start order query microservice...\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:10:@RequestMapping(\"/orders\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:class OrderController(val repository: OrderRepository) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:17:fun getOrderById(@PathVariable id: String) = ok().body(repository.findById(id))\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:3:import kafka.es.query.model.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:19:class OrderListener() {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:22:fun getSerde(): Serde {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:23:// create serde to serialize and deserialize OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:24:val orderSer: JsonSerializer = JsonSerializer()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:26:val orderDes = JsonDeserializer(OrderEvent::class.java, false)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:27:return Serdes.serdeFrom(orderSer, orderDes)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:31:fun eventProcessor(builder: StreamsBuilder, serde: Serde) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:33:builder.stream(\"es-orders-streams\", Consumed.with(Serdes.String(), serde)) // subscribe to stream with serde\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:37:{ order, order2 -> // current state orderEvent and a new one\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:38:order.merge(order2) // update current state partially\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:40:Materialized.`as`(\"es-orders-store\")) // persists current order state to store.\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:3:import kafka.es.query.model.Order\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:4:import kafka.es.query.model.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:5:import kafka.es.query.model.toOrder\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:12:class OrderRepository(val streamsBuilderFactoryBean: StreamsBuilderFactoryBean) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:// create store instance to access the current state of the orders\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:15:fun store(): ReadOnlyKeyValueStore =\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:17:.store(\"es-orders-store\", QueryableStoreTypes.keyValueStore())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:19:fun findAll() : List {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:24:.map { i -> i.value.toOrder() }\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:27:fun findById(id: String): Order {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:28:return store().get(id).toOrder()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:9:fun List.toOrders() = this.map { it.toOrder() }\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:11:fun OrderEvent.toOrder() = Order(\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Order.kt:3:data class Order(\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/OrderEvent.kt:6:data class OrderEvent (\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/App.kt:13:print(\"start order command producer...\")\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:13:class Producer(val kafka: KafkaTemplate) {\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:19:val event = OrderEvent(rint(1, 4).toString(), \"1\");\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders\", event)\nhello-kafka-es/order-command-service/src/main/resources/application.yml:7:spring.json.type.mapping: order:kafka.es.command.OrderEvent\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/App.kt:12:print(\"start order query microservice...\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:7:@RequestMapping(\"/orders\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:8:class OrderController(val repository: OrderRepository) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:3:import kafka.es.query.model.Order\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:4:import kafka.es.query.model.OrderEvent\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:9:class OrderListener(val repository: OrderRepository) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:11:@KafkaListener(topics= [\"es-orders\"])\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:12:fun consume(event: OrderEvent) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:15:var order = repository.findById(event.id!!)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:17:// 2. create new order entity if not exists within local storage\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:18:if (order == null)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:19:order = Order(event.id!!)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:22:order.apply {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:30:repository.save(order!!);\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:32:println(\"RECEIVE MESSAGE : $order\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:3:import kafka.es.query.model.Order\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:8:class OrderRepository {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:9:private val records = HashMap()\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:fun save(order: Order) = records.put(order.id, order)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/model/Order.kt:3:data class Order(\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/model/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es/order-query-service/src/main/resources/application.yml:11:spring.json.type.mapping: order:kafka.es.query.model.OrderEvent\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:4:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:13:fun createInvoice(order: Order): Invoice {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:17:it.orderId = order.id\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:18:it.userId = order.userId\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:19:it.amount = order.amount?.times(0.5) // possible implementation sum of (productRepository.getProducts(order.productId's))\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:3:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:8:class OrderListener(val invoiceService: InvoiceService) {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:10:// subscribes to the kafka topic \"orders\"\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:12:@KafkaListener(topics= [\"orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:13:fun consume(order: Order) : Unit {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:14:println(\" order received from orders topic : $order\");\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:16:// create a new invoice for each order received\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:17:invoiceService.createInvoice(order);\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:19:// received orders can also be saved in the local service DB for further processing\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:20:// orderRepository.save(oder)\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:13:var orderId: String? = null\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:8:var orderId: String? = null,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:8:this.orderId,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:19:orderId = self.orderId\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Order.kt:3:class Order {\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:15:spring.json.type.mapping: order:microkafka.invoices.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:11:print(\"start orders microservice...\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:3:import microkafka.orders.model.OrderDto\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:4:import microkafka.orders.model.toDTO\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:10:class OrderController(\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:11:val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:12:val orderService: OrderService){\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:16:ok().body(orderRepository.findAll().toDTO())\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:19:fun newOrder(@RequestBody order: OrderDto) =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:20:ok().body(orderService.createOrder(order.userId!!, order.productId!!, order.amount!!))\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:6:interface OrderRepository : JpaRepository {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:9:class OrderService(val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:10:val kafkaTemplate: KafkaTemplate) {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:12:fun createOrder(userId: String, productId: String, amount: Int) {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:14:val order = Order().also {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:23:// the order is immediately persisted in the local DB when it is created,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:25:orderRepository.save(order);\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:27:kafkaTemplate.send(\"orders\", \"create\", order)\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:3:fun List.toDTO() = this.map { it?.toDTO() }\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:5:fun Order.toDTO() = OrderDto(\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:14:fun OrderDto.fromDTO(): Order {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:17:return Order().apply {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:6:@Table(name = \"orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:7:class Order {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:3:data class OrderDto(\nhello-kafka-microservices/order-service/src/main/resources/application.yml:8:spring.json.type.mapping: order:microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/resources/application.yml:10:url: jdbc:h2:mem:ms-orders-db" }, { "backend": "grep", "hint": "order", "output_tokens": 7355, "query_ms": 9.239707957021892, "rank": 147, "result_count": 199, "sample": "kafka-microservices", "serialized_output": "hello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/App.kt:13:print(\"start order command microservice...\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:3:import microkafka.escqrs.orders.command.model.*\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:9:class OrderCommandHandler(val kafkaTemplate: KafkaTemplate) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:11:fun handleCreate(command: OrderCreateCommand) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:12:val event = OrderCreatedEvent(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:20:kafkaTemplate.send(\"cqrs-orders\", \"OrderCreated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:23:fun handleUpdate(command: OrderAmountUpdateCommand) {\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:24:val event = OrderUpdatedEvent(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:27:orderId = command.orderId\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderCommandHandler.kt:31:kafkaTemplate.send(\"cqrs-orders\", \"AmountUpdated\", event)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:1:package microkafka.escqrs.orders.command\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:3:import microkafka.escqrs.orders.command.model.OrderAmountUpdateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:4:import microkafka.escqrs.orders.command.model.OrderCreateCommand\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:10:class OrderController(\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:11:val orderCommandHandler: OrderCommandHandler\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:14:fun newOrder(@RequestBody command: OrderCreateCommand) =\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:15:ok().body(orderCommandHandler.handleCreate(command))\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:18:fun updateOrder(@RequestBody command: OrderAmountUpdateCommand) =\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/OrderController.kt:19:ok().body(orderCommandHandler.handleUpdate(command))\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:3:data class OrderCreateCommand(val userId: String, val productId: String, val amount: Int)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderCommands.kt:4:data class OrderAmountUpdateCommand(val orderId: String, val amount: Int)\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:1:package microkafka.escqrs.orders.command.model\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:3:abstract class OrderEvent (\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:6:open var orderId: String? = null,\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:12:data class OrderCreatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-command-service/src/main/kotlin/microkafka/escqrs/orders/command/model/OrderEvents.kt:13:data class OrderUpdatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-command-service/src/main/resources/application.yml:9:spring.json.type.mapping: order:microkafka.escqrs.orders.command.model.OrderCreatedEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/App.kt:12:print(\"start order query microservice...\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:3:import microkafka.escqrs.orders.query.model.toDTO\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:8:@RequestMapping(\"/orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:9:class OrderController(val orderRepository: OrderRepository) {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:12:fun getAllOrders() =\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderController.kt:13:ok().body(orderRepository.findAll().toDTO())\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:4:import microkafka.escqrs.orders.query.model.OrderEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:5:import microkafka.escqrs.orders.query.model.fromEvent\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:10:class OrderListener(val orderRepository: OrderRepository) {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:12:// subscribes to the kafka topic \"orders\"\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:14:@KafkaListener(topics= [\"cqrs-orders\"])\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:15:fun consume(event: OrderEvent) : Unit {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:16:println(\" order received from orders topic : $event\");\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:18:val order = event.fromEvent();\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:20:// persist the received order\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderListener.kt:21:orderRepository.save(order)\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:1:package microkafka.escqrs.orders.query\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:3:import microkafka.escqrs.orders.query.model.OrderEntity\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/OrderRepository.kt:6:interface OrderRepository : JpaRepository {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:3:fun List.toDTO() = this.map { it?.toDTO() }\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:5:fun OrderEntity.toDTO() = OrderDto(\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:14:fun OrderDto.fromDTO(): OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:17:return OrderEntity().apply {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:27:fun OrderEvent.fromEvent(): OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/Mapping.kt:30:return OrderEntity().apply {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderDto.kt:3:data class OrderDto(\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:8:@Table(name = \"orders\")\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEntity.kt:9:class OrderEntity {\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:1:package microkafka.escqrs.orders.query.model\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:3:abstract class OrderEvent (\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:11:data class OrderCreatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-query-service/src/main/kotlin/microkafka/escqrs/orders/query/model/OrderEvents.kt:12:data class OrderUpdatedEvent(override val id: String?) : OrderEvent(id) { }\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:8:group-id: microkafka-order-query-service\nhello-kafka-cqrs/order-query-service/src/main/resources/application.yml:13:spring.json.type.mapping: order:microkafka.escqrs.orders.query.model.OrderCreatedEvent\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/App.kt:13:print(\"start order command producer...\")\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:13:class Producer(val kafka: KafkaTemplate) {\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:19:val event = OrderEvent(rint(1, 4).toString(), \"1\");\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders-streams\", event.id!!, event)\nhello-kafka-es-streamsapi/kotlin/order-command-service/src/main/resources/application.yml:7:spring.json.type.mapping: order:kafka.es.command.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/App.kt:12:println(\"### start order query microservice...\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:10:@RequestMapping(\"/orders\")\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:class OrderController(val repository: OrderRepository) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:14:fun getAllOrders() = ok().body(repository.findAll())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:17:fun getOrderById(@PathVariable id: String) = ok().body(repository.findById(id))\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:3:import kafka.es.query.model.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:19:class OrderListener() {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:22:fun getSerde(): Serde {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:23:// create serde to serialize and deserialize OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:24:val orderSer: JsonSerializer = JsonSerializer()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:26:val orderDes = JsonDeserializer(OrderEvent::class.java, false)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:27:return Serdes.serdeFrom(orderSer, orderDes)\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:31:fun eventProcessor(builder: StreamsBuilder, serde: Serde) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:33:builder.stream(\"es-orders-streams\", Consumed.with(Serdes.String(), serde)) // subscribe to stream with serde\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:37:{ order, order2 -> // current state orderEvent and a new one\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:38:order.merge(order2) // update current state partially\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:40:Materialized.`as`(\"es-orders-store\")) // persists current order state to store.\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:3:import kafka.es.query.model.Order\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:4:import kafka.es.query.model.OrderEvent\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:5:import kafka.es.query.model.toOrder\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:12:class OrderRepository(val streamsBuilderFactoryBean: StreamsBuilderFactoryBean) {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:// create store instance to access the current state of the orders\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:15:fun store(): ReadOnlyKeyValueStore =\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:17:.store(\"es-orders-store\", QueryableStoreTypes.keyValueStore())\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:19:fun findAll() : List {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:24:.map { i -> i.value.toOrder() }\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:27:fun findById(id: String): Order {\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:28:return store().get(id).toOrder()\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:9:fun List.toOrders() = this.map { it.toOrder() }\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Mapping.kt:11:fun OrderEvent.toOrder() = Order(\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/Order.kt:3:data class Order(\nhello-kafka-es-streamsapi/kotlin/order-query-service/src/main/kotlin/kafka/es/query/model/OrderEvent.kt:6:data class OrderEvent (\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/App.kt:13:print(\"start order command producer...\")\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:13:class Producer(val kafka: KafkaTemplate) {\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:18:// simulate different orders\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:19:val event = OrderEvent(rint(1, 4).toString(), \"1\");\nhello-kafka-es/order-command-service/src/main/kotlin/kafka/es/command/Producer.kt:29:this.kafka.send(\"es-orders\", event)\nhello-kafka-es/order-command-service/src/main/resources/application.yml:7:spring.json.type.mapping: order:kafka.es.command.OrderEvent\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/App.kt:12:print(\"start order query microservice...\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:7:@RequestMapping(\"/orders\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:8:class OrderController(val repository: OrderRepository) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderController.kt:11:fun getAllOrders() =\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:3:import kafka.es.query.model.Order\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:4:import kafka.es.query.model.OrderEvent\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:9:class OrderListener(val repository: OrderRepository) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:11:@KafkaListener(topics= [\"es-orders\"])\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:12:fun consume(event: OrderEvent) {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:15:var order = repository.findById(event.id!!)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:17:// 2. create new order entity if not exists within local storage\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:18:if (order == null)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:19:order = Order(event.id!!)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:22:order.apply {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:30:repository.save(order!!);\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderListener.kt:32:println(\"RECEIVE MESSAGE : $order\")\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:3:import kafka.es.query.model.Order\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:8:class OrderRepository {\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:9:private val records = HashMap()\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/OrderRepository.kt:14:fun save(order: Order) = records.put(order.id, order)\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/model/Order.kt:3:data class Order(\nhello-kafka-es/order-query-service/src/main/kotlin/kafka/es/query/model/OrderEvent.kt:3:data class OrderEvent (\nhello-kafka-es/order-query-service/src/main/resources/application.yml:11:spring.json.type.mapping: order:kafka.es.query.model.OrderEvent\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:4:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:13:fun createInvoice(order: Order): Invoice {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:17:it.orderId = order.id\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:18:it.userId = order.userId\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/InvoiceService.kt:19:it.amount = order.amount?.times(0.5) // possible implementation sum of (productRepository.getProducts(order.productId's))\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:3:import microkafka.invoices.model.Order\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:8:class OrderListener(val invoiceService: InvoiceService) {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:10:// subscribes to the kafka topic \"orders\"\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:12:@KafkaListener(topics= [\"orders\"])\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:13:fun consume(order: Order) : Unit {\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:14:println(\" order received from orders topic : $order\");\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:16:// create a new invoice for each order received\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:17:invoiceService.createInvoice(order);\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:19:// received orders can also be saved in the local service DB for further processing\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/OrderListener.kt:20:// orderRepository.save(oder)\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Invoice.kt:13:var orderId: String? = null\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/InvoicesDto.kt:8:var orderId: String? = null,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:8:this.orderId,\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Mapping.kt:19:orderId = self.orderId\nhello-kafka-microservices/invoice-service/src/main/kotlin/microkafka/invoices/model/Order.kt:3:class Order {\nhello-kafka-microservices/invoice-service/src/main/resources/application.yml:15:spring.json.type.mapping: order:microkafka.invoices.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/App.kt:11:print(\"start orders microservice...\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:3:import microkafka.orders.model.OrderDto\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:4:import microkafka.orders.model.toDTO\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:9:@RequestMapping(\"/orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:10:class OrderController(\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:11:val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:12:val orderService: OrderService){\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:15:fun getAllOrders() =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:16:ok().body(orderRepository.findAll().toDTO())\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:19:fun newOrder(@RequestBody order: OrderDto) =\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderController.kt:20:ok().body(orderService.createOrder(order.userId!!, order.productId!!, order.amount!!))\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderRepository.kt:6:interface OrderRepository : JpaRepository {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:1:package microkafka.orders\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:3:import microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:9:class OrderService(val orderRepository: OrderRepository,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:10:val kafkaTemplate: KafkaTemplate) {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:12:fun createOrder(userId: String, productId: String, amount: Int) {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:14:val order = Order().also {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:23:// the order is immediately persisted in the local DB when it is created,\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:25:orderRepository.save(order);\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/OrderService.kt:27:kafkaTemplate.send(\"orders\", \"create\", order)\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:3:fun List.toDTO() = this.map { it?.toDTO() }\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:5:fun Order.toDTO() = OrderDto(\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:14:fun OrderDto.fromDTO(): Order {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Mapping.kt:17:return Order().apply {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:6:@Table(name = \"orders\")\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/Order.kt:7:class Order {\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:1:package microkafka.orders.model\nhello-kafka-microservices/order-service/src/main/kotlin/microkafka/orders/model/OrderDto.kt:3:data class OrderDto(\nhello-kafka-microservices/order-service/src/main/resources/application.yml:8:spring.json.type.mapping: order:microkafka.orders.model.Order\nhello-kafka-microservices/order-service/src/main/resources/application.yml:10:url: jdbc:h2:mem:ms-orders-db" }, { "backend": "ariadne", "hint": "delete_user", "output_tokens": 92, "query_ms": 0.16691593918949366, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "[{\"confidence\":0.615,\"nodes\":[{\"id\":\"users::http::DELETE::/{user_id}/::delete_user\",\"label\":\"HTTP DELETE /{user_id}/\",\"name\":\"delete_user\",\"service\":\"users\",\"type\":\"http_endpoint\"},{\"id\":\"users::http::GET::/{user_id}/::read_user\",\"label\":\"HTTP GET /{user_id}/\",\"name\":\"read_user\",\"service\":\"users\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "delete_user", "output_tokens": 14, "query_ms": 6.117291981354356, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:100:async def delete_user(" }, { "backend": "grep", "hint": "delete_user", "output_tokens": 14, "query_ms": 3.4212080063298345, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:100:async def delete_user(" }, { "backend": "ariadne", "hint": "health", "output_tokens": 1, "query_ms": 0.08195801638066769, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "health", "output_tokens": 78, "query_ms": 5.834624986164272, "rank": 3, "result_count": 4, "sample": "fastapi-microservices", "serialized_output": "users/app/api/__init__.py:3:from app.api.health import router as health_router\nusers/app/api/__init__.py:8:router.include_router(health_router)\nusers/app/api/health.py:10:router = APIRouter(prefix=\"/health\", tags=[\"Health\"])\nusers/app/api/health.py:14:async def health(session: AsyncSession = Depends(get_session)):" }, { "backend": "grep", "hint": "health", "output_tokens": 78, "query_ms": 3.3448750618845224, "rank": 3, "result_count": 4, "sample": "fastapi-microservices", "serialized_output": "users/app/api/__init__.py:3:from app.api.health import router as health_router\nusers/app/api/__init__.py:8:router.include_router(health_router)\nusers/app/api/health.py:10:router = APIRouter(prefix=\"/health\", tags=[\"Health\"])\nusers/app/api/health.py:14:async def health(session: AsyncSession = Depends(get_session)):" }, { "backend": "ariadne", "hint": "home", "output_tokens": 1, "query_ms": 0.08341704960912466, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "home", "output_tokens": 129, "query_ms": 5.694166989997029, "rank": 3, "result_count": 6, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/__init__.py:3:from app.api.v1.home import router as home_router\nusers/app/api/v1/__init__.py:9:router.include_router(home_router)\nusers/app/api/v1/home.py:5:router = APIRouter(prefix=\"/home\", tags=[\"Home\"])\nusers/app/api/v1/home.py:9:async def home():\nusers/tests/test_home.py:8:async def test_home(client: AsyncClient, superuser_token_headers: Dict[str, str]):\nusers/tests/test_home.py:9:res = await client.get(\"/api/v1/home\", headers=superuser_token_headers)" }, { "backend": "grep", "hint": "home", "output_tokens": 129, "query_ms": 3.3439170802012086, "rank": 3, "result_count": 6, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/__init__.py:3:from app.api.v1.home import router as home_router\nusers/app/api/v1/__init__.py:9:router.include_router(home_router)\nusers/app/api/v1/home.py:5:router = APIRouter(prefix=\"/home\", tags=[\"Home\"])\nusers/app/api/v1/home.py:9:async def home():\nusers/tests/test_home.py:8:async def test_home(client: AsyncClient, superuser_token_headers: Dict[str, str]):\nusers/tests/test_home.py:9:res = await client.get(\"/api/v1/home\", headers=superuser_token_headers)" }, { "backend": "ariadne", "hint": "read_users", "output_tokens": 92, "query_ms": 0.15350000467151403, "rank": null, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "[{\"confidence\":0.445,\"nodes\":[{\"id\":\"users::http::GET::/{user_id}/::read_user\",\"label\":\"HTTP GET /{user_id}/\",\"name\":\"read_user\",\"service\":\"users\",\"type\":\"http_endpoint\"},{\"id\":\"users::http::DELETE::/{user_id}/::delete_user\",\"label\":\"HTTP DELETE /{user_id}/\",\"name\":\"delete_user\",\"service\":\"users\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "read_users", "output_tokens": 14, "query_ms": 5.674874992109835, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:22:async def read_users(" }, { "backend": "grep", "hint": "read_users", "output_tokens": 14, "query_ms": 3.4549159463495016, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:22:async def read_users(" }, { "backend": "ariadne", "hint": "another", "output_tokens": 1, "query_ms": 0.07475004531443119, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "another", "output_tokens": 43, "query_ms": 5.771582946181297, "rank": 1, "result_count": 3, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/home.py:13:@router.get(\"/another/\")\nusers/app/api/v1/home.py:14:async def another():\nusers/app/api/v1/home.py:15:return \"Another Hello World!\"" }, { "backend": "grep", "hint": "another", "output_tokens": 43, "query_ms": 3.339999937452376, "rank": 1, "result_count": 3, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/home.py:13:@router.get(\"/another/\")\nusers/app/api/v1/home.py:14:async def another():\nusers/app/api/v1/home.py:15:return \"Another Hello World!\"" }, { "backend": "ariadne", "hint": "get_task", "output_tokens": 1, "query_ms": 0.07804203778505325, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "get_task", "output_tokens": 18, "query_ms": 5.879292031750083, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/tasks.py:17:async def get_task(task_id: str):" }, { "backend": "grep", "hint": "get_task", "output_tokens": 18, "query_ms": 3.3856669906526804, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/tasks.py:17:async def get_task(task_id: str):" }, { "backend": "ariadne", "hint": "read_user", "output_tokens": 92, "query_ms": 0.16670895274728537, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "[{\"confidence\":0.618,\"nodes\":[{\"id\":\"users::http::GET::/{user_id}/::read_user\",\"label\":\"HTTP GET /{user_id}/\",\"name\":\"read_user\",\"service\":\"users\",\"type\":\"http_endpoint\"},{\"id\":\"users::http::DELETE::/{user_id}/::delete_user\",\"label\":\"HTTP DELETE /{user_id}/\",\"name\":\"delete_user\",\"service\":\"users\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "read_user", "output_tokens": 28, "query_ms": 5.9759169816970825, "rank": 1, "result_count": 2, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:22:async def read_users(\nusers/app/api/v1/users.py:52:async def read_user(" }, { "backend": "grep", "hint": "read_user", "output_tokens": 28, "query_ms": 3.6969579523429275, "rank": 1, "result_count": 2, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:22:async def read_users(\nusers/app/api/v1/users.py:52:async def read_user(" }, { "backend": "ariadne", "hint": "create_task", "output_tokens": 1, "query_ms": 0.08279201574623585, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "create_task", "output_tokens": 17, "query_ms": 5.916708032600582, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/tasks.py:11:async def create_task(message: str):" }, { "backend": "grep", "hint": "create_task", "output_tokens": 17, "query_ms": 3.9025000296533108, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/tasks.py:11:async def create_task(message: str):" }, { "backend": "ariadne", "hint": "create_user", "output_tokens": 1, "query_ms": 0.0886659836396575, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "create_user", "output_tokens": 14, "query_ms": 6.0697500593960285, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:33:async def create_user(" }, { "backend": "grep", "hint": "create_user", "output_tokens": 14, "query_ms": 3.5289169754832983, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:33:async def create_user(" }, { "backend": "ariadne", "hint": "login", "output_tokens": 1, "query_ms": 0.0750409672036767, "rank": null, "result_count": 0, "sample": "fastapi-microservices", "serialized_output": "[]" }, { "backend": "rg", "hint": "login", "output_tokens": 207, "query_ms": 5.815540906041861, "rank": 4, "result_count": 11, "sample": "fastapi-microservices", "serialized_output": "users/app/api/deps.py:14:oauth2 = OAuth2PasswordBearer(tokenUrl=\"/api/v1/login\")\nusers/app/api/v1/__init__.py:4:from app.api.v1.login import router as login_router\nusers/app/api/v1/__init__.py:10:router.include_router(login_router)\nusers/app/api/v1/login.py:9:router = APIRouter(tags=[\"Login\"])\nusers/app/api/v1/login.py:12:@router.post(\"/login/\", response_model=Token)\nusers/app/api/v1/login.py:13:async def login(\nusers/tests/conftest.py:49:login_data = {\nusers/tests/conftest.py:53:res = await client.post(\"/api/v1/login/\", data=login_data)\nusers/tests/test_login.py:8:async def test_login(client: AsyncSession):\nusers/tests/test_login.py:9:login_data = {\nusers/tests/test_login.py:13:res = await client.post(\"/api/v1/login/\", data=login_data)" }, { "backend": "grep", "hint": "login", "output_tokens": 207, "query_ms": 3.3121249871328473, "rank": 4, "result_count": 11, "sample": "fastapi-microservices", "serialized_output": "users/app/api/deps.py:14:oauth2 = OAuth2PasswordBearer(tokenUrl=\"/api/v1/login\")\nusers/app/api/v1/__init__.py:4:from app.api.v1.login import router as login_router\nusers/app/api/v1/__init__.py:10:router.include_router(login_router)\nusers/app/api/v1/login.py:9:router = APIRouter(tags=[\"Login\"])\nusers/app/api/v1/login.py:12:@router.post(\"/login/\", response_model=Token)\nusers/app/api/v1/login.py:13:async def login(\nusers/tests/conftest.py:49:login_data = {\nusers/tests/conftest.py:53:res = await client.post(\"/api/v1/login/\", data=login_data)\nusers/tests/test_login.py:8:async def test_login(client: AsyncSession):\nusers/tests/test_login.py:9:login_data = {\nusers/tests/test_login.py:13:res = await client.post(\"/api/v1/login/\", data=login_data)" }, { "backend": "ariadne", "hint": "update_user", "output_tokens": 92, "query_ms": 0.15712494496256113, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "[{\"confidence\":0.615,\"nodes\":[{\"id\":\"users::http::PUT::/{user_id}/::update_user\",\"label\":\"HTTP PUT /{user_id}/\",\"name\":\"update_user\",\"service\":\"users\",\"type\":\"http_endpoint\"},{\"id\":\"users::http::DELETE::/{user_id}/::delete_user\",\"label\":\"HTTP DELETE /{user_id}/\",\"name\":\"delete_user\",\"service\":\"users\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "update_user", "output_tokens": 14, "query_ms": 5.982166971080005, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:74:async def update_user(" }, { "backend": "grep", "hint": "update_user", "output_tokens": 14, "query_ms": 3.400249988771975, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "users/app/api/v1/users.py:74:async def update_user(" }, { "backend": "ariadne", "hint": "user_id", "output_tokens": 92, "query_ms": 0.16724993474781513, "rank": 1, "result_count": 1, "sample": "fastapi-microservices", "serialized_output": "[{\"confidence\":0.51,\"nodes\":[{\"id\":\"users::http::DELETE::/{user_id}/::delete_user\",\"label\":\"HTTP DELETE /{user_id}/\",\"name\":\"delete_user\",\"service\":\"users\",\"type\":\"http_endpoint\"},{\"id\":\"users::http::GET::/{user_id}/::read_user\",\"label\":\"HTTP GET /{user_id}/\",\"name\":\"read_user\",\"service\":\"users\",\"type\":\"http_endpoint\"}]}]" }, { "backend": "rg", "hint": "user_id", "output_tokens": 356, "query_ms": 5.7785839308053255, "rank": 2, "result_count": 16, "sample": "fastapi-microservices", "serialized_output": "users/app/api/deps.py:36:user = await crud_user.get(session, id=token.user_id)\nusers/app/api/v1/users.py:51:@router.get(\"/{user_id}/\", response_model=UserOut)\nusers/app/api/v1/users.py:53:user_id: int,\nusers/app/api/v1/users.py:60:if current_user.id == user_id:\nusers/app/api/v1/users.py:63:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:73:@router.put(\"/{user_id}/\", response_model=UserOut, dependencies=[Depends(on_superuser)])\nusers/app/api/v1/users.py:75:user_id: int, user_in: UserUpdate, session: AsyncSession = Depends(get_session)\nusers/app/api/v1/users.py:77:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:99:@router.delete(\"/{user_id}/\", status_code=204)\nusers/app/api/v1/users.py:101:user_id: int,\nusers/app/api/v1/users.py:105:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:108:if current_user.id == user_id:\nusers/app/core/security.py:21:{\"exp\": expire, \"user_id\": str(user.id)},\nusers/app/schemas/token.py:12:user_id: Optional[int]\nusers/migrations/versions/dc304df8db88_first_migration.py.py:32:op.create_index(op.f(\"ix_user_id\"), \"user\", [\"id\"], unique=False)\nusers/migrations/versions/dc304df8db88_first_migration.py.py:57:op.drop_index(op.f(\"ix_user_id\"), table_name=\"user\")" }, { "backend": "grep", "hint": "user_id", "output_tokens": 356, "query_ms": 3.307500039227307, "rank": 2, "result_count": 16, "sample": "fastapi-microservices", "serialized_output": "users/app/api/deps.py:36:user = await crud_user.get(session, id=token.user_id)\nusers/app/api/v1/users.py:51:@router.get(\"/{user_id}/\", response_model=UserOut)\nusers/app/api/v1/users.py:53:user_id: int,\nusers/app/api/v1/users.py:60:if current_user.id == user_id:\nusers/app/api/v1/users.py:63:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:73:@router.put(\"/{user_id}/\", response_model=UserOut, dependencies=[Depends(on_superuser)])\nusers/app/api/v1/users.py:75:user_id: int, user_in: UserUpdate, session: AsyncSession = Depends(get_session)\nusers/app/api/v1/users.py:77:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:99:@router.delete(\"/{user_id}/\", status_code=204)\nusers/app/api/v1/users.py:101:user_id: int,\nusers/app/api/v1/users.py:105:user = await crud_user.get(session, id=user_id)\nusers/app/api/v1/users.py:108:if current_user.id == user_id:\nusers/app/core/security.py:21:{\"exp\": expire, \"user_id\": str(user.id)},\nusers/app/schemas/token.py:12:user_id: Optional[int]\nusers/migrations/versions/dc304df8db88_first_migration.py.py:32:op.create_index(op.f(\"ix_user_id\"), \"user\", [\"id\"], unique=False)\nusers/migrations/versions/dc304df8db88_first_migration.py.py:57:op.drop_index(op.f(\"ix_user_id\"), table_name=\"user\")" } ], "samples": { "fastapi-microservices": { "index_seconds": 0.047310999943874776, "query_count": 12, "revision": "262bd1b7a97d6a6375067abac778bb8d75bb5edc", "summary": { "ariadne": { "mean_output_tokens": 38.916666666666664, "median_query_ms": 0.08604151662439108, "mrr": 0.3333333333333333, "queries": 12, "top_1_hit_rate": 0.3333333333333333, "top_3_hit_rate": 0.3333333333333333 }, "grep": { "mean_output_tokens": 77.66666666666667, "median_query_ms": 3.3929584897123277, "mrr": 0.7847222222222222, "queries": 12, "top_1_hit_rate": 0.6666666666666666, "top_3_hit_rate": 0.9166666666666666 }, "rg": { "mean_output_tokens": 77.66666666666667, "median_query_ms": 5.856958508957177, "mrr": 0.7847222222222222, "queries": 12, "top_1_hit_rate": 0.6666666666666666, "top_3_hit_rate": 0.9166666666666666 } } }, "kafka-microservices": { "index_seconds": 0.05407416704110801, "query_count": 6, "revision": "a4752cdb21d1d06bffb398fd5d128d14a87c6cec", "summary": { "ariadne": { "mean_output_tokens": 143, "median_query_ms": 0.15187502140179276, "mrr": 1.0, "queries": 6, "top_1_hit_rate": 1.0, "top_3_hit_rate": 1.0 }, "grep": { "mean_output_tokens": 1878.3333333333333, "median_query_ms": 9.104187542106956, "mrr": 0.37953514739229016, "queries": 6, "top_1_hit_rate": 0.16666666666666666, "top_3_hit_rate": 0.5 }, "rg": { "mean_output_tokens": 1878.3333333333333, "median_query_ms": 8.969020505901426, "mrr": 0.37953514739229016, "queries": 6, "top_1_hit_rate": 0.16666666666666666, "top_3_hit_rate": 0.5 } } }, "one-platform": { "index_seconds": 0.06235762499272823, "query_count": 18, "revision": "4abf36c30380647e077c140096e715dd07e997a3", "summary": { "ariadne": { "mean_output_tokens": 223.88888888888889, "median_query_ms": 0.8436040370725095, "mrr": 0.7222222222222222, "queries": 18, "top_1_hit_rate": 0.6666666666666666, "top_3_hit_rate": 0.7777777777777778 }, "grep": { "mean_output_tokens": 323.77777777777777, "median_query_ms": 36.77727095782757, "mrr": 0.17918965939560907, "queries": 18, "top_1_hit_rate": 0.0, "top_3_hit_rate": 0.16666666666666666 }, "rg": { "mean_output_tokens": 323.77777777777777, "median_query_ms": 16.040687449276447, "mrr": 0.17918965939560907, "queries": 18, "top_1_hit_rate": 0.0, "top_3_hit_rate": 0.16666666666666666 } } }, "spring-petclinic": { "index_seconds": 0.11858204100281, "query_count": 12, "revision": "305a1f13e4f961001d4e6cb50a9db51dc3fc5967", "summary": { "ariadne": { "mean_output_tokens": 181.66666666666666, "median_query_ms": 0.2531249774619937, "mrr": 0.7916666666666666, "queries": 12, "top_1_hit_rate": 0.75, "top_3_hit_rate": 0.8333333333333334 }, "grep": { "mean_output_tokens": 859.75, "median_query_ms": 8.956542005762458, "mrr": 0.7957070707070707, "queries": 12, "top_1_hit_rate": 0.75, "top_3_hit_rate": 0.8333333333333334 }, "rg": { "mean_output_tokens": 859.75, "median_query_ms": 8.88562499312684, "mrr": 0.7957070707070707, "queries": 12, "top_1_hit_rate": 0.75, "top_3_hit_rate": 0.8333333333333334 } } } }, "schema_version": 2, "summary": { "ariadne": { "mean_output_tokens": 156.97916666666666, "median_query_ms": 0.2531249774619937, "mrr": 0.6770833333333334, "queries": 48, "top_1_hit_rate": 0.6458333333333334, "top_3_hit_rate": 0.7083333333333334 }, "grep": { "mean_output_tokens": 590.5625, "median_query_ms": 9.083666489459574, "mrr": 0.5097453389297129, "queries": 48, "top_1_hit_rate": 0.375, "top_3_hit_rate": 0.5625 }, "rg": { "mean_output_tokens": 590.5625, "median_query_ms": 9.185646020341665, "mrr": 0.5097453389297129, "queries": 48, "top_1_hit_rate": 0.375, "top_3_hit_rate": 0.5625 } }, "top_k": 3 }