diff --git a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsAction.java b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsAction.java index 552563e4..1c036f93 100644 --- a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsAction.java +++ b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsAction.java @@ -30,7 +30,6 @@ import com.kingsrook.qqq.api.model.APIVersionRange; import com.kingsrook.qqq.api.model.actions.GetTableApiFieldsInput; import com.kingsrook.qqq.api.model.actions.GetTableApiFieldsOutput; import com.kingsrook.qqq.api.model.metadata.fields.ApiFieldMetaData; -import com.kingsrook.qqq.api.model.metadata.fields.RemovedApiFieldMetaData; import com.kingsrook.qqq.api.model.metadata.tables.ApiTableMetaData; import com.kingsrook.qqq.backend.core.actions.AbstractQActionFunction; import com.kingsrook.qqq.backend.core.context.QContext; @@ -80,7 +79,7 @@ public class GetTableApiFieldsAction extends AbstractQActionFunction getRemovedApiFields(QTableMetaData table) + private List getRemovedApiFields(QTableMetaData table) { ApiTableMetaData apiTableMetaData = ApiMiddlewareType.getApiTableMetaData(table); if(apiTableMetaData != null) diff --git a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/ApiFieldMetaData.java b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/ApiFieldMetaData.java index fdb7173e..5fa013f3 100644 --- a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/ApiFieldMetaData.java +++ b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/ApiFieldMetaData.java @@ -31,6 +31,7 @@ import com.kingsrook.qqq.backend.core.model.metadata.fields.QMiddlewareFieldMeta public class ApiFieldMetaData extends QMiddlewareFieldMetaData { private String initialVersion; + private String finalVersion; @@ -74,4 +75,35 @@ public class ApiFieldMetaData extends QMiddlewareFieldMetaData return (this); } + + + /******************************************************************************* + ** Getter for finalVersion + *******************************************************************************/ + public String getFinalVersion() + { + return (this.finalVersion); + } + + + + /******************************************************************************* + ** Setter for finalVersion + *******************************************************************************/ + public void setFinalVersion(String finalVersion) + { + this.finalVersion = finalVersion; + } + + + + /******************************************************************************* + ** Fluent setter for finalVersion + *******************************************************************************/ + public ApiFieldMetaData withFinalVersion(String finalVersion) + { + this.finalVersion = finalVersion; + return (this); + } + } diff --git a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/RemovedApiFieldMetaData.java b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/RemovedApiFieldMetaData.java deleted file mode 100644 index 21038662..00000000 --- a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/fields/RemovedApiFieldMetaData.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * QQQ - Low-code Application Framework for Engineers. - * Copyright (C) 2021-2023. Kingsrook, LLC - * 651 N Broad St Ste 205 # 6917 | Middletown DE 19709 | United States - * contact@kingsrook.com - * https://github.com/Kingsrook/ - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -package com.kingsrook.qqq.api.model.metadata.fields; - - -import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData; -import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldType; - - -/******************************************************************************* - ** - *******************************************************************************/ -public class RemovedApiFieldMetaData extends QFieldMetaData -{ - private String finalVersion; - private String replacedByFieldName; - - - - /******************************************************************************* - ** Constructor - ** - *******************************************************************************/ - public RemovedApiFieldMetaData() - { - super(); - } - - - - /******************************************************************************* - ** Constructor - ** - *******************************************************************************/ - public RemovedApiFieldMetaData(String name, QFieldType type) - { - super(name, type); - } - - - - /******************************************************************************* - ** Getter for replacedByFieldName - *******************************************************************************/ - public String getReplacedByFieldName() - { - return (this.replacedByFieldName); - } - - - - /******************************************************************************* - ** Setter for replacedByFieldName - *******************************************************************************/ - public void setReplacedByFieldName(String replacedByFieldName) - { - this.replacedByFieldName = replacedByFieldName; - } - - - - /******************************************************************************* - ** Fluent setter for replacedByFieldName - *******************************************************************************/ - public RemovedApiFieldMetaData withReplacedByFieldName(String replacedByFieldName) - { - this.replacedByFieldName = replacedByFieldName; - return (this); - } - - - - /******************************************************************************* - ** Getter for finalVersion - *******************************************************************************/ - public String getFinalVersion() - { - return (this.finalVersion); - } - - - - /******************************************************************************* - ** Setter for finalVersion - *******************************************************************************/ - public void setFinalVersion(String finalVersion) - { - this.finalVersion = finalVersion; - } - - - - /******************************************************************************* - ** Fluent setter for finalVersion - *******************************************************************************/ - public RemovedApiFieldMetaData withFinalVersion(String finalVersion) - { - this.finalVersion = finalVersion; - return (this); - } - -} diff --git a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/tables/ApiTableMetaData.java b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/tables/ApiTableMetaData.java index fc3b92df..f48fd7f0 100644 --- a/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/tables/ApiTableMetaData.java +++ b/qqq-middleware-api/src/main/java/com/kingsrook/qqq/api/model/metadata/tables/ApiTableMetaData.java @@ -26,7 +26,6 @@ import java.util.ArrayList; import java.util.List; import com.kingsrook.qqq.api.ApiMiddlewareType; import com.kingsrook.qqq.api.model.metadata.fields.ApiFieldMetaData; -import com.kingsrook.qqq.api.model.metadata.fields.RemovedApiFieldMetaData; import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData; import com.kingsrook.qqq.backend.core.model.metadata.tables.QMiddlewareTableMetaData; import com.kingsrook.qqq.backend.core.model.metadata.tables.QTableMetaData; @@ -40,7 +39,7 @@ public class ApiTableMetaData extends QMiddlewareTableMetaData private String initialVersion; private String finalVersion; - private List removedApiFields; + private List removedApiFields; @@ -86,7 +85,7 @@ public class ApiTableMetaData extends QMiddlewareTableMetaData /******************************************************************************* ** Getter for removedApiFields *******************************************************************************/ - public List getRemovedApiFields() + public List getRemovedApiFields() { return (this.removedApiFields); } @@ -96,7 +95,7 @@ public class ApiTableMetaData extends QMiddlewareTableMetaData /******************************************************************************* ** Setter for removedApiFields *******************************************************************************/ - public void setRemovedApiFields(List removedApiFields) + public void setRemovedApiFields(List removedApiFields) { this.removedApiFields = removedApiFields; } @@ -106,7 +105,7 @@ public class ApiTableMetaData extends QMiddlewareTableMetaData /******************************************************************************* ** Fluent setter for removedApiFields *******************************************************************************/ - public ApiTableMetaData withRemovedApiFields(List removedApiFields) + public ApiTableMetaData withRemovedApiFields(List removedApiFields) { this.removedApiFields = removedApiFields; return (this); @@ -117,7 +116,7 @@ public class ApiTableMetaData extends QMiddlewareTableMetaData /******************************************************************************* ** Fluent setter for a single removedApiField *******************************************************************************/ - public ApiTableMetaData withRemovedApiField(RemovedApiFieldMetaData removedApiField) + public ApiTableMetaData withRemovedApiField(QFieldMetaData removedApiField) { if(this.removedApiFields == null) { diff --git a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/TestUtils.java b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/TestUtils.java index 302b93cb..3e082426 100644 --- a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/TestUtils.java +++ b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/TestUtils.java @@ -62,6 +62,9 @@ public class TestUtils qInstance.setAuthentication(new Auth0AuthenticationMetaData().withType(QAuthenticationType.FULLY_ANONYMOUS).withName("anonymous")); qInstance.withMiddlewareMetaData(new ApiInstanceMetaData() + .withName("TestAPI") + .withDescription("QQQ Test API") + .withContactEmail("contact@kingsrook.com") .withCurrentVersion(new APIVersion(API_VERSION)) .withSupportedVersions(List.of(new APIVersion(API_VERSION))) ); diff --git a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsActionTest.java b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsActionTest.java index 7c60f119..1ab34d3e 100644 --- a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsActionTest.java +++ b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/actions/GetTableApiFieldsActionTest.java @@ -29,7 +29,6 @@ import java.util.stream.Collectors; import com.kingsrook.qqq.api.BaseTest; import com.kingsrook.qqq.api.model.actions.GetTableApiFieldsInput; import com.kingsrook.qqq.api.model.metadata.fields.ApiFieldMetaData; -import com.kingsrook.qqq.api.model.metadata.fields.RemovedApiFieldMetaData; import com.kingsrook.qqq.api.model.metadata.tables.ApiTableMetaData; import com.kingsrook.qqq.backend.core.context.QContext; import com.kingsrook.qqq.backend.core.exceptions.QException; @@ -97,9 +96,7 @@ class GetTableApiFieldsActionTest extends BaseTest qInstance.addTable(new QTableMetaData() .withName(TABLE_NAME) .withMiddlewareMetaData(new ApiTableMetaData().withInitialVersion("1") - .withRemovedApiField(((RemovedApiFieldMetaData) new RemovedApiFieldMetaData("c", STRING) - .withMiddlewareMetaData(new ApiFieldMetaData().withInitialVersion("1"))) - .withFinalVersion("2")) + .withRemovedApiField(new QFieldMetaData("c", STRING).withMiddlewareMetaData(new ApiFieldMetaData().withInitialVersion("1").withFinalVersion("2"))) ) .withField(new QFieldMetaData("a", STRING)) // inherit versionRange from the table .withField(new QFieldMetaData("b", STRING).withMiddlewareMetaData(new ApiFieldMetaData().withInitialVersion("1"))) diff --git a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/javalin/QJavalinApiHandlerTest.java b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/javalin/QJavalinApiHandlerTest.java index f1fdb477..43b06c21 100644 --- a/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/javalin/QJavalinApiHandlerTest.java +++ b/qqq-middleware-api/src/test/java/com/kingsrook/qqq/api/javalin/QJavalinApiHandlerTest.java @@ -101,7 +101,7 @@ class QJavalinApiHandlerTest extends BaseTest System.out.println(response.getBody()); assertThat(response.getBody()) .contains(""" - title: "QQQ API" + title: "TestAPI" """) .contains(""" /person/query: