chore: CE split for git constants and AGF (#38464)

This commit is contained in:
Nidhi 2025-01-06 09:38:05 +05:30 committed by GitHub
parent 625be352f7
commit 5b7bde7430
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 62 additions and 52 deletions

View File

@ -1,38 +1,5 @@
package com.appsmith.git.constants;
public class CommonConstants {
// This field will be useful when we migrate fields within JSON files (currently this will be useful for Git
// feature)
public static Integer fileFormatVersion = 5;
public static String FILE_FORMAT_VERSION = "fileFormatVersion";
public static final String SERVER_SCHEMA_VERSION = "serverSchemaVersion";
public static final String CLIENT_SCHEMA_VERSION = "clientSchemaVersion";
import com.appsmith.git.constants.ce.CommonConstantsCE;
public static final String CANVAS = "canvas";
public static final String APPLICATION = "application";
public static final String THEME = "theme";
public static final String METADATA = "metadata";
public static final String JSON_EXTENSION = ".json";
public static final String JS_EXTENSION = ".js";
public static final String TEXT_FILE_EXTENSION = ".txt";
public static final String WIDGETS = "widgets";
public static final String WIDGET_NAME = "widgetName";
public static final String WIDGET_TYPE = "type";
public static final String CHILDREN = "children";
public static final String CANVAS_WIDGET = "CANVAS_WIDGET";
public static final String MAIN_CONTAINER = "MainContainer";
public static final String DELIMITER_POINT = ".";
public static final String DELIMITER_PATH = "/";
public static final String DELIMITER_HYPHEN = "-";
public static final String EMPTY_STRING = "";
public static final String SEPARATOR_UNDERSCORE = "_";
public static final String FILE_MIGRATION_MESSAGE =
"Some of the changes above are due to an improved file structure. You can safely commit them to your repository.";
public static final String TABS_WIDGET = "TABS_WIDGET";
public static final String WIDGET_ID = "widgetId";
public static final String PARENT_ID = "parentId";
}
public class CommonConstants extends CommonConstantsCE {}

View File

@ -0,0 +1,38 @@
package com.appsmith.git.constants.ce;
public class CommonConstantsCE {
// This field will be useful when we migrate fields within JSON files (currently this will be useful for Git
// feature)
public static Integer fileFormatVersion = 5;
public static String FILE_FORMAT_VERSION = "fileFormatVersion";
public static final String SERVER_SCHEMA_VERSION = "serverSchemaVersion";
public static final String CLIENT_SCHEMA_VERSION = "clientSchemaVersion";
public static final String CANVAS = "canvas";
public static final String APPLICATION = "application";
public static final String THEME = "theme";
public static final String METADATA = "metadata";
public static final String JSON_EXTENSION = ".json";
public static final String JS_EXTENSION = ".js";
public static final String TEXT_FILE_EXTENSION = ".txt";
public static final String WIDGETS = "widgets";
public static final String WIDGET_NAME = "widgetName";
public static final String WIDGET_TYPE = "type";
public static final String CHILDREN = "children";
public static final String CANVAS_WIDGET = "CANVAS_WIDGET";
public static final String MAIN_CONTAINER = "MainContainer";
public static final String DELIMITER_POINT = ".";
public static final String DELIMITER_PATH = "/";
public static final String DELIMITER_HYPHEN = "-";
public static final String EMPTY_STRING = "";
public static final String SEPARATOR_UNDERSCORE = "_";
public static final String FILE_MIGRATION_MESSAGE =
"Some of the changes above are due to an improved file structure. You can safely commit them to your repository.";
public static final String TABS_WIDGET = "TABS_WIDGET";
public static final String WIDGET_ID = "widgetId";
public static final String PARENT_ID = "parentId";
}

View File

@ -87,7 +87,7 @@ import static com.appsmith.server.helpers.ce.CommonGitFileUtilsCE.removeUnwanted
@Slf4j
@Component
@Import({FileUtilsImpl.class})
public class ApplicationGitFileUtilsCEImpl implements ArtifactGitFileUtilsCE<ApplicationGitReference> {
public class ApplicationGitFileUtilsCEImpl implements ArtifactGitFileUtilsCE<ApplicationJson> {
private final Gson gson;
private final ObjectMapper objectMapper;

View File

@ -1,8 +1,8 @@
package com.appsmith.server.applications.git;
import com.appsmith.external.git.FileInterface;
import com.appsmith.external.models.ApplicationGitReference;
import com.appsmith.server.actioncollections.base.ActionCollectionService;
import com.appsmith.server.dtos.ApplicationJson;
import com.appsmith.server.helpers.ArtifactGitFileUtils;
import com.appsmith.server.migrations.JsonSchemaMigration;
import com.appsmith.server.newactions.base.NewActionService;
@ -12,7 +12,7 @@ import org.springframework.stereotype.Component;
@Component
public class ApplicationGitFileUtilsImpl extends ApplicationGitFileUtilsCEImpl
implements ArtifactGitFileUtils<ApplicationGitReference> {
implements ArtifactGitFileUtils<ApplicationJson> {
public ApplicationGitFileUtilsImpl(
Gson gson,

View File

@ -1,6 +1,6 @@
package com.appsmith.server.helpers;
import com.appsmith.external.models.ArtifactGitReference;
import com.appsmith.server.dtos.ArtifactExchangeJson;
import com.appsmith.server.helpers.ce.ArtifactGitFileUtilsCE;
public interface ArtifactGitFileUtils<T extends ArtifactGitReference> extends ArtifactGitFileUtilsCE<T> {}
public interface ArtifactGitFileUtils<T extends ArtifactExchangeJson> extends ArtifactGitFileUtilsCE<T> {}

View File

@ -2,9 +2,9 @@ package com.appsmith.server.helpers;
import com.appsmith.external.git.FileInterface;
import com.appsmith.external.git.operations.FileOperations;
import com.appsmith.external.models.ApplicationGitReference;
import com.appsmith.git.files.FileUtilsImpl;
import com.appsmith.server.actioncollections.base.ActionCollectionService;
import com.appsmith.server.dtos.ApplicationJson;
import com.appsmith.server.helpers.ce.CommonGitFileUtilsCE;
import com.appsmith.server.migrations.JsonSchemaVersions;
import com.appsmith.server.newactions.base.NewActionService;
@ -21,7 +21,7 @@ import org.springframework.stereotype.Component;
public class CommonGitFileUtils extends CommonGitFileUtilsCE {
public CommonGitFileUtils(
ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils,
ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils,
FileInterface fileUtils,
FileOperations fileOperations,
AnalyticsService analyticsService,

View File

@ -3,6 +3,8 @@ package com.appsmith.server.helpers.ce;
import com.appsmith.external.git.models.GitResourceMap;
import com.appsmith.external.models.ArtifactGitReference;
import com.appsmith.server.dtos.ArtifactExchangeJson;
import com.appsmith.server.exceptions.AppsmithError;
import com.appsmith.server.exceptions.AppsmithException;
import com.appsmith.server.git.dtos.ArtifactJsonTransformationDTO;
import lombok.NonNull;
import reactor.core.publisher.Mono;
@ -10,19 +12,23 @@ import reactor.core.publisher.Mono;
import java.nio.file.Path;
import java.util.Map;
public interface ArtifactGitFileUtilsCE<T extends ArtifactGitReference> {
public interface ArtifactGitFileUtilsCE<T extends ArtifactExchangeJson> {
T createArtifactReferenceObject();
default ArtifactGitReference createArtifactReferenceObject() {
return null;
}
ArtifactExchangeJson createArtifactExchangeJsonObject();
void setArtifactDependentResources(ArtifactExchangeJson artifactExchangeJson, GitResourceMap gitResourceMap);
Mono<ArtifactExchangeJson> reconstructArtifactExchangeJsonFromFilesInRepository(
String workspaceId, String baseArtifactId, String repoName, String branchName);
default Mono<ArtifactExchangeJson> reconstructArtifactExchangeJsonFromFilesInRepository(
String workspaceId, String baseArtifactId, String repoName, String branchName) {
return Mono.error(new AppsmithException(AppsmithError.UNSUPPORTED_OPERATION));
}
void addArtifactReferenceFromExportedJson(
ArtifactExchangeJson artifactExchangeJson, ArtifactGitReference artifactGitReference);
default void addArtifactReferenceFromExportedJson(
ArtifactExchangeJson artifactExchangeJson, ArtifactGitReference artifactGitReference) {}
Map<String, String> getConstantsMap();

View File

@ -9,7 +9,6 @@ import com.appsmith.external.git.operations.FileOperations;
import com.appsmith.external.helpers.Stopwatch;
import com.appsmith.external.models.ActionConfiguration;
import com.appsmith.external.models.ActionDTO;
import com.appsmith.external.models.ApplicationGitReference;
import com.appsmith.external.models.ArtifactGitReference;
import com.appsmith.external.models.BaseDomain;
import com.appsmith.external.models.DatasourceStorage;
@ -86,7 +85,7 @@ import static org.springframework.util.StringUtils.hasText;
@Import({FileUtilsImpl.class})
public class CommonGitFileUtilsCE {
protected final ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils;
protected final ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils;
private final FileInterface fileUtils;
private final FileOperations fileOperations;
private final AnalyticsService analyticsService;
@ -103,7 +102,7 @@ public class CommonGitFileUtilsCE {
protected final ObjectMapper objectMapper;
public CommonGitFileUtilsCE(
ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils,
ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils,
FileInterface fileUtils,
FileOperations fileOperations,
AnalyticsService analyticsService,
@ -123,7 +122,7 @@ public class CommonGitFileUtilsCE {
this.objectMapper = objectMapper.copy().disable(MapperFeature.USE_ANNOTATIONS);
}
private ArtifactGitFileUtils<?> getArtifactBasedFileHelper(ArtifactType artifactType) {
protected ArtifactGitFileUtils<?> getArtifactBasedFileHelper(ArtifactType artifactType) {
if (ArtifactType.APPLICATION.equals(artifactType)) {
return applicationGitFileUtils;
}