diff --git a/src/main/java/org/etsi/osl/tmf/pm628/TMF628_Performance_Management_API_v5.0.0.oas.yaml b/src/main/java/org/etsi/osl/tmf/pm628/.openapi-generator/TMF628_Performance_Management_API_v5.0.0.oas.yaml
similarity index 100%
rename from src/main/java/org/etsi/osl/tmf/pm628/TMF628_Performance_Management_API_v5.0.0.oas.yaml
rename to src/main/java/org/etsi/osl/tmf/pm628/.openapi-generator/TMF628_Performance_Management_API_v5.0.0.oas.yaml
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/resources/openapi.yaml b/src/main/java/org/etsi/osl/tmf/pm628/.openapi-generator/openapi.yaml
similarity index 100%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/resources/openapi.yaml
rename to src/main/java/org/etsi/osl/tmf/pm628/.openapi-generator/openapi.yaml
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ApiUtil.java b/src/main/java/org/etsi/osl/tmf/pm628/api/ApiUtil.java
similarity index 90%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ApiUtil.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/ApiUtil.java
index 259a49fe69fe159f6a1a2873e7d3070c005af93b..3a586aaa4a8bddc1e05dae6211bebd5690ed8ac7 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ApiUtil.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/ApiUtil.java
@@ -1,4 +1,4 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
 import org.springframework.web.context.request.NativeWebRequest;
 
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApi.java
similarity index 98%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApi.java
index e63f8ef26bfb90f4afa56644d31ed4cfbb092233..47a31820fc7164a75a021ff55c70c716e0260a35 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApi.java
@@ -3,36 +3,32 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.DataAccessEndpoint;
-import org.etsi.osl.tmf.pm628.model.Error;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.DataAccessEndpoint;
+import org.etsi.osl.tmf.pm628.model.Error;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
-
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApiController.java
similarity index 52%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApiController.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApiController.java
index db002505cd143a532c172d825e5c2b2d725fc279..6a27acf161b2187c73bc04201bd8ed81bd3c0450 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/DataAccessEndpointApiController.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/DataAccessEndpointApiController.java
@@ -1,31 +1,12 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.DataAccessEndpoint;
-import org.etsi.osl.tmf.pm628.model.Error;
-
+package org.etsi.osl.tmf.pm628.api;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.context.request.NativeWebRequest;
 
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Controller
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/HubApi.java
similarity index 92%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/HubApi.java
index cf9cd8768661d2333b5b6eb821731e31d116a9ae..a14db0258a57f9b1e260258947a95b71efe06ab4 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/HubApi.java
@@ -3,36 +3,31 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.Hub;
-import org.etsi.osl.tmf.pm628.model.HubFVO;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
-import io.swagger.v3.oas.annotations.media.ArraySchema;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.Hub;
+import org.etsi.osl.tmf.pm628.model.HubFVO;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/HubApiController.java
similarity index 50%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApiController.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/HubApiController.java
index 8a283dbc030e56116b064562c292af351803be6b..835c02487ee521da949a9687431c66ccf742f7b3 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/HubApiController.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/HubApiController.java
@@ -1,32 +1,12 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.Hub;
-import org.etsi.osl.tmf.pm628.model.HubFVO;
-
+package org.etsi.osl.tmf.pm628.api;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.context.request.NativeWebRequest;
 
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Controller
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApi.java
similarity index 94%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApi.java
index c248a1607fc22777d4f47d3b12e1d5cdf4c669d6..cff633436aa9ef7a59b48ed151df1450fda6f9af 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApi.java
@@ -3,42 +3,28 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobAttributeValueChangeEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobCreateEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobDeleteEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobExecutionStateChangeEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFilesPreparationErrorEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFilesReadyEvent;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurementCollectionReadyEvent;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurementCreateEvent;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
-import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.*;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApiController.java
new file mode 100644
index 0000000000000000000000000000000000000000..94a8653008d1b9aeac404f1aed3ac9401e1a252d
--- /dev/null
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/ListenerApiController.java
@@ -0,0 +1,28 @@
+package org.etsi.osl.tmf.pm628.api;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.context.request.NativeWebRequest;
+
+import javax.annotation.Generated;
+import java.util.Optional;
+
+@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
+@Controller
+@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
+public class ListenerApiController implements ListenerApi {
+
+    private final NativeWebRequest request;
+
+    @Autowired
+    public ListenerApiController(NativeWebRequest request) {
+        this.request = request;
+    }
+
+    @Override
+    public Optional<NativeWebRequest> getRequest() {
+        return Optional.ofNullable(request);
+    }
+
+}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApi.java
similarity index 99%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApi.java
index 4a3a31905ed078605aaa913232a6aee30e3c354c..ae97f21a50f8d7df7d4ebe09f9d58151668ff1b3 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApi.java
@@ -3,39 +3,31 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJob;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFVO;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobMVO;
-import org.etsi.osl.tmf.pm628.model.PatchMeasurementCollectionJob200Response;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJob;
+import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFVO;
+import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobMVO;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApiController.java
new file mode 100644
index 0000000000000000000000000000000000000000..eac58f00027888917e11010a8ac3f3c207aa9f8a
--- /dev/null
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/MeasurementCollectionJobApiController.java
@@ -0,0 +1,28 @@
+package org.etsi.osl.tmf.pm628.api;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.context.request.NativeWebRequest;
+
+import javax.annotation.Generated;
+import java.util.Optional;
+
+@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
+@Controller
+@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
+public class MeasurementCollectionJobApiController implements MeasurementCollectionJobApi {
+
+    private final NativeWebRequest request;
+
+    @Autowired
+    public MeasurementCollectionJobApiController(NativeWebRequest request) {
+        this.request = request;
+    }
+
+    @Override
+    public Optional<NativeWebRequest> getRequest() {
+        return Optional.ofNullable(request);
+    }
+
+}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApi.java
similarity index 99%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApi.java
index 33228ad8dedeba7f9b3f0743619c0a67084ecc5b..7d20c32ff0a764bacbbe9c6eecde2f80d2ebd9e9 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApi.java
@@ -3,39 +3,31 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.PatchPerformanceIndicatorGroupSpecification200Response;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecification;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationFVO;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationMVO;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecification;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationFVO;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationMVO;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApiController.java
new file mode 100644
index 0000000000000000000000000000000000000000..863725d0910017f226adb0745daeb617bf7534d0
--- /dev/null
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorGroupSpecificationApiController.java
@@ -0,0 +1,28 @@
+package org.etsi.osl.tmf.pm628.api;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.context.request.NativeWebRequest;
+
+import javax.annotation.Generated;
+import java.util.Optional;
+
+@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
+@Controller
+@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
+public class PerformanceIndicatorGroupSpecificationApiController implements PerformanceIndicatorGroupSpecificationApi {
+
+    private final NativeWebRequest request;
+
+    @Autowired
+    public PerformanceIndicatorGroupSpecificationApiController(NativeWebRequest request) {
+        this.request = request;
+    }
+
+    @Override
+    public Optional<NativeWebRequest> getRequest() {
+        return Optional.ofNullable(request);
+    }
+
+}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApi.java
similarity index 99%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApi.java
index c3bea4d50b4c2a73396b366f426f513a6f5a42fb..cd0433f8afc49b669702556d9b322b6f290fead8 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApi.java
@@ -3,39 +3,31 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.PatchPerformanceIndicatorSpecification200Response;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecification;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationFVO;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationMVO;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecification;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationFVO;
+import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationMVO;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApiController.java
new file mode 100644
index 0000000000000000000000000000000000000000..9b99ab1ed2908d31a5a505202918c42319bce042
--- /dev/null
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceIndicatorSpecificationApiController.java
@@ -0,0 +1,28 @@
+package org.etsi.osl.tmf.pm628.api;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.context.request.NativeWebRequest;
+
+import javax.annotation.Generated;
+import java.util.Optional;
+
+@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
+@Controller
+@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
+public class PerformanceIndicatorSpecificationApiController implements PerformanceIndicatorSpecificationApi {
+
+    private final NativeWebRequest request;
+
+    @Autowired
+    public PerformanceIndicatorSpecificationApiController(NativeWebRequest request) {
+        this.request = request;
+    }
+
+    @Override
+    public Optional<NativeWebRequest> getRequest() {
+        return Optional.ofNullable(request);
+    }
+
+}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApi.java
similarity index 98%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApi.java
index 1d35955b8fb643206de11848810c33c636675d17..e36dfb065c86d07222459db6151a4a0bb3e785a9 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApi.java
@@ -3,35 +3,32 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurement;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.PerformanceMeasurement;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApiController.java
similarity index 52%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApiController.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApiController.java
index 4d4b96b18382454d85db36cda350d08cb080cce6..8118bf4d59125c79cd172799585c1f5de8c181cb 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceMeasurementApiController.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/PerformanceMeasurementApiController.java
@@ -1,31 +1,12 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurement;
-
+package org.etsi.osl.tmf.pm628.api;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.context.request.NativeWebRequest;
 
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Controller
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApi.java b/src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApi.java
similarity index 98%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApi.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApi.java
index 213c5a1c54f3825074f1ed86daff6bc399e4f7a9..0369727d99a0d322f2477104efd56f2e5858f61f 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApi.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApi.java
@@ -3,35 +3,32 @@
  * https://openapi-generator.tech
  * Do not edit the class manually.
  */
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
+package org.etsi.osl.tmf.pm628.api;
 
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.TrackingRecord;
-import io.swagger.v3.oas.annotations.ExternalDocumentation;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import io.swagger.v3.oas.annotations.media.ArraySchema;
 import io.swagger.v3.oas.annotations.media.Content;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.responses.ApiResponse;
