Skip to content

Commit a5c1aad

Browse files
authored
Merge pull request #1429 from lowcoder-org/fix/rename_collection
Rename collection `applicationRecord` to `applicationVersion`
2 parents 735b83e + 4d8148e commit a5c1aad

File tree

11 files changed

+62
-42
lines changed

11 files changed

+62
-42
lines changed

server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/application/model/Application.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public Mono<ApplicationQuery> getQueryByViewModeAndQueryId(boolean isViewMode, S
141141
@JsonIgnore
142142
public Mono<Map<String, Object>> getLiveApplicationDsl(ApplicationRecordService applicationRecordService) {
143143
return applicationRecordService.getLatestRecordByApplicationId(this.getId())
144-
.map(ApplicationRecord::getApplicationDSL)
144+
.map(ApplicationVersion::getApplicationDSL)
145145
.switchIfEmpty(Mono.just(editingApplicationDSL));
146146
}
147147

@@ -237,7 +237,7 @@ public Mono<Object> getLiveContainerSize(ApplicationRecordService applicationRec
237237
}
238238

239239
public Mono<Map<String, Object>> getPublishedApplicationDSL(ApplicationRecordService applicationRecordService) {
240-
return applicationRecordService.getLatestRecordByApplicationId(this.getId()).map(ApplicationRecord::getApplicationDSL);
240+
return applicationRecordService.getLatestRecordByApplicationId(this.getId()).map(ApplicationVersion::getApplicationDSL);
241241
}
242242

243243
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
@SuperBuilder
1515
@Jacksonized
1616
@NoArgsConstructor
17-
public class ApplicationRecord extends HasIdAndAuditing {
17+
public class ApplicationVersion extends HasIdAndAuditing {
1818

1919
private String applicationId;
2020
private String tag;
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package org.lowcoder.domain.application.repository;
22

33

4-
import org.lowcoder.domain.application.model.ApplicationRecord;
4+
import org.lowcoder.domain.application.model.ApplicationVersion;
55
import org.springframework.data.mongodb.repository.ReactiveMongoRepository;
66
import org.springframework.stereotype.Repository;
77
import reactor.core.publisher.Flux;
@@ -10,14 +10,14 @@
1010
import java.util.List;
1111

1212
@Repository
13-
public interface ApplicationRecordRepository extends ReactiveMongoRepository<ApplicationRecord, String> {
13+
public interface ApplicationRecordRepository extends ReactiveMongoRepository<ApplicationVersion, String> {
1414

1515
Mono<Long> deleteByApplicationId(String applicationId);
1616

17-
Flux<ApplicationRecord> findByApplicationId(String applicationId);
17+
Flux<ApplicationVersion> findByApplicationId(String applicationId);
1818

19-
Flux<ApplicationRecord> findByApplicationIdIn(List<String> ids);
19+
Flux<ApplicationVersion> findByApplicationIdIn(List<String> ids);
2020

21-
Mono<ApplicationRecord> findTop1ByApplicationIdOrderByCreatedAtDesc(String applicationId);
21+
Mono<ApplicationVersion> findTop1ByApplicationIdOrderByCreatedAtDesc(String applicationId);
2222

2323
}

server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/application/service/ApplicationRecordService.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
package org.lowcoder.domain.application.service;
22

3-
import org.lowcoder.domain.application.model.ApplicationRecord;
3+
import org.lowcoder.domain.application.model.ApplicationVersion;
44
import reactor.core.publisher.Mono;
55

66
import java.util.List;
77
import java.util.Map;
88

99
public interface ApplicationRecordService {
10-
Mono<ApplicationRecord> insert(ApplicationRecord applicationRecord);
10+
Mono<ApplicationVersion> insert(ApplicationVersion applicationRecord);
1111

12-
Mono<List<ApplicationRecord>> getByApplicationId(String applicationId);
12+
Mono<List<ApplicationVersion>> getByApplicationId(String applicationId);
1313

14-
Mono<Map<String, List<ApplicationRecord>>> getByApplicationIdIn(List<String> applicationIdList);
14+
Mono<Map<String, List<ApplicationVersion>>> getByApplicationIdIn(List<String> applicationIdList);
1515

16-
Mono<ApplicationRecord> getById(String id);
16+
Mono<ApplicationVersion> getById(String id);
1717

18-
Mono<ApplicationRecord> getLatestRecordByApplicationId(String applicationId);
18+
Mono<ApplicationVersion> getLatestRecordByApplicationId(String applicationId);
1919

2020
Mono<Long> deleteAllApplicationTagByApplicationId(String applicationId);
2121

server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/application/service/ApplicationRecordServiceImpl.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package org.lowcoder.domain.application.service;
22

33
import lombok.RequiredArgsConstructor;
4-
import org.lowcoder.domain.application.model.ApplicationRecord;
4+
import org.lowcoder.domain.application.model.ApplicationVersion;
55
import org.lowcoder.domain.application.repository.ApplicationRecordRepository;
66
import org.springframework.stereotype.Service;
77
import reactor.core.publisher.Mono;
@@ -21,31 +21,31 @@ public class ApplicationRecordServiceImpl implements ApplicationRecordService {
2121
private final ApplicationRecordRepository applicationRecordRepository;
2222

2323
@Override
24-
public Mono<ApplicationRecord> insert(ApplicationRecord applicationRecord) {
24+
public Mono<ApplicationVersion> insert(ApplicationVersion applicationRecord) {
2525
return applicationRecordRepository.save(applicationRecord);
2626
}
2727

2828
/**
2929
* get all published versions
3030
*/
3131
@Override
32-
public Mono<List<ApplicationRecord>> getByApplicationId(String applicationId) {
32+
public Mono<List<ApplicationVersion>> getByApplicationId(String applicationId) {
3333
return applicationRecordRepository.findByApplicationId(applicationId)
34-
.sort(Comparator.comparing(ApplicationRecord::getCreatedAt).reversed())
34+
.sort(Comparator.comparing(ApplicationVersion::getCreatedAt).reversed())
3535
.collectList();
3636
}
3737

3838
@Override
39-
public Mono<Map<String, List<ApplicationRecord>>> getByApplicationIdIn(List<String> applicationIdList) {
39+
public Mono<Map<String, List<ApplicationVersion>>> getByApplicationIdIn(List<String> applicationIdList) {
4040
return applicationRecordRepository.findByApplicationIdIn(applicationIdList)
41-
.sort(Comparator.comparing(ApplicationRecord::getCreatedAt).reversed())
41+
.sort(Comparator.comparing(ApplicationVersion::getCreatedAt).reversed())
4242
.collectList()
4343
.map(applicationRecords -> applicationRecords.stream()
44-
.collect(Collectors.groupingBy(ApplicationRecord::getApplicationId)));
44+
.collect(Collectors.groupingBy(ApplicationVersion::getApplicationId)));
4545
}
4646

4747
@Override
48-
public Mono<ApplicationRecord> getById(String id) {
48+
public Mono<ApplicationVersion> getById(String id) {
4949
return applicationRecordRepository.findById(id)
5050
.switchIfEmpty(deferredError(APPLICATION_NOT_FOUND, "APPLICATION_NOT_FOUND"));
5151
}
@@ -54,7 +54,7 @@ public Mono<ApplicationRecord> getById(String id) {
5454
* get the latest published version
5555
*/
5656
@Override
57-
public Mono<ApplicationRecord> getLatestRecordByApplicationId(String applicationId) {
57+
public Mono<ApplicationVersion> getLatestRecordByApplicationId(String applicationId) {
5858
return applicationRecordRepository.findTop1ByApplicationIdOrderByCreatedAtDesc(applicationId);
5959
}
6060

server/api-service/lowcoder-domain/src/main/java/org/lowcoder/domain/application/service/ApplicationServiceImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import lombok.RequiredArgsConstructor;
1111
import org.apache.commons.lang3.StringUtils;
1212
import org.lowcoder.domain.application.model.Application;
13-
import org.lowcoder.domain.application.model.ApplicationRecord;
13+
import org.lowcoder.domain.application.model.ApplicationVersion;
1414
import org.lowcoder.domain.application.model.ApplicationRequestType;
1515
import org.lowcoder.domain.application.model.ApplicationStatus;
1616
import org.lowcoder.domain.application.repository.ApplicationRepository;
@@ -347,7 +347,7 @@ public Mono<Boolean> updateLastEditedAt(String applicationId, Instant time, Stri
347347
@Override
348348
public Mono<Map<String, Object>> getLiveDSLByApplicationId(String applicationId) {
349349
return applicationRecordService.getLatestRecordByApplicationId(applicationId)
350-
.map(ApplicationRecord::getApplicationDSL)
350+
.map(ApplicationVersion::getApplicationDSL)
351351
.switchIfEmpty(findById(applicationId)
352352
.map(Application::getEditingApplicationDSL));
353353
}

server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/application/ApplicationApiServiceImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ public Mono<ApplicationView> publish(String applicationId, ApplicationPublishReq
368368
.flatMap(userId -> resourcePermissionService.checkAndReturnMaxPermission(userId,
369369
applicationId, PUBLISH_APPLICATIONS))
370370
.delayUntil(__ -> applicationService.findById(applicationId)
371-
.map(application -> ApplicationRecord.builder()
371+
.map(application -> ApplicationVersion.builder()
372372
.tag(applicationPublishRequest.tag())
373373
.commitMessage(applicationPublishRequest.commitMessage())
374374
.applicationId(application.getId())

server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/application/ApplicationRecordApiServiceImpl.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@
22

33
import lombok.RequiredArgsConstructor;
44
import org.lowcoder.api.home.SessionUserService;
5-
import org.lowcoder.api.application.ApplicationApiServiceImpl;
65
import org.lowcoder.api.application.view.ApplicationRecordMetaView;
76
import org.lowcoder.api.usermanagement.OrgDevChecker;
7+
import org.lowcoder.domain.application.model.ApplicationVersion;
88
import org.lowcoder.domain.organization.model.OrgMember;
99
import org.lowcoder.domain.application.model.Application;
1010
import org.lowcoder.domain.application.model.ApplicationCombineId;
11-
import org.lowcoder.domain.application.model.ApplicationRecord;
1211
import org.lowcoder.domain.application.service.ApplicationRecordService;
1312
import org.lowcoder.domain.application.service.ApplicationService;
1413
import org.lowcoder.domain.user.service.UserService;
@@ -41,7 +40,7 @@ public Mono<Map<String, Object>> getRecordDSLFromApplicationCombineId(Applicatio
4140
return applicationService.getLiveDSLByApplicationId(applicationCombineId.applicationId());
4241
}
4342
return applicationRecordService.getById(applicationCombineId.applicationRecordId())
44-
.map(ApplicationRecord::getApplicationDSL);
43+
.map(ApplicationVersion::getApplicationDSL);
4544
}));
4645
}
4746

@@ -55,7 +54,7 @@ public Mono<Void> delete(String id) {
5554
public Mono<List<ApplicationRecordMetaView>> getByApplicationId(String applicationId) {
5655
return applicationRecordService.getByApplicationId(applicationId)
5756
.flatMap(applicationRecords -> multiBuild(applicationRecords,
58-
ApplicationRecord::getCreatedBy,
57+
ApplicationVersion::getCreatedBy,
5958
userService::getByIds,
6059
ApplicationRecordMetaView::from
6160
));

server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/application/view/ApplicationRecordMetaView.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package org.lowcoder.api.application.view;
22

3-
import org.lowcoder.domain.application.model.ApplicationRecord;
3+
import org.lowcoder.domain.application.model.ApplicationVersion;
44
import org.lowcoder.domain.user.model.User;
55

66
public record ApplicationRecordMetaView(String id,
@@ -10,7 +10,7 @@ public record ApplicationRecordMetaView(String id,
1010
long createTime,
1111
String creatorName) {
1212

13-
public static ApplicationRecordMetaView from(ApplicationRecord applicationRecord) {
13+
public static ApplicationRecordMetaView from(ApplicationVersion applicationRecord) {
1414
return new ApplicationRecordMetaView(applicationRecord.getId(),
1515
applicationRecord.getApplicationId(),
1616
applicationRecord.getTag(),
@@ -19,7 +19,7 @@ public static ApplicationRecordMetaView from(ApplicationRecord applicationRecord
1919
null);
2020
}
2121

22-
public static ApplicationRecordMetaView from(ApplicationRecord applicationRecord, User applicationRecordCreator) {
22+
public static ApplicationRecordMetaView from(ApplicationVersion applicationRecord, User applicationRecordCreator) {
2323
return new ApplicationRecordMetaView(applicationRecord.getId(),
2424
applicationRecord.getApplicationId(),
2525
applicationRecord.getTag(),

server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/home/UserHomeApiServiceImpl.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@
44
import lombok.RequiredArgsConstructor;
55
import org.apache.commons.lang3.StringUtils;
66
import org.lowcoder.api.application.view.ApplicationInfoView;
7-
import org.lowcoder.api.application.view.ApplicationInfoView.ApplicationInfoViewBuilder;
87
import org.lowcoder.api.application.view.MarketplaceApplicationInfoView;
98
import org.lowcoder.api.bundle.view.BundleInfoView;
109
import org.lowcoder.api.bundle.view.MarketplaceBundleInfoView;
1110
import org.lowcoder.api.usermanagement.OrgDevChecker;
1211
import org.lowcoder.api.usermanagement.view.OrgAndVisitorRoleView;
1312
import org.lowcoder.api.usermanagement.view.UserProfileView;
1413
import org.lowcoder.domain.application.model.Application;
15-
import org.lowcoder.domain.application.model.ApplicationRecord;
14+
import org.lowcoder.domain.application.model.ApplicationVersion;
1615
import org.lowcoder.domain.application.model.ApplicationStatus;
1716
import org.lowcoder.domain.application.model.ApplicationType;
1817
import org.lowcoder.domain.application.service.ApplicationRecordService;
@@ -38,7 +37,6 @@
3837
import org.lowcoder.infra.util.NetworkUtils;
3938
import org.lowcoder.infra.util.TupleUtils;
4039
import org.lowcoder.sdk.config.CommonConfig;
41-
import org.lowcoder.sdk.models.VersionedModel;
4240
import org.springframework.stereotype.Component;
4341
import org.springframework.web.server.ServerWebExchange;
4442
import reactor.core.publisher.Flux;
@@ -574,7 +572,7 @@ private Mono<ApplicationInfoView> buildView(Application application, ResourceRol
574572
.zipWith(application.getIcon(applicationRecordService), TupleUtils::merge)
575573
.zipWith(applicationRecordService.getLatestRecordByApplicationId(application.getId()).map(Optional::of).switchIfEmpty(Mono.just(Optional.empty())), TupleUtils::merge)
576574
.flatMap(tuple -> {
577-
Optional<ApplicationRecord> lastAppRecord = tuple.getT5();
575+
Optional<ApplicationVersion> lastAppRecord = tuple.getT5();
578576
ApplicationInfoView.ApplicationInfoViewBuilder applicationInfoViewBuilder = ApplicationInfoView.builder()
579577
.applicationId(application.getId())
580578
.applicationGid(application.getGid())
@@ -585,8 +583,8 @@ private Mono<ApplicationInfoView> buildView(Application application, ResourceRol
585583
.category(tuple.getT3())
586584
.icon(tuple.getT4())
587585
.published(lastAppRecord.isPresent())
588-
.publishedVersion(lastAppRecord.map(ApplicationRecord::version).orElse(null))
589-
.lastPublishedTime(lastAppRecord.map(ApplicationRecord::getCreatedAt).orElse(null))
586+
.publishedVersion(lastAppRecord.map(ApplicationVersion::version).orElse(null))
587+
.lastPublishedTime(lastAppRecord.map(ApplicationVersion::getCreatedAt).orElse(null))
590588
.createBy(Optional.ofNullable(userMap.get(application.getCreatedBy()))
591589
.map(User::getName)
592590
.orElse(""))

server/api-service/lowcoder-server/src/main/java/org/lowcoder/runner/migrations/DatabaseChangelog.java

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,18 @@
44
import com.github.cloudyrock.mongock.ChangeSet;
55
import com.github.cloudyrock.mongock.driver.mongodb.springdata.v4.decorator.impl.MongockTemplate;
66
import com.github.f4b6a3.uuid.UuidCreator;
7+
import com.mongodb.MongoNamespace;
78
import com.mongodb.client.MongoCollection;
89
import com.mongodb.client.MongoCursor;
10+
import com.mongodb.client.MongoDatabase;
911
import com.mongodb.client.result.DeleteResult;
1012
import lombok.extern.slf4j.Slf4j;
1113
import org.bson.Document;
1214
import org.bson.types.ObjectId;
1315
import org.lowcoder.domain.application.model.Application;
1416
import org.lowcoder.domain.application.model.ApplicationHistorySnapshot;
1517
import org.lowcoder.domain.application.model.ApplicationHistorySnapshotTS;
16-
import org.lowcoder.domain.application.model.ApplicationRecord;
18+
import org.lowcoder.domain.application.model.ApplicationVersion;
1719
import org.lowcoder.domain.bundle.model.Bundle;
1820
import org.lowcoder.domain.datasource.model.Datasource;
1921
import org.lowcoder.domain.datasource.model.DatasourceStructureDO;
@@ -438,7 +440,7 @@ public void publishedToRecord(MongockTemplate mongoTemplate, CommonConfig common
438440
ObjectId id = document.getObjectId("_id");
439441
String createdBy = document.getString("createdBy");
440442
Map<String, Object> dslMap = documentToMap(dsl);
441-
ApplicationRecord record = ApplicationRecord.builder()
443+
ApplicationVersion record = ApplicationVersion.builder()
442444
.applicationId(id.toHexString())
443445
.applicationDSL(dslMap)
444446
.commitMessage("")
@@ -453,7 +455,28 @@ public void publishedToRecord(MongockTemplate mongoTemplate, CommonConfig common
453455
}
454456
@ChangeSet(order = "029", id = "add-tag-index-to-record", author = "Thomas")
455457
public void addTagIndexToRecord(MongockTemplate mongoTemplate, CommonConfig commonConfig) {
456-
ensureIndexes(mongoTemplate, ApplicationRecord.class, makeIndex("applicationId", "tag").unique());
458+
ensureIndexes(mongoTemplate, ApplicationVersion.class, makeIndex("applicationId", "tag").unique());
459+
}
460+
461+
@ChangeSet(order = "030", id = "rename-application-record-collection", author = "Thomas")
462+
public void renameApplicationRecordCollection(MongockTemplate mongoTemplate, MongoDatabase mongoDatabase) {
463+
String oldCollectionName = "applicationRecord";
464+
String newCollectionName = "applicationVersion";
465+
466+
// Check if the old collection exists
467+
boolean collectionExists = mongoDatabase.listCollectionNames()
468+
.into(new java.util.ArrayList<>())
469+
.contains(oldCollectionName);
470+
471+
if (collectionExists) {
472+
// Rename the collection
473+
mongoDatabase.getCollection(oldCollectionName)
474+
.renameCollection(new MongoNamespace(mongoDatabase.getName(), newCollectionName));
475+
System.out.println("Collection renamed from " + oldCollectionName + " to " + newCollectionName);
476+
} else {
477+
System.out.println("Collection " + oldCollectionName + " does not exist, skipping rename.");
478+
}
479+
457480
}
458481

459482
private void addGidField(MongockTemplate mongoTemplate, String collectionName) {

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy