Commit 30cdbca2 authored by Anastasios Poimenidis's avatar Anastasios Poimenidis
Browse files

fix: setup href correctly

parent 05e5c6f8
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
@@ -30,9 +30,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.UUID;
import org.etsi.osl.hypo.api.tmf.common.api.constants.ApiConstants;
import org.etsi.osl.hypo.api.tmf.common.schema.validations.BaseFieldsEntityWithHref;

public class UtilService {

@@ -190,19 +188,6 @@ public class UtilService {
        return criteriaParams;
    }

    public static <T extends BaseFieldsEntityWithHref> void setBasicFieldsAndHref(
            T entity, UriInfo uriInfo) {
        if (Objects.isNull(entity.getId())) {
            String id = UUID.randomUUID().toString();
            entity.setId(id);
        }
        entity.setType(entity.getClass().getSimpleName());

        if (uriInfo != null) {
            entity.setHref(uriInfo.getAbsolutePath().toString().concat("/").concat(entity.getId()));
        }
    }

    private static void buildWhereClauseForName(
            String queryQualifier, boolean hasName, String name, StringBuilder queryBuilder) {
        if (hasName) {
+9 −3
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@ import static jakarta.ws.rs.core.MediaType.APPLICATION_JSON;

import io.quarkus.security.Authenticated;
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Inject;
import jakarta.validation.Valid;
import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE;
@@ -40,10 +39,16 @@ public class GeographicSiteResourceImpl {

    private static final Logger logger = Logger.getLogger(GeographicSiteResourceImpl.class);

    @Inject GeographicSiteService geographicSiteService;
    private final GeographicSiteService geographicSiteService;

    public static final String GEOGRAPHIC_SITE = "geographicSite";

    @Context private UriInfo uriInfo;

    public GeographicSiteResourceImpl(GeographicSiteService geographicSiteService) {
        this.geographicSiteService = geographicSiteService;
    }

    @POST
    @Path(ApplicationProperties.TMF_URL_VERSION + "/" + GEOGRAPHIC_SITE)
    @Produces(MediaType.APPLICATION_JSON)
@@ -68,7 +73,8 @@ public class GeographicSiteResourceImpl {
                            schema = @Schema(implementation = ErrorMessage.class)))
    public Response create(@Valid GeographicSite geographicSite) {
        logger.info("Request : " + geographicSite.toString());
        GeographicSite newGeographicSite = geographicSiteService.createGeographicSite(geographicSite);
        GeographicSite newGeographicSite =
                geographicSiteService.createGeographicSite(geographicSite, uriInfo);
        logger.info("Response : " + newGeographicSite.toString());
        return Response.ok(newGeographicSite).status(201).build();
    }
+5 −1
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ package org.etsi.osl.hypo.api.tmf.geographic.site.api.services;

import jakarta.enterprise.context.ApplicationScoped;
import jakarta.transaction.Transactional;
import jakarta.ws.rs.core.UriInfo;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -70,9 +71,12 @@ public class GeographicSiteService {
    }

    @Transactional
    public GeographicSite createGeographicSite(GeographicSite geographicSite) {
    public GeographicSite createGeographicSite(GeographicSite geographicSite, UriInfo uriInfo) {
        checkIfIdExists(geographicSite.getId());
        findRelatedPartyAndAddItToResource(geographicSite);
        if (uriInfo != null) {
            geographicSite.setUri(uriInfo.getAbsolutePath());
        }
        geographicSiteRepository.persist(geographicSite);
        return geographicSite;
    }
+6 −3
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@ import static jakarta.ws.rs.core.MediaType.APPLICATION_JSON;

import io.quarkus.security.Authenticated;
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Inject;
import jakarta.validation.Valid;
import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE;
@@ -41,7 +40,11 @@ import org.jboss.resteasy.reactive.RestQuery;
public class PartnershipResource {
    private static final Logger logger = Logger.getLogger(PartnershipResource.class);

    @Inject PartnershipService partnershipService;
    private final PartnershipService partnershipService;

    public PartnershipResource(PartnershipService partnershipService) {
        this.partnershipService = partnershipService;
    }

    @POST
    @Produces(MediaType.APPLICATION_JSON)
@@ -64,7 +67,7 @@ public class PartnershipResource {
                            schema = @Schema(implementation = ErrorMessage.class)))
    public Response create(@Valid Partnership partnership, @Context UriInfo uriInfo) {
        logger.info("Request : " + partnership.toString());
        Partnership newPartnership = partnershipService.createPartnership(partnership);
        Partnership newPartnership = partnershipService.createPartnership(partnership, uriInfo);
        logger.info("Response : " + newPartnership.toString());
        return Response.ok(newPartnership).status(201).build();
    }
+8 −3
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@ import static jakarta.ws.rs.core.MediaType.APPLICATION_JSON;

import io.quarkus.security.Authenticated;
import jakarta.annotation.security.PermitAll;
import jakarta.inject.Inject;
import jakarta.validation.Valid;
import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE;
@@ -44,7 +43,12 @@ public class PartnershipSpecificationResource {

    private static final Logger logger = Logger.getLogger(PartnershipSpecificationResource.class);

    @Inject PartnershipSpecificationService partnershipSpecificationService;
    private final PartnershipSpecificationService partnershipSpecificationService;

    public PartnershipSpecificationResource(
            PartnershipSpecificationService partnershipSpecificationService) {
        this.partnershipSpecificationService = partnershipSpecificationService;
    }

    @POST
    @Produces(MediaType.APPLICATION_JSON)
@@ -71,7 +75,8 @@ public class PartnershipSpecificationResource {
            @Valid PartnershipSpecification partnershipSpecification, @Context UriInfo uriInfo) {
        logger.info("Request : " + partnershipSpecification.toString());
        PartnershipSpecification newPartnershipSpecification =
                partnershipSpecificationService.createPartnershipSpecification(partnershipSpecification);
                partnershipSpecificationService.createPartnershipSpecification(
                        partnershipSpecification, uriInfo);
        logger.info("Response : " + newPartnershipSpecification.toString());
        return Response.ok(newPartnershipSpecification).status(201).build();
    }
Loading