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; package com.appsmith.git.constants;
public class CommonConstants { import com.appsmith.git.constants.ce.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 class CommonConstants extends CommonConstantsCE {}
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

@ -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 @Slf4j
@Component @Component
@Import({FileUtilsImpl.class}) @Import({FileUtilsImpl.class})
public class ApplicationGitFileUtilsCEImpl implements ArtifactGitFileUtilsCE<ApplicationGitReference> { public class ApplicationGitFileUtilsCEImpl implements ArtifactGitFileUtilsCE<ApplicationJson> {
private final Gson gson; private final Gson gson;
private final ObjectMapper objectMapper; private final ObjectMapper objectMapper;

View File

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

View File

@ -1,6 +1,6 @@
package com.appsmith.server.helpers; package com.appsmith.server.helpers;
import com.appsmith.external.models.ArtifactGitReference; import com.appsmith.server.dtos.ArtifactExchangeJson;
import com.appsmith.server.helpers.ce.ArtifactGitFileUtilsCE; 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.FileInterface;
import com.appsmith.external.git.operations.FileOperations; import com.appsmith.external.git.operations.FileOperations;
import com.appsmith.external.models.ApplicationGitReference;
import com.appsmith.git.files.FileUtilsImpl; import com.appsmith.git.files.FileUtilsImpl;
import com.appsmith.server.actioncollections.base.ActionCollectionService; import com.appsmith.server.actioncollections.base.ActionCollectionService;
import com.appsmith.server.dtos.ApplicationJson;
import com.appsmith.server.helpers.ce.CommonGitFileUtilsCE; import com.appsmith.server.helpers.ce.CommonGitFileUtilsCE;
import com.appsmith.server.migrations.JsonSchemaVersions; import com.appsmith.server.migrations.JsonSchemaVersions;
import com.appsmith.server.newactions.base.NewActionService; import com.appsmith.server.newactions.base.NewActionService;
@ -21,7 +21,7 @@ import org.springframework.stereotype.Component;
public class CommonGitFileUtils extends CommonGitFileUtilsCE { public class CommonGitFileUtils extends CommonGitFileUtilsCE {
public CommonGitFileUtils( public CommonGitFileUtils(
ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils, ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils,
FileInterface fileUtils, FileInterface fileUtils,
FileOperations fileOperations, FileOperations fileOperations,
AnalyticsService analyticsService, 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.git.models.GitResourceMap;
import com.appsmith.external.models.ArtifactGitReference; import com.appsmith.external.models.ArtifactGitReference;
import com.appsmith.server.dtos.ArtifactExchangeJson; 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 com.appsmith.server.git.dtos.ArtifactJsonTransformationDTO;
import lombok.NonNull; import lombok.NonNull;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
@ -10,19 +12,23 @@ import reactor.core.publisher.Mono;
import java.nio.file.Path; import java.nio.file.Path;
import java.util.Map; 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(); ArtifactExchangeJson createArtifactExchangeJsonObject();
void setArtifactDependentResources(ArtifactExchangeJson artifactExchangeJson, GitResourceMap gitResourceMap); void setArtifactDependentResources(ArtifactExchangeJson artifactExchangeJson, GitResourceMap gitResourceMap);
Mono<ArtifactExchangeJson> reconstructArtifactExchangeJsonFromFilesInRepository( default Mono<ArtifactExchangeJson> reconstructArtifactExchangeJsonFromFilesInRepository(
String workspaceId, String baseArtifactId, String repoName, String branchName); String workspaceId, String baseArtifactId, String repoName, String branchName) {
return Mono.error(new AppsmithException(AppsmithError.UNSUPPORTED_OPERATION));
}
void addArtifactReferenceFromExportedJson( default void addArtifactReferenceFromExportedJson(
ArtifactExchangeJson artifactExchangeJson, ArtifactGitReference artifactGitReference); ArtifactExchangeJson artifactExchangeJson, ArtifactGitReference artifactGitReference) {}
Map<String, String> getConstantsMap(); 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.helpers.Stopwatch;
import com.appsmith.external.models.ActionConfiguration; import com.appsmith.external.models.ActionConfiguration;
import com.appsmith.external.models.ActionDTO; import com.appsmith.external.models.ActionDTO;
import com.appsmith.external.models.ApplicationGitReference;
import com.appsmith.external.models.ArtifactGitReference; import com.appsmith.external.models.ArtifactGitReference;
import com.appsmith.external.models.BaseDomain; import com.appsmith.external.models.BaseDomain;
import com.appsmith.external.models.DatasourceStorage; import com.appsmith.external.models.DatasourceStorage;
@ -86,7 +85,7 @@ import static org.springframework.util.StringUtils.hasText;
@Import({FileUtilsImpl.class}) @Import({FileUtilsImpl.class})
public class CommonGitFileUtilsCE { public class CommonGitFileUtilsCE {
protected final ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils; protected final ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils;
private final FileInterface fileUtils; private final FileInterface fileUtils;
private final FileOperations fileOperations; private final FileOperations fileOperations;
private final AnalyticsService analyticsService; private final AnalyticsService analyticsService;
@ -103,7 +102,7 @@ public class CommonGitFileUtilsCE {
protected final ObjectMapper objectMapper; protected final ObjectMapper objectMapper;
public CommonGitFileUtilsCE( public CommonGitFileUtilsCE(
ArtifactGitFileUtils<ApplicationGitReference> applicationGitFileUtils, ArtifactGitFileUtils<ApplicationJson> applicationGitFileUtils,
FileInterface fileUtils, FileInterface fileUtils,
FileOperations fileOperations, FileOperations fileOperations,
AnalyticsService analyticsService, AnalyticsService analyticsService,
@ -123,7 +122,7 @@ public class CommonGitFileUtilsCE {
this.objectMapper = objectMapper.copy().disable(MapperFeature.USE_ANNOTATIONS); this.objectMapper = objectMapper.copy().disable(MapperFeature.USE_ANNOTATIONS);
} }
private ArtifactGitFileUtils<?> getArtifactBasedFileHelper(ArtifactType artifactType) { protected ArtifactGitFileUtils<?> getArtifactBasedFileHelper(ArtifactType artifactType) {
if (ArtifactType.APPLICATION.equals(artifactType)) { if (ArtifactType.APPLICATION.equals(artifactType)) {
return applicationGitFileUtils; return applicationGitFileUtils;
} }