-import io.swagger.v3.oas.annotations.security.SecurityRequirement;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import jakarta.validation.Valid;
+import org.etsi.osl.tmf.pm628.model.Error;
+import org.etsi.osl.tmf.pm628.model.TrackingRecord;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.multipart.MultipartFile;
 
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.*;
+import javax.annotation.Generated;
 import java.util.List;
-import java.util.Map;
 import java.util.Optional;
-import javax.annotation.Generated;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Validated
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApiController.java
similarity index 52%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApiController.java
rename to src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApiController.java
index 8fd35c3645da51ec7ebc3386b61a1614ff532f74..702731b1e3d50bb93083d272637ee9cc5d44ef10 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/TrackingRecordApiController.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/api/TrackingRecordApiController.java
@@ -1,31 +1,12 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.TrackingRecord;
-
+package org.etsi.osl.tmf.pm628.api;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.context.request.NativeWebRequest;
 
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
 import javax.annotation.Generated;
+import java.util.Optional;
 
 @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
 @Controller
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/EnumConverterConfiguration.java b/src/main/java/org/etsi/osl/tmf/pm628/configuration/EnumConverterConfiguration.java
similarity index 87%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/EnumConverterConfiguration.java
rename to src/main/java/org/etsi/osl/tmf/pm628/configuration/EnumConverterConfiguration.java
index f081dfc02e61f78161522752c1e25e4d87a60984..7bd2512ff91d1604c32643064e7d0c1328f96b41 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/EnumConverterConfiguration.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/configuration/EnumConverterConfiguration.java
@@ -1,19 +1,6 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.configuration;
-
-import org.etsi.osl.tmf.pm628.model.AdministrativeState;
-import org.etsi.osl.tmf.pm628.model.CollectionType;
-import org.etsi.osl.tmf.pm628.model.CompressionEnumType;
-import org.etsi.osl.tmf.pm628.model.ExecutionStateType;
-import org.etsi.osl.tmf.pm628.model.Granularity;
-import org.etsi.osl.tmf.pm628.model.IndicatorType;
-import org.etsi.osl.tmf.pm628.model.OrderItemActionType;
-import org.etsi.osl.tmf.pm628.model.PackingEnumType;
-import org.etsi.osl.tmf.pm628.model.ReportingPeriod;
-import org.etsi.osl.tmf.pm628.model.ResourceAdministrativeStateType;
-import org.etsi.osl.tmf.pm628.model.ResourceOperationalStateType;
-import org.etsi.osl.tmf.pm628.model.ResourceStatusType;
-import org.etsi.osl.tmf.pm628.model.ResourceUsageStateType;
+package org.etsi.osl.tmf.pm628.configuration;
 
+import org.etsi.osl.tmf.pm628.model.*;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.convert.converter.Converter;
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/HomeController.java b/src/main/java/org/etsi/osl/tmf/pm628/configuration/HomeController.java
similarity index 56%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/HomeController.java
rename to src/main/java/org/etsi/osl/tmf/pm628/configuration/HomeController.java
index 899e5363a28548052290e96569950242ea181e6a..3d93b8de4e6e7e68b3345b880a3641bd4e7f90d1 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/HomeController.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/configuration/HomeController.java
@@ -1,10 +1,7 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.configuration;
+package org.etsi.osl.tmf.pm628.configuration;
 
-import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.bind.annotation.GetMapping;
 
 /**
  * Home redirection to OpenAPI api documentation
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/SpringDocConfiguration.java b/src/main/java/org/etsi/osl/tmf/pm628/configuration/SpringDocConfiguration.java
similarity index 71%
rename from src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/SpringDocConfiguration.java
rename to src/main/java/org/etsi/osl/tmf/pm628/configuration/SpringDocConfiguration.java
index c283c008bf722fcf26ca6c12a804db56017ccfb3..3ef0a452a58704fa7dab637bad44467586137dad 100644
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/configuration/SpringDocConfiguration.java
+++ b/src/main/java/org/etsi/osl/tmf/pm628/configuration/SpringDocConfiguration.java
@@ -1,14 +1,9 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.configuration;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
+package org.etsi.osl.tmf.pm628.configuration;
 
 import io.swagger.v3.oas.models.OpenAPI;
 import io.swagger.v3.oas.models.info.Info;
-import io.swagger.v3.oas.models.info.Contact;
-import io.swagger.v3.oas.models.info.License;
-import io.swagger.v3.oas.models.Components;
-import io.swagger.v3.oas.models.security.SecurityScheme;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
 
 @Configuration
 public class SpringDocConfiguration {
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/pom.xml b/src/main/java/org/etsi/osl/tmf/pm628/pom.xml
deleted file mode 100644
index b9e0adadeed9a6274d304b9a30fbe6cd4e14ad47..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/pom.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <groupId>org.openapitools</groupId>
-    <artifactId>org.etsi.osl.tmf628</artifactId>
-    <packaging>jar</packaging>
-    <name>org.etsi.osl.tmf628</name>
-    <version>5.0.0</version>
-    <properties>
-        <java.version>1.8</java.version>
-        <maven.compiler.source>${java.version}</maven.compiler.source>
-        <maven.compiler.target>${java.version}</maven.compiler.target>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <springdoc.version>1.6.14</springdoc.version>
-        <swagger-ui.version>5.3.1</swagger-ui.version>
-    </properties>
-    <parent>
-        <groupId>org.etsi.osl</groupId>
-        <artifactId>org.etsi.osl.main</artifactId>
-        <version>1.0.0-SNAPSHOT</version>
-    </parent>
-    <build>
-        <sourceDirectory>src/main/java</sourceDirectory>
-        <plugins>
-            <plugin>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-maven-plugin</artifactId>
-                <configuration>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.data</groupId>
-            <artifactId>spring-data-commons</artifactId>
-        </dependency>
-          <!--SpringDoc dependencies -->
-        <dependency>
-            <groupId>org.springdoc</groupId>
-            <artifactId>springdoc-openapi-ui</artifactId>
-            <version>${springdoc.version}</version>
-        </dependency>
-        <!-- @Nullable annotation -->
-        <dependency>
-            <groupId>com.google.code.findbugs</groupId>
-            <artifactId>jsr305</artifactId>
-            <version>3.0.2</version>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.dataformat</groupId>
-            <artifactId>jackson-dataformat-yaml</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.datatype</groupId>
-            <artifactId>jackson-datatype-jsr310</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.openapitools</groupId>
-            <artifactId>jackson-databind-nullable</artifactId>
-            <version>0.2.6</version>
-        </dependency>
-        <!-- Bean Validation API support -->
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-validation</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-</project>
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/OpenApiGeneratorApplication.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/OpenApiGeneratorApplication.java
deleted file mode 100644
index 30aa5276982959c08070bcb05db5cdd89e4f66d3..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/OpenApiGeneratorApplication.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools;
-
-import com.fasterxml.jackson.databind.Module;
-import org.openapitools.jackson.nullable.JsonNullableModule;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.FilterType;
-import org.springframework.context.annotation.FullyQualifiedAnnotationBeanNameGenerator;
-
-@SpringBootApplication(
-    nameGenerator = FullyQualifiedAnnotationBeanNameGenerator.class
-)
-@ComponentScan(
-    basePackages = {"org.openapitools", "org.openapitools.api" , "org.openapitools.configuration"},
-    nameGenerator = FullyQualifiedAnnotationBeanNameGenerator.class
-)
-public class OpenApiGeneratorApplication {
-
-    public static void main(String[] args) {
-        SpringApplication.run(OpenApiGeneratorApplication.class, args);
-    }
-
-    @Bean(name = "org.openapitools.OpenApiGeneratorApplication.jsonNullableModule")
-    public Module jsonNullableModule() {
-        return new JsonNullableModule();
-    }
-
-}
\ No newline at end of file
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/RFC3339DateFormat.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/RFC3339DateFormat.java
deleted file mode 100644
index 90dc86ccbf03a54e736ed8907a34b2a8b0d4ca95..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/RFC3339DateFormat.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools;
-
-import com.fasterxml.jackson.databind.util.StdDateFormat;
-
-import java.text.DateFormat;
-import java.text.FieldPosition;
-import java.text.ParsePosition;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.TimeZone;
-
-public class RFC3339DateFormat extends DateFormat {
-  private static final long serialVersionUID = 1L;
-  private static final TimeZone TIMEZONE_Z = TimeZone.getTimeZone("UTC");
-
-  private final StdDateFormat fmt = new StdDateFormat()
-          .withTimeZone(TIMEZONE_Z)
-          .withColonInTimeZone(true);
-
-  public RFC3339DateFormat() {
-    this.calendar = new GregorianCalendar();
-  }
-
-  @Override
-  public Date parse(String source, ParsePosition pos) {
-    return fmt.parse(source, pos);
-  }
-
-  @Override
-  public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition) {
-    return fmt.format(date, toAppendTo, fieldPosition);
-  }
-
-  @Override
-  public Object clone() {
-    return this;
-  }
-}
\ No newline at end of file
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApiController.java
deleted file mode 100644
index fb7756fae2fea302fef98bf4c22865a0434377a6..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/ListenerApiController.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobAttributeValueChangeEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobCreateEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobDeleteEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobExecutionStateChangeEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFilesPreparationErrorEvent;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFilesReadyEvent;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurementCollectionReadyEvent;
-import org.etsi.osl.tmf.pm628.model.PerformanceMeasurementCreateEvent;
-
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.context.request.NativeWebRequest;
-
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
-@Controller
-@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
-public class ListenerApiController implements ListenerApi {
-
-    private final NativeWebRequest request;
-
-    @Autowired
-    public ListenerApiController(NativeWebRequest request) {
-        this.request = request;
-    }
-
-    @Override
-    public Optional<NativeWebRequest> getRequest() {
-        return Optional.ofNullable(request);
-    }
-
-}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApiController.java
deleted file mode 100644
index d5fdae5b3a21754fcd07b968f48de5f0563355ea..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/MeasurementCollectionJobApiController.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJob;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobFVO;
-import org.etsi.osl.tmf.pm628.model.MeasurementCollectionJobMVO;
-import org.etsi.osl.tmf.pm628.model.PatchMeasurementCollectionJob200Response;
-
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.context.request.NativeWebRequest;
-
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
-@Controller
-@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
-public class MeasurementCollectionJobApiController implements MeasurementCollectionJobApi {
-
-    private final NativeWebRequest request;
-
-    @Autowired
-    public MeasurementCollectionJobApiController(NativeWebRequest request) {
-        this.request = request;
-    }
-
-    @Override
-    public Optional<NativeWebRequest> getRequest() {
-        return Optional.ofNullable(request);
-    }
-
-}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApiController.java
deleted file mode 100644
index 1acae8446a2ee0c1a589cb16499a50dbc4564e55..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorGroupSpecificationApiController.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.PatchPerformanceIndicatorGroupSpecification200Response;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecification;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationFVO;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorGroupSpecificationMVO;
-
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.context.request.NativeWebRequest;
-
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
-@Controller
-@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
-public class PerformanceIndicatorGroupSpecificationApiController implements PerformanceIndicatorGroupSpecificationApi {
-
-    private final NativeWebRequest request;
-
-    @Autowired
-    public PerformanceIndicatorGroupSpecificationApiController(NativeWebRequest request) {
-        this.request = request;
-    }
-
-    @Override
-    public Optional<NativeWebRequest> getRequest() {
-        return Optional.ofNullable(request);
-    }
-
-}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApiController.java b/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApiController.java
deleted file mode 100644
index e32568970c54eefcf8fe85cae9a520b48f4cace9..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/java/org/openapitools/api/PerformanceIndicatorSpecificationApiController.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package org.etsi.osl.tmf.pm628.src.main.java.org.openapitools.api;
-
-import org.etsi.osl.tmf.pm628.model.Error;
-import org.etsi.osl.tmf.pm628.model.JsonPatch;
-import org.etsi.osl.tmf.pm628.model.PatchPerformanceIndicatorSpecification200Response;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecification;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationFVO;
-import org.etsi.osl.tmf.pm628.model.PerformanceIndicatorSpecificationMVO;
-
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestHeader;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.CookieValue;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.context.request.NativeWebRequest;
-
-import jakarta.validation.constraints.*;
-import jakarta.validation.Valid;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.annotation.Generated;
-
-@Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-05-15T07:30:16.936523289Z[Etc/UTC]", comments = "Generator version: 7.6.0-SNAPSHOT")
-@Controller
-@RequestMapping("${openapi.performance.base-path:/tmf-api/performance/v5}")
-public class PerformanceIndicatorSpecificationApiController implements PerformanceIndicatorSpecificationApi {
-
-    private final NativeWebRequest request;
-
-    @Autowired
-    public PerformanceIndicatorSpecificationApiController(NativeWebRequest request) {
-        this.request = request;
-    }
-
-    @Override
-    public Optional<NativeWebRequest> getRequest() {
-        return Optional.ofNullable(request);
-    }
-
-}
diff --git a/src/main/java/org/etsi/osl/tmf/pm628/src/main/resources/application.properties b/src/main/java/org/etsi/osl/tmf/pm628/src/main/resources/application.properties
deleted file mode 100644
index 7e90813e59b2dfa9dff16823ed63efb99a87d680..0000000000000000000000000000000000000000
--- a/src/main/java/org/etsi/osl/tmf/pm628/src/main/resources/application.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-server.port=8080
-spring.jackson.date-format=org.openapitools.RFC3339DateFormat
-spring.jackson.serialization.WRITE_DATES_AS_TIMESTAMPS=